github.com/containers/libpod@v1.9.4-0.20220419124438-4284fd425507/test/e2e/pod_stop_test.go (about) 1 package integration 2 3 import ( 4 "os" 5 6 . "github.com/containers/libpod/test/utils" 7 . "github.com/onsi/ginkgo" 8 . "github.com/onsi/gomega" 9 ) 10 11 var _ = Describe("Podman pod stop", func() { 12 var ( 13 tempdir string 14 err error 15 podmanTest *PodmanTestIntegration 16 ) 17 18 BeforeEach(func() { 19 tempdir, err = CreateTempDirInTempDir() 20 if err != nil { 21 os.Exit(1) 22 } 23 podmanTest = PodmanTestCreate(tempdir) 24 podmanTest.Setup() 25 podmanTest.SeedImages() 26 }) 27 28 AfterEach(func() { 29 podmanTest.CleanupPod() 30 f := CurrentGinkgoTestDescription() 31 processTestResult(f) 32 33 }) 34 35 It("podman pod stop bogus pod", func() { 36 session := podmanTest.Podman([]string{"pod", "stop", "123"}) 37 session.WaitWithDefaultTimeout() 38 Expect(session.ExitCode()).To(Equal(125)) 39 }) 40 41 It("podman pod stop --ignore bogus pod", func() { 42 SkipIfRemote() 43 44 session := podmanTest.Podman([]string{"pod", "stop", "--ignore", "123"}) 45 session.WaitWithDefaultTimeout() 46 Expect(session.ExitCode()).To(Equal(0)) 47 }) 48 49 It("podman stop bogus pod and a running pod", func() { 50 _, ec, podid1 := podmanTest.CreatePod("") 51 Expect(ec).To(Equal(0)) 52 53 session := podmanTest.RunTopContainerInPod("test1", podid1) 54 session.WaitWithDefaultTimeout() 55 Expect(session.ExitCode()).To(Equal(0)) 56 57 session = podmanTest.Podman([]string{"pod", "stop", "bogus", "test1"}) 58 session.WaitWithDefaultTimeout() 59 Expect(session.ExitCode()).To(Equal(125)) 60 }) 61 62 It("podman stop --ignore bogus pod and a running pod", func() { 63 SkipIfRemote() 64 65 _, ec, podid1 := podmanTest.CreatePod("") 66 Expect(ec).To(Equal(0)) 67 68 session := podmanTest.RunTopContainerInPod("test1", podid1) 69 session.WaitWithDefaultTimeout() 70 Expect(session.ExitCode()).To(Equal(0)) 71 72 session = podmanTest.Podman([]string{"pod", "stop", "--ignore", "bogus", "test1"}) 73 session.WaitWithDefaultTimeout() 74 Expect(session.ExitCode()).To(Equal(0)) 75 76 session = podmanTest.Podman([]string{"pod", "stop", "--ignore", "test1", "bogus"}) 77 session.WaitWithDefaultTimeout() 78 Expect(session.ExitCode()).To(Equal(0)) 79 }) 80 81 It("podman pod stop single empty pod", func() { 82 _, ec, podid := podmanTest.CreatePod("") 83 Expect(ec).To(Equal(0)) 84 85 session := podmanTest.Podman([]string{"pod", "stop", podid}) 86 session.WaitWithDefaultTimeout() 87 Expect(session.ExitCode()).To(Equal(0)) 88 }) 89 90 It("podman pod stop single pod by name", func() { 91 _, ec, _ := podmanTest.CreatePod("foobar99") 92 Expect(ec).To(Equal(0)) 93 94 session := podmanTest.RunTopContainerInPod("", "foobar99") 95 session.WaitWithDefaultTimeout() 96 Expect(session.ExitCode()).To(Equal(0)) 97 98 session = podmanTest.Podman([]string{"pod", "stop", "foobar99"}) 99 session.WaitWithDefaultTimeout() 100 Expect(session.ExitCode()).To(Equal(0)) 101 Expect(podmanTest.NumberOfContainersRunning()).To(Equal(0)) 102 }) 103 104 It("podman pod stop multiple pods", func() { 105 _, ec, podid1 := podmanTest.CreatePod("foobar99") 106 Expect(ec).To(Equal(0)) 107 108 session := podmanTest.RunTopContainerInPod("", "foobar99") 109 session.WaitWithDefaultTimeout() 110 Expect(session.ExitCode()).To(Equal(0)) 111 112 _, ec2, podid2 := podmanTest.CreatePod("foobar100") 113 Expect(ec2).To(Equal(0)) 114 115 session = podmanTest.RunTopContainerInPod("", "foobar100") 116 session.WaitWithDefaultTimeout() 117 Expect(session.ExitCode()).To(Equal(0)) 118 119 session = podmanTest.Podman([]string{"pod", "stop", podid1, podid2}) 120 session.WaitWithDefaultTimeout() 121 Expect(session.ExitCode()).To(Equal(0)) 122 Expect(podmanTest.NumberOfContainersRunning()).To(Equal(0)) 123 }) 124 125 It("podman pod stop all pods", func() { 126 _, ec, _ := podmanTest.CreatePod("foobar99") 127 Expect(ec).To(Equal(0)) 128 129 session := podmanTest.RunTopContainerInPod("", "foobar99") 130 session.WaitWithDefaultTimeout() 131 Expect(session.ExitCode()).To(Equal(0)) 132 133 _, ec, _ = podmanTest.CreatePod("foobar100") 134 Expect(ec).To(Equal(0)) 135 136 session = podmanTest.RunTopContainerInPod("", "foobar100") 137 session.WaitWithDefaultTimeout() 138 Expect(session.ExitCode()).To(Equal(0)) 139 140 session = podmanTest.Podman([]string{"pod", "stop", "--all"}) 141 session.WaitWithDefaultTimeout() 142 Expect(session.ExitCode()).To(Equal(0)) 143 Expect(podmanTest.NumberOfContainersRunning()).To(Equal(0)) 144 }) 145 146 It("podman pod stop latest pod", func() { 147 _, ec, _ := podmanTest.CreatePod("foobar99") 148 Expect(ec).To(Equal(0)) 149 150 session := podmanTest.RunTopContainerInPod("", "foobar99") 151 session.WaitWithDefaultTimeout() 152 Expect(session.ExitCode()).To(Equal(0)) 153 154 _, ec, _ = podmanTest.CreatePod("foobar100") 155 Expect(ec).To(Equal(0)) 156 157 session = podmanTest.RunTopContainerInPod("", "foobar100") 158 session.WaitWithDefaultTimeout() 159 Expect(session.ExitCode()).To(Equal(0)) 160 161 session = podmanTest.Podman([]string{"pod", "stop", "--latest"}) 162 session.WaitWithDefaultTimeout() 163 Expect(session.ExitCode()).To(Equal(0)) 164 Expect(podmanTest.NumberOfContainersRunning()).To(Equal(1)) 165 }) 166 167 It("podman pod stop multiple pods with bogus", func() { 168 _, ec, podid1 := podmanTest.CreatePod("foobar99") 169 Expect(ec).To(Equal(0)) 170 171 session := podmanTest.RunTopContainerInPod("", "foobar99") 172 session.WaitWithDefaultTimeout() 173 Expect(session.ExitCode()).To(Equal(0)) 174 175 session = podmanTest.Podman([]string{"pod", "stop", podid1, "doesnotexist"}) 176 session.WaitWithDefaultTimeout() 177 Expect(session.ExitCode()).To(Equal(125)) 178 }) 179 })