Cleanup.
This commit is contained in:
@@ -162,30 +162,3 @@ func TestLimit_BurstCap(t *testing.T) {
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// TestLimitMultiple: multiple tokens are consumed per call.
|
||||
//
|
||||
// Config: BurstLimit=4, FillPeriod=1s, MaxWaitCount=2 → minWaitTime=-4s, maxWaitTime=2s.
|
||||
//
|
||||
// Call 1: LimitMultiple(3) → waitTime = -4s+3s = -1s → immediate
|
||||
// Call 2: LimitMultiple(3) → waitTime = -1s+3s = 2s → sleeps 2s
|
||||
// Call 3: LimitMultiple(3) → waitTime = 2s+3s = 5s > 2s → ErrBackoff
|
||||
func TestLimitMultiple(t *testing.T) {
|
||||
synctest.Test(t, func(t *testing.T) {
|
||||
t0 := time.Now()
|
||||
l := New(Config{BurstLimit: 4, FillPeriod: time.Second, MaxWaitCount: 2})
|
||||
|
||||
if err := l.LimitMultiple(3); err != nil {
|
||||
t.Fatalf("call 1: %v", err)
|
||||
}
|
||||
if err := l.LimitMultiple(3); err != nil {
|
||||
t.Fatalf("call 2: %v", err)
|
||||
}
|
||||
if err := l.LimitMultiple(3); !errors.Is(err, ErrBackoff) {
|
||||
t.Fatalf("call 3: want ErrBackoff, got %v", err)
|
||||
}
|
||||
if elapsed := time.Since(t0); elapsed != 2*time.Second {
|
||||
t.Errorf("elapsed: want 2s, got %v", elapsed)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user