From 825e3a66a419038600024be7dfc5ca24426444f0 Mon Sep 17 00:00:00 2001 From: John Howard Date: Thu, 29 Sep 2016 10:56:43 -0700 Subject: [PATCH] Fix datarace in ApiStatsnetworkStatsVersioning Signed-off-by: John Howard --- integration-cli/docker_api_stats_test.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/integration-cli/docker_api_stats_test.go b/integration-cli/docker_api_stats_test.go index 7829604aea..d5574ab986 100644 --- a/integration-cli/docker_api_stats_test.go +++ b/integration-cli/docker_api_stats_test.go @@ -169,9 +169,15 @@ func (s *DockerSuite) TestApiStatsNetworkStatsVersioning(c *check.C) { c.Assert(waitRun(id), checker.IsNil) wg := sync.WaitGroup{} - for i := 17; i <= 21; i++ { + // Windows API versions prior to 1.21 doesn't support stats. + startAt := 17 + if daemonPlatform == "windows" { + startAt = 21 + } + + for i := startAt; i <= 21; i++ { wg.Add(1) - go func() { + go func(i int) { defer wg.Done() apiVersion := fmt.Sprintf("v1.%d", i) statsJSONBlob := getVersionedStats(c, id, apiVersion) @@ -182,7 +188,7 @@ func (s *DockerSuite) TestApiStatsNetworkStatsVersioning(c *check.C) { c.Assert(jsonBlobHasGTE121NetworkStats(statsJSONBlob), checker.Equals, true, check.Commentf("Stats JSON blob from API %s %#v does not look like a >=v1.21 API stats structure", apiVersion, statsJSONBlob)) } - }() + }(i) } wg.Wait() }