package bridge import ( "testing" "time" ) func TestLimiter(t *testing.T) { l := newLimiter(1000) l.wait(900) start := time.Now() l.wait(200) if elapsed := time.Since(start); elapsed < 50*time.Millisecond { t.Fatalf("limit did not delay: %s", elapsed) } l2 := newLimiter(0) start = time.Now() l2.wait(1 << 20) if elapsed := time.Since(start); elapsed > 100*time.Millisecond { t.Fatalf("unlimited limiter delayed: %s", elapsed) } }