1
0
mirror of https://github.com/docker/cli.git synced 2026-01-13 18:22:35 +03:00

Fix datarace in ApiStatsnetworkStatsVersioning

Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 825e3a66a419038600024be7dfc5ca24426444f0
Component: engine
This commit is contained in:
John Howard
2016-09-29 10:56:43 -07:00
parent 3e0303bb32
commit ff392389fd

View File

@@ -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()
}