deflake TestRestartMonitor

Fix #5146

Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
This commit is contained in:
Akihiro Suda 2021-03-11 15:34:19 +09:00
parent 2b1e913679
commit ee84e85758
No known key found for this signature in database
GPG Key ID: 49524C6F9F638F1A

View File

@ -82,16 +82,20 @@ version = 2
deadline := begin.Add(interval).Add(epsilon) deadline := begin.Add(interval).Add(epsilon)
for time.Now().Before(deadline) { for time.Now().Before(deadline) {
status, err := task.Status(ctx) status, err := task.Status(ctx)
now := time.Now()
if err != nil { if err != nil {
t.Fatal(err) // ErrNotFound is expected here, because the restart monitor
} // temporarily removes the task before restarting.
t.Logf("%v: status=%q", time.Now(), status) t.Logf("%v: err=%v", now, err)
} else {
t.Logf("%v: status=%q", now, status)
if status.Status == Running { if status.Status == Running {
elapsed := time.Since(begin) elapsed := time.Since(begin)
t.Logf("the task was restarted after %s", elapsed.String()) t.Logf("the task was restarted within %s", elapsed.String())
return return
} }
}
time.Sleep(epsilon) time.Sleep(epsilon)
} }
t.Fatalf("the task was not restarted in %s + %s", t.Fatalf("the task was not restarted in %s + %s",