From 5405b4f279adc2aa8e0532acf921828890f3d258 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Tue, 23 Apr 2019 13:09:22 -0400 Subject: Add extra CI tests for stopping all containers We weren't testing cases where not all containers were running when stop --all ran. Signed-off-by: Matthew Heon --- test/e2e/stop_test.go | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'test/e2e/stop_test.go') diff --git a/test/e2e/stop_test.go b/test/e2e/stop_test.go index 97c9287b9..61c3fedfd 100644 --- a/test/e2e/stop_test.go +++ b/test/e2e/stop_test.go @@ -141,4 +141,40 @@ var _ = Describe("Podman stop", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) }) + + It("podman stop all containers with one stopped", func() { + session := podmanTest.RunTopContainer("test1") + session.WaitWithDefaultTimeout() + Expect(session.ExitCode()).To(Equal(0)) + session2 := podmanTest.RunTopContainer("test1") + session2.WaitWithDefaultTimeout() + Expect(session2.ExitCode()).To(Equal(0)) + session3 := podmanTest.Podman([]string("stop", "-l", "-t", "1")) + session3.WaitWithDefaultTimeout() + Expect(session3.ExitCode()).To(Equal(0)) + session4 := podmanTest.Podman([]string("stop", "-a", "-t", "1")) + session4.WaitWithDefaultTimeout() + Expect(session4.ExitCode()).To(Equal(0)) + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) + }) + + It("podman stop all containers with one created", func() { + session := podmanTest.RunTopContainer("test1") + session.WaitWithDefaultTimeout() + Expect(session.ExitCode()).To(Equal(0)) + session2 := podmanTest.Podman([]string{"create", ALPINE, "/bin/sh"}) + session2.WaitWithDefaultTimeout() + Expect(session2.ExitCode()).To(Equal(0)) + session3 := podmanTest.Podman([]string("stop", "-a", "-t", "1")) + session3.WaitWithDefaultTimeout() + Expect(session3.ExitCode()).To(Equal(0)) + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) + }) + }) -- cgit v1.2.3-54-g00ecf From 597b2ebfeaeb1c2aec6790d5e3351a8889e2dc46 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Tue, 23 Apr 2019 13:11:35 -0400 Subject: Enhance tests for stop to check results None of the stop tests actually verified that containers were in a stopped state after they finished. We shouldn't take a 0 exit code to indicate that things worked - verify that ps shows no running containers. Signed-off-by: Matthew Heon --- test/e2e/stop_test.go | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) (limited to 'test/e2e/stop_test.go') diff --git a/test/e2e/stop_test.go b/test/e2e/stop_test.go index 61c3fedfd..259410736 100644 --- a/test/e2e/stop_test.go +++ b/test/e2e/stop_test.go @@ -48,6 +48,11 @@ var _ = Describe("Podman stop", func() { session = podmanTest.Podman([]string{"stop", cid}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop container by name", func() { @@ -57,15 +62,25 @@ var _ = Describe("Podman stop", func() { session = podmanTest.Podman([]string{"stop", "test1"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) - It("podman stop container by name", func() { + It("podman container stop by name", func() { session := podmanTest.RunTopContainer("test1") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) session = podmanTest.Podman([]string{"container", "stop", "test1"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop stopped container", func() { @@ -80,6 +95,11 @@ var _ = Describe("Podman stop", func() { session3 := podmanTest.Podman([]string{"stop", "test1"}) session3.WaitWithDefaultTimeout() Expect(session3.ExitCode()).To(Equal(0)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop all containers -t", func() { @@ -105,6 +125,11 @@ var _ = Describe("Podman stop", func() { Expect(output).To(ContainSubstring(cid1)) Expect(output).To(ContainSubstring(cid2)) Expect(output).To(ContainSubstring(cid3)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop container --time", func() { @@ -118,6 +143,11 @@ var _ = Describe("Podman stop", func() { Expect(session.ExitCode()).To(Equal(0)) output := session.OutputToString() Expect(output).To(ContainSubstring(cid1)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop container --timeout", func() { @@ -131,6 +161,11 @@ var _ = Describe("Podman stop", func() { Expect(session.ExitCode()).To(Equal(0)) output := session.OutputToString() Expect(output).To(ContainSubstring(cid1)) + + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop latest containers", func() { @@ -140,6 +175,10 @@ var _ = Describe("Podman stop", func() { session = podmanTest.Podman([]string{"stop", "-l", "-t", "1"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) + finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs.WaitWithDefaultTimeout() + Expect(finalCtrs.ExitCode()).To(Equal(0)) + Expect(finalCtrs.OutputToString()).To(Equal("")) }) It("podman stop all containers with one stopped", func() { -- cgit v1.2.3-54-g00ecf From c3c2ba079d6a466236d8f1bbc9c6b0f6173dd408 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Tue, 23 Apr 2019 13:15:24 -0400 Subject: Trim whitespace from ps -q before comparing Signed-off-by: Matthew Heon --- test/e2e/stop_test.go | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'test/e2e/stop_test.go') diff --git a/test/e2e/stop_test.go b/test/e2e/stop_test.go index 259410736..8f7bb2308 100644 --- a/test/e2e/stop_test.go +++ b/test/e2e/stop_test.go @@ -4,6 +4,7 @@ package integration import ( "os" + "strings" . "github.com/containers/libpod/test/utils" . "github.com/onsi/ginkgo" @@ -52,7 +53,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop container by name", func() { @@ -66,7 +67,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman container stop by name", func() { @@ -80,7 +81,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop stopped container", func() { @@ -99,7 +100,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop all containers -t", func() { @@ -129,7 +130,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop container --time", func() { @@ -147,7 +148,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop container --timeout", func() { @@ -165,7 +166,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop latest containers", func() { @@ -178,7 +179,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop all containers with one stopped", func() { @@ -197,7 +198,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) It("podman stop all containers with one created", func() { @@ -213,7 +214,7 @@ var _ = Describe("Podman stop", func() { finalCtrs := podmanTest.Podman([]string("ps", "-q")) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) - Expect(finalCtrs.OutputToString()).To(Equal("")) + Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) }) }) -- cgit v1.2.3-54-g00ecf From 90873b465b187e995bc3a436ef5fb1dc8072f8b9 Mon Sep 17 00:00:00 2001 From: Matthew Heon Date: Tue, 23 Apr 2019 13:48:08 -0400 Subject: Fix test compile Signed-off-by: Matthew Heon --- test/e2e/stop_test.go | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) (limited to 'test/e2e/stop_test.go') diff --git a/test/e2e/stop_test.go b/test/e2e/stop_test.go index 8f7bb2308..717eea441 100644 --- a/test/e2e/stop_test.go +++ b/test/e2e/stop_test.go @@ -50,7 +50,7 @@ var _ = Describe("Podman stop", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -64,7 +64,7 @@ var _ = Describe("Podman stop", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -78,7 +78,7 @@ var _ = Describe("Podman stop", func() { session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -97,7 +97,7 @@ var _ = Describe("Podman stop", func() { session3.WaitWithDefaultTimeout() Expect(session3.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -127,7 +127,7 @@ var _ = Describe("Podman stop", func() { Expect(output).To(ContainSubstring(cid2)) Expect(output).To(ContainSubstring(cid3)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -145,7 +145,7 @@ var _ = Describe("Podman stop", func() { output := session.OutputToString() Expect(output).To(ContainSubstring(cid1)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -163,7 +163,7 @@ var _ = Describe("Podman stop", func() { output := session.OutputToString() Expect(output).To(ContainSubstring(cid1)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -176,7 +176,7 @@ var _ = Describe("Podman stop", func() { session = podmanTest.Podman([]string{"stop", "-l", "-t", "1"}) session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -186,16 +186,16 @@ var _ = Describe("Podman stop", func() { session := podmanTest.RunTopContainer("test1") session.WaitWithDefaultTimeout() Expect(session.ExitCode()).To(Equal(0)) - session2 := podmanTest.RunTopContainer("test1") + session2 := podmanTest.RunTopContainer("test2") session2.WaitWithDefaultTimeout() Expect(session2.ExitCode()).To(Equal(0)) - session3 := podmanTest.Podman([]string("stop", "-l", "-t", "1")) + session3 := podmanTest.Podman([]string{"stop", "-l", "-t", "1"}) session3.WaitWithDefaultTimeout() Expect(session3.ExitCode()).To(Equal(0)) - session4 := podmanTest.Podman([]string("stop", "-a", "-t", "1")) + session4 := podmanTest.Podman([]string{"stop", "-a", "-t", "1"}) session4.WaitWithDefaultTimeout() Expect(session4.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) @@ -208,10 +208,10 @@ var _ = Describe("Podman stop", func() { session2 := podmanTest.Podman([]string{"create", ALPINE, "/bin/sh"}) session2.WaitWithDefaultTimeout() Expect(session2.ExitCode()).To(Equal(0)) - session3 := podmanTest.Podman([]string("stop", "-a", "-t", "1")) + session3 := podmanTest.Podman([]string{"stop", "-a", "-t", "1"}) session3.WaitWithDefaultTimeout() Expect(session3.ExitCode()).To(Equal(0)) - finalCtrs := podmanTest.Podman([]string("ps", "-q")) + finalCtrs := podmanTest.Podman([]string{"ps", "-q"}) finalCtrs.WaitWithDefaultTimeout() Expect(finalCtrs.ExitCode()).To(Equal(0)) Expect(strings.TrimSpace(finalCtrs.OutputToString())).To(Equal("")) -- cgit v1.2.3-54-g00ecf