Browse code

Windows: Enable TestImage and TestImport tests

Signed-off-by: John Howard <jhoward@microsoft.com>

John Howard authored on 2016/08/31 07:20:55
Showing 2 changed files
... ...
@@ -16,14 +16,11 @@ import (
16 16
 )
17 17
 
18 18
 func (s *DockerSuite) TestImagesEnsureImageIsListed(c *check.C) {
19
-	testRequires(c, DaemonIsLinux)
20 19
 	imagesOut, _ := dockerCmd(c, "images")
21 20
 	c.Assert(imagesOut, checker.Contains, "busybox")
22 21
 }
23 22
 
24 23
 func (s *DockerSuite) TestImagesEnsureImageWithTagIsListed(c *check.C) {
25
-	testRequires(c, DaemonIsLinux)
26
-
27 24
 	name := "imagewithtag"
28 25
 	dockerCmd(c, "tag", "busybox", name+":v1")
29 26
 	dockerCmd(c, "tag", "busybox", name+":v1v1")
... ...
@@ -48,19 +45,18 @@ func (s *DockerSuite) TestImagesEnsureImageWithBadTagIsNotListed(c *check.C) {
48 48
 }
49 49
 
50 50
 func (s *DockerSuite) TestImagesOrderedByCreationDate(c *check.C) {
51
-	testRequires(c, DaemonIsLinux)
52 51
 	id1, err := buildImage("order:test_a",
53
-		`FROM scratch
52
+		`FROM busybox
54 53
                 MAINTAINER dockerio1`, true)
55 54
 	c.Assert(err, checker.IsNil)
56 55
 	time.Sleep(1 * time.Second)
57 56
 	id2, err := buildImage("order:test_c",
58
-		`FROM scratch
57
+		`FROM busybox
59 58
                 MAINTAINER dockerio2`, true)
60 59
 	c.Assert(err, checker.IsNil)
61 60
 	time.Sleep(1 * time.Second)
62 61
 	id3, err := buildImage("order:test_b",
63
-		`FROM scratch
62
+		`FROM busybox
64 63
                 MAINTAINER dockerio3`, true)
65 64
 	c.Assert(err, checker.IsNil)
66 65
 
... ...
@@ -78,22 +74,21 @@ func (s *DockerSuite) TestImagesErrorWithInvalidFilterNameTest(c *check.C) {
78 78
 }
79 79
 
80 80
 func (s *DockerSuite) TestImagesFilterLabelMatch(c *check.C) {
81
-	testRequires(c, DaemonIsLinux)
82 81
 	imageName1 := "images_filter_test1"
83 82
 	imageName2 := "images_filter_test2"
84 83
 	imageName3 := "images_filter_test3"
85 84
 	image1ID, err := buildImage(imageName1,
86
-		`FROM scratch
85
+		`FROM busybox
87 86
                  LABEL match me`, true)
88 87
 	c.Assert(err, check.IsNil)
89 88
 
90 89
 	image2ID, err := buildImage(imageName2,
91
-		`FROM scratch
90
+		`FROM busybox
92 91
                  LABEL match="me too"`, true)
93 92
 	c.Assert(err, check.IsNil)
94 93
 
95 94
 	image3ID, err := buildImage(imageName3,
96
-		`FROM scratch
95
+		`FROM busybox
97 96
                  LABEL nomatch me`, true)
98 97
 	c.Assert(err, check.IsNil)
99 98
 
... ...
@@ -191,10 +186,9 @@ func assertImageList(out string, expected []string) bool {
191 191
 }
192 192
 
193 193
 func (s *DockerSuite) TestImagesFilterSpaceTrimCase(c *check.C) {
194
-	testRequires(c, DaemonIsLinux)
195 194
 	imageName := "images_filter_test"
196 195
 	buildImage(imageName,
197
-		`FROM scratch
196
+		`FROM busybox
198 197
                  RUN touch /test/foo
199 198
                  RUN touch /test/bar
200 199
                  RUN touch /test/baz`, true)
... ...
@@ -263,10 +257,8 @@ func (s *DockerSuite) TestImagesWithIncorrectFilter(c *check.C) {
263 263
 }
264 264
 
265 265
 func (s *DockerSuite) TestImagesEnsureOnlyHeadsImagesShown(c *check.C) {
266
-	testRequires(c, DaemonIsLinux)
267
-
268 266
 	dockerfile := `
269
-        FROM scratch
267
+        FROM busybox
270 268
         MAINTAINER docker
271 269
         ENV foo bar`
272 270
 
... ...
@@ -287,7 +279,7 @@ func (s *DockerSuite) TestImagesEnsureOnlyHeadsImagesShown(c *check.C) {
287 287
 }
288 288
 
289 289
 func (s *DockerSuite) TestImagesEnsureImagesFromScratchShown(c *check.C) {
290
-	testRequires(c, DaemonIsLinux)
290
+	testRequires(c, DaemonIsLinux) // Windows does not support FROM scratch
291 291
 
292 292
 	dockerfile := `
293 293
         FROM scratch
... ...
@@ -301,6 +293,21 @@ func (s *DockerSuite) TestImagesEnsureImagesFromScratchShown(c *check.C) {
301 301
 	c.Assert(out, checker.Contains, stringid.TruncateID(id))
302 302
 }
303 303
 
304
+// For W2W - equivalent to TestImagesEnsureImagesFromScratchShown but Windows
305
+// doesn't support from scratch
306
+func (s *DockerSuite) TestImagesEnsureImagesFromBusyboxShown(c *check.C) {
307
+	dockerfile := `
308
+        FROM busybox
309
+        MAINTAINER docker`
310
+
311
+	id, _, err := buildImageWithOut("busybox-image", dockerfile, false)
312
+	c.Assert(err, check.IsNil)
313
+
314
+	out, _ := dockerCmd(c, "images")
315
+	// images should contain images built from busybox
316
+	c.Assert(out, checker.Contains, stringid.TruncateID(id))
317
+}
318
+
304 319
 // #18181
305 320
 func (s *DockerSuite) TestImagesFilterNameWithPort(c *check.C) {
306 321
 	tag := "a.b.c.d:5000/hello"
... ...
@@ -32,7 +32,6 @@ func (s *DockerSuite) TestImportDisplay(c *check.C) {
32 32
 }
33 33
 
34 34
 func (s *DockerSuite) TestImportBadURL(c *check.C) {
35
-	testRequires(c, DaemonIsLinux)
36 35
 	out, _, err := dockerCmdWithError("import", "http://nourl/bad")
37 36
 	c.Assert(err, checker.NotNil, check.Commentf("import was supposed to fail but didn't"))
38 37
 	// Depending on your system you can get either of these errors