add list mount tests

Add two unit tests to determine whether mounts are being listed
correctly. One tests that a created container is not listed
until mounted. The second checks that running containers are
mounted, and then no longer listed as mounted when they stop
running. The final test creates three containers, mounts two,
and checks that mount correctly only lists the two mounted.

Signed-off-by: gabi beyer <gabrielle.n.beyer@intel.com>
This commit is contained in:
gabi beyer 2019-09-04 18:34:08 +00:00 committed by Marco Vedovati
parent 0115be19f5
commit 65d5a9823e

View file

@ -156,4 +156,124 @@ var _ = Describe("Podman mount", func() {
umount.WaitWithDefaultTimeout()
Expect(umount.ExitCode()).To(Equal(0))
})
It("podman list mounted container", func() {
setup := podmanTest.Podman([]string{"create", ALPINE, "ls"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid := setup.OutputToString()
lmount := podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(Equal(""))
mount := podmanTest.Podman([]string{"mount", cid})
mount.WaitWithDefaultTimeout()
Expect(mount.ExitCode()).To(Equal(0))
lmount = podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(ContainSubstring(cid))
umount := podmanTest.Podman([]string{"umount", cid})
umount.WaitWithDefaultTimeout()
Expect(umount.ExitCode()).To(Equal(0))
})
It("podman list running container", func() {
SkipIfRootless()
setup := podmanTest.Podman([]string{"run", "-dt", ALPINE, "top"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid := setup.OutputToString()
lmount := podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(ContainSubstring(cid))
stop := podmanTest.Podman([]string{"stop", cid})
stop.WaitWithDefaultTimeout()
Expect(stop.ExitCode()).To(Equal(0))
lmount = podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(Equal(""))
})
It("podman list mulitple mounted containers", func() {
SkipIfRootless()
setup := podmanTest.Podman([]string{"create", ALPINE, "ls"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid1 := setup.OutputToString()
setup = podmanTest.Podman([]string{"create", ALPINE, "ls"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid2 := setup.OutputToString()
setup = podmanTest.Podman([]string{"create", ALPINE, "ls"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid3 := setup.OutputToString()
lmount := podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(Equal(""))
mount := podmanTest.Podman([]string{"mount", cid1, cid3})
mount.WaitWithDefaultTimeout()
Expect(mount.ExitCode()).To(Equal(0))
lmount = podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(ContainSubstring(cid1))
Expect(lmount.OutputToString()).ToNot(ContainSubstring(cid2))
Expect(lmount.OutputToString()).To(ContainSubstring(cid3))
umount := podmanTest.Podman([]string{"umount", cid1, cid3})
umount.WaitWithDefaultTimeout()
Expect(umount.ExitCode()).To(Equal(0))
lmount = podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(Equal(""))
})
It("podman list mounted container", func() {
SkipIfRootless()
setup := podmanTest.Podman([]string{"create", ALPINE, "ls"})
setup.WaitWithDefaultTimeout()
Expect(setup.ExitCode()).To(Equal(0))
cid := setup.OutputToString()
lmount := podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(Equal(""))
mount := podmanTest.Podman([]string{"mount", cid})
mount.WaitWithDefaultTimeout()
Expect(mount.ExitCode()).To(Equal(0))
lmount = podmanTest.Podman([]string{"mount", "--notruncate"})
lmount.WaitWithDefaultTimeout()
Expect(lmount.ExitCode()).To(Equal(0))
Expect(lmount.OutputToString()).To(ContainSubstring(cid))
umount := podmanTest.Podman([]string{"umount", cid})
umount.WaitWithDefaultTimeout()
Expect(umount.ExitCode()).To(Equal(0))
})
})