fix flakey ticker test (#7997)
This commit is contained in:
parent
6e8255c644
commit
34c8abb555
|
|
@ -52,7 +52,7 @@ func TestAlignedTickerJitter(t *testing.T) {
|
||||||
|
|
||||||
clock := clock.NewMock()
|
clock := clock.NewMock()
|
||||||
since := clock.Now()
|
since := clock.Now()
|
||||||
until := since.Add(60 * time.Second)
|
until := since.Add(61 * time.Second)
|
||||||
|
|
||||||
ticker := newAlignedTicker(since, interval, jitter, clock)
|
ticker := newAlignedTicker(since, interval, jitter, clock)
|
||||||
defer ticker.Stop()
|
defer ticker.Stop()
|
||||||
|
|
@ -61,12 +61,14 @@ func TestAlignedTickerJitter(t *testing.T) {
|
||||||
for !clock.Now().After(until) {
|
for !clock.Now().After(until) {
|
||||||
select {
|
select {
|
||||||
case tm := <-ticker.Elapsed():
|
case tm := <-ticker.Elapsed():
|
||||||
require.True(t, tm.Sub(last) <= 15*time.Second)
|
dur := tm.Sub(last)
|
||||||
require.True(t, tm.Sub(last) >= 5*time.Second)
|
// 10s interval + 5s jitter + up to 1s late firing.
|
||||||
|
require.True(t, dur <= 16*time.Second, "expected elapsed time to be less than 16 seconds, but was %s", dur)
|
||||||
|
require.True(t, dur >= 5*time.Second, "expected elapsed time to be more than 5 seconds, but was %s", dur)
|
||||||
last = last.Add(interval)
|
last = last.Add(interval)
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
clock.Add(5 * time.Second)
|
clock.Add(1 * time.Second)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue