github.com/containers/libpod@v1.9.4-0.20220419124438-4284fd425507/test/e2e/system_reset_test.go (about) 1 package integration 2 3 import ( 4 "fmt" 5 "os" 6 7 . "github.com/containers/libpod/test/utils" 8 . "github.com/onsi/ginkgo" 9 . "github.com/onsi/gomega" 10 ) 11 12 var _ = Describe("podman system reset", func() { 13 var ( 14 tempdir string 15 err error 16 podmanTest *PodmanTestIntegration 17 ) 18 19 BeforeEach(func() { 20 tempdir, err = CreateTempDirInTempDir() 21 if err != nil { 22 os.Exit(1) 23 } 24 podmanTest = PodmanTestCreate(tempdir) 25 podmanTest.Setup() 26 podmanTest.SeedImages() 27 }) 28 29 AfterEach(func() { 30 podmanTest.Cleanup() 31 f := CurrentGinkgoTestDescription() 32 timedResult := fmt.Sprintf("Test: %s completed in %f seconds", f.TestText, f.Duration.Seconds()) 33 GinkgoWriter.Write([]byte(timedResult)) 34 }) 35 36 It("podman system reset", func() { 37 // system reset will not remove additional store images, so need to grab length 38 39 session := podmanTest.Podman([]string{"rmi", "--force", "--all"}) 40 session.WaitWithDefaultTimeout() 41 Expect(session.ExitCode()).To(Equal(0)) 42 43 session = podmanTest.Podman([]string{"images", "-n"}) 44 session.WaitWithDefaultTimeout() 45 Expect(session.ExitCode()).To(Equal(0)) 46 l := len(session.OutputToStringArray()) 47 48 session = podmanTest.Podman([]string{"pull", ALPINE}) 49 session.WaitWithDefaultTimeout() 50 Expect(session.ExitCode()).To(Equal(0)) 51 52 session = podmanTest.Podman([]string{"volume", "create", "data"}) 53 session.WaitWithDefaultTimeout() 54 Expect(session.ExitCode()).To(Equal(0)) 55 56 session = podmanTest.Podman([]string{"create", "-v", "data:/data", ALPINE, "echo", "hello"}) 57 session.WaitWithDefaultTimeout() 58 Expect(session.ExitCode()).To(Equal(0)) 59 60 session = podmanTest.Podman([]string{"system", "reset", "-f"}) 61 session.WaitWithDefaultTimeout() 62 Expect(session.ExitCode()).To(Equal(0)) 63 64 // If remote then the varlink service should have exited 65 // On local tests this is a noop 66 podmanTest.StartVarlink() 67 68 session = podmanTest.Podman([]string{"images", "-n"}) 69 session.WaitWithDefaultTimeout() 70 Expect(session.ExitCode()).To(Equal(0)) 71 Expect(len(session.OutputToStringArray())).To(Equal(l)) 72 73 session = podmanTest.Podman([]string{"volume", "ls"}) 74 session.WaitWithDefaultTimeout() 75 Expect(session.ExitCode()).To(Equal(0)) 76 Expect(len(session.OutputToStringArray())).To(Equal(0)) 77 78 session = podmanTest.Podman([]string{"container", "ls", "-q"}) 79 session.WaitWithDefaultTimeout() 80 Expect(session.ExitCode()).To(Equal(0)) 81 Expect(len(session.OutputToStringArray())).To(Equal(0)) 82 }) 83 })