Fix the dep on cenkalti
This commit is contained in:
55
vendor/github.com/cenkalti/backoff/tries_test.go
generated
vendored
Normal file
55
vendor/github.com/cenkalti/backoff/tries_test.go
generated
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
package backoff
|
||||
|
||||
import (
|
||||
"math/rand"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
func TestMaxTriesHappy(t *testing.T) {
|
||||
r := rand.New(rand.NewSource(time.Now().UnixNano()))
|
||||
max := 17 + r.Intn(13)
|
||||
bo := WithMaxTries(&ZeroBackOff{}, uint64(max))
|
||||
|
||||
// Load up the tries count, but reset should clear the record
|
||||
for ix := 0; ix < max/2; ix++ {
|
||||
bo.NextBackOff()
|
||||
}
|
||||
bo.Reset()
|
||||
|
||||
// Now fill the tries count all the way up
|
||||
for ix := 0; ix < max; ix++ {
|
||||
d := bo.NextBackOff()
|
||||
if d == Stop {
|
||||
t.Errorf("returned Stop on try %d", ix)
|
||||
}
|
||||
}
|
||||
|
||||
// We have now called the BackOff max number of times, we expect
|
||||
// the next result to be Stop, even if we try it multiple times
|
||||
for ix := 0; ix < 7; ix++ {
|
||||
d := bo.NextBackOff()
|
||||
if d != Stop {
|
||||
t.Error("invalid next back off")
|
||||
}
|
||||
}
|
||||
|
||||
// Reset makes it all work again
|
||||
bo.Reset()
|
||||
d := bo.NextBackOff()
|
||||
if d == Stop {
|
||||
t.Error("returned Stop after reset")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func TestMaxTriesZero(t *testing.T) {
|
||||
// It might not make sense, but its okay to send a zero
|
||||
bo := WithMaxTries(&ZeroBackOff{}, uint64(0))
|
||||
for ix := 0; ix < 11; ix++ {
|
||||
d := bo.NextBackOff()
|
||||
if d == Stop {
|
||||
t.Errorf("returned Stop on try %d", ix)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user