From 6016520162fdcb19f50d08c4f0b54b06a7a6eac0 Mon Sep 17 00:00:00 2001 From: Kir Kolyshkin Date: Thu, 25 Oct 2018 01:08:45 -0700 Subject: [PATCH] internal/test/daemon: don't leak timers A timer is leaking on every daemon start and stop. Probably nothing major, but given the amount of daemon starts/stops during tests, it's better to be accurate about it. Signed-off-by: Kir Kolyshkin --- internal/test/daemon/daemon.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/internal/test/daemon/daemon.go b/internal/test/daemon/daemon.go index d9126f9f0c..7471d1093b 100644 --- a/internal/test/daemon/daemon.go +++ b/internal/test/daemon/daemon.go @@ -285,7 +285,10 @@ func (d *Daemon) StartWithLogFile(out *os.File, providedArgs ...string) error { d.Wait = wait - tick := time.Tick(500 * time.Millisecond) + ticker := time.NewTicker(500 * time.Millisecond) + defer ticker.Stop() + tick := ticker.C + // make sure daemon is ready to receive requests startTime := time.Now().Unix() for { @@ -423,7 +426,9 @@ func (d *Daemon) StopWithError() error { }() i := 1 - tick := time.Tick(time.Second) + ticker := time.NewTicker(time.Second) + defer ticker.Stop() + tick := ticker.C if err := d.cmd.Process.Signal(os.Interrupt); err != nil { if strings.Contains(err.Error(), "os: process already finished") {