From 4fb588958da0edd34b8b09a13ced24e4734511a2 Mon Sep 17 00:00:00 2001 From: Tim Pepper Date: Fri, 19 Aug 2016 10:40:49 -0700 Subject: [PATCH] testutil: use consistent timeout for results channels These timeouts "should never trigger", but if they do we get a test failure sooner than waiting for go test's very long timeout. The 25 second number isn't special. And it's known to possibly be too short for example in the case of TestReconnects(), where the ssntp client incurs a series of delays that are 0..5, 0..10, 0..20, 0..40 seconds. If the server is slow in restarting it _might_ take 4 seconds to restart in travis. But worst case we hit client delays of 1,1,1,40 seconds. In which case despite everything "working correctly" the test case will timeout for lack of NodeConnected result after 25s, when it would be coming at 43s. Signed-off-by: Tim Pepper --- testutil/agent.go | 8 ++++---- testutil/controller.go | 6 +++--- testutil/server.go | 8 ++++---- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/testutil/agent.go b/testutil/agent.go index e3b970746..8329a106c 100644 --- a/testutil/agent.go +++ b/testutil/agent.go @@ -120,7 +120,7 @@ func (client *SsntpTestClient) GetCmdChanResult(c *chan Result, cmd ssntp.Comman if result.Err != nil { err = fmt.Errorf("Client error sending %s command: %s\n", cmd, result.Err) } - case <-time.After(5 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for client %s command result\n", cmd) } @@ -159,7 +159,7 @@ func (client *SsntpTestClient) GetEventChanResult(c *chan Result, evt ssntp.Even if result.Err != nil { err = fmt.Errorf("Client error sending %s event: %s\n", evt, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for client %s event result\n", evt) } @@ -198,7 +198,7 @@ func (client *SsntpTestClient) GetErrorChanResult(c *chan Result, error ssntp.Er if result.Err != nil { err = fmt.Errorf("Client error sending %s error: %s\n", error, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for client %s error result\n", error) } @@ -237,7 +237,7 @@ func (client *SsntpTestClient) GetStatusChanResult(c *chan Result, status ssntp. if result.Err != nil { err = fmt.Errorf("Client error sending %s status: %s\n", status, result.Err) } - case <-time.After(5 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for client %s status result\n", status) } diff --git a/testutil/controller.go b/testutil/controller.go index f6365b73d..9ab909e51 100644 --- a/testutil/controller.go +++ b/testutil/controller.go @@ -98,7 +98,7 @@ func (ctl *SsntpTestController) GetCmdChanResult(c *chan Result, cmd ssntp.Comma if result.Err != nil { err = fmt.Errorf("Controller error sending %s command: %s\n", cmd, result.Err) } - case <-time.After(5 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for controller %s command result\n", cmd) } @@ -137,7 +137,7 @@ func (ctl *SsntpTestController) GetEventChanResult(c *chan Result, evt ssntp.Eve if result.Err != nil { err = fmt.Errorf("Controller error sending %s event: %s\n", evt, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for controller %s event result\n", evt) } @@ -176,7 +176,7 @@ func (ctl *SsntpTestController) GetErrorChanResult(c *chan Result, error ssntp.E if result.Err != nil { err = fmt.Errorf("Controller error sending %s error: %s\n", error, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for controller %s error result\n", error) } diff --git a/testutil/server.go b/testutil/server.go index 7aec64a1a..4dc219810 100644 --- a/testutil/server.go +++ b/testutil/server.go @@ -65,7 +65,7 @@ func (server *SsntpTestServer) GetCmdChanResult(c *chan Result, cmd ssntp.Comman if result.Err != nil { err = fmt.Errorf("Server error on %s command: %s\n", cmd, result.Err) } - case <-time.After(5 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for server %s command result\n", cmd) } @@ -104,7 +104,7 @@ func (server *SsntpTestServer) GetEventChanResult(c *chan Result, evt ssntp.Even if result.Err != nil { err = fmt.Errorf("Server error handling %s event: %s\n", evt, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for server %s event result\n", evt) } @@ -143,7 +143,7 @@ func (server *SsntpTestServer) GetErrorChanResult(c *chan Result, error ssntp.Er if result.Err != nil { err = fmt.Errorf("Server error handling %s error: %s\n", error, result.Err) } - case <-time.After(20 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for server %s error result\n", error) } @@ -182,7 +182,7 @@ func (server *SsntpTestServer) GetStatusChanResult(c *chan Result, status ssntp. if result.Err != nil { err = fmt.Errorf("Server error handling %s status: %s\n", status, result.Err) } - case <-time.After(5 * time.Second): + case <-time.After(25 * time.Second): err = fmt.Errorf("Timeout waiting for server %s status result\n", status) }