From 9a9ce80a0f5214011ddf68f93894b1c046435a8d Mon Sep 17 00:00:00 2001 From: Zhang Wei Date: Sat, 30 Jan 2016 11:27:27 +0800 Subject: [PATCH] Fix flaky test `TestGetContainerStatsRmRunning` Remove racey code to fix flaky test Signed-off-by: Zhang Wei --- integration-cli/docker_api_containers_test.go | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/integration-cli/docker_api_containers_test.go b/integration-cli/docker_api_containers_test.go index f5afae33f8..aa100572e5 100644 --- a/integration-cli/docker_api_containers_test.go +++ b/integration-cli/docker_api_containers_test.go @@ -303,7 +303,7 @@ func (s *DockerSuite) TestGetContainerStatsRmRunning(c *check.C) { buf := &integration.ChannelBuffer{make(chan []byte, 1)} defer buf.Close() - chErr := make(chan error) + chErr := make(chan error, 1) go func() { _, body, err := sockRequestRaw("GET", "/containers/"+id+"/stats?stream=1", nil, "application/json") if err != nil { @@ -314,7 +314,12 @@ func (s *DockerSuite) TestGetContainerStatsRmRunning(c *check.C) { chErr <- err }() defer func() { - c.Assert(<-chErr, checker.IsNil) + select { + case err := <-chErr: + c.Assert(err, checker.IsNil) + default: + return + } }() b := make([]byte, 32) @@ -327,10 +332,8 @@ func (s *DockerSuite) TestGetContainerStatsRmRunning(c *check.C) { c.Assert(err, checker.Not(checker.IsNil), check.Commentf("rm should have failed but didn't")) _, err = buf.ReadTimeout(b, 2*time.Second) c.Assert(err, checker.IsNil) - dockerCmd(c, "rm", "-f", id) - _, err = buf.ReadTimeout(b, 2*time.Second) - c.Assert(err, checker.Not(checker.IsNil)) + dockerCmd(c, "kill", id) } // regression test for gh13421