mirror of
https://github.com/golang/go
synced 2024-11-26 05:57:58 -07:00
time: increase slop for TestTicker
Also sleep a bit each time it fails, in case the system is overloaded. Fixes #37332 Change-Id: Iabf3d0a27b5834c1e2a87c826b6206146b4f62c5 Reviewed-on: https://go-review.googlesource.com/c/go/+/313849 Trust: Ian Lance Taylor <iant@golang.org> Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
This commit is contained in:
parent
f432d3fc41
commit
13e87cda00
@ -52,9 +52,14 @@ func TestTicker(t *testing.T) {
|
||||
t1 := Now()
|
||||
dt := t1.Sub(t0)
|
||||
target := 3 * delta * Duration(count/2)
|
||||
slop := target * 2 / 10
|
||||
slop := target * 3 / 10
|
||||
if dt < target-slop || dt > target+slop {
|
||||
errs = append(errs, fmt.Sprintf("%d %s ticks took %s, expected [%s,%s]", count, delta, dt, target-slop, target+slop))
|
||||
errs = append(errs, fmt.Sprintf("%d %s ticks then %d %s ticks took %s, expected [%s,%s]", count/2, delta, count/2, delta*2, dt, target-slop, target+slop))
|
||||
if dt > target+slop {
|
||||
// System may be overloaded; sleep a bit
|
||||
// in the hopes it will recover.
|
||||
Sleep(Second / 2)
|
||||
}
|
||||
continue
|
||||
}
|
||||
// Now test that the ticker stopped.
|
||||
|
Loading…
Reference in New Issue
Block a user