summaryrefslogtreecommitdiff
path: root/test/e2e
diff options
context:
space:
mode:
Diffstat (limited to 'test/e2e')
-rw-r--r--test/e2e/pod_top_test.go6
-rw-r--r--test/e2e/runlabel_test.go19
-rw-r--r--test/e2e/top_test.go28
3 files changed, 51 insertions, 2 deletions
diff --git a/test/e2e/pod_top_test.go b/test/e2e/pod_top_test.go
index 964ee075f..420e4aca9 100644
--- a/test/e2e/pod_top_test.go
+++ b/test/e2e/pod_top_test.go
@@ -93,7 +93,11 @@ var _ = Describe("Podman top", func() {
session.WaitWithDefaultTimeout()
Expect(session.ExitCode()).To(Equal(0))
- result := podmanTest.Podman([]string{"pod", "top", podid, "invalid"})
+ // We need to pass -eo to force executing ps in the Alpine container.
+ // Alpines stripped down ps(1) is accepting any kind of weird input in
+ // contrast to others, such that a `ps invalid` will silently ignore
+ // the wrong input and still print the -ef output instead.
+ result := podmanTest.Podman([]string{"pod", "top", podid, "-eo", "invalid"})
result.WaitWithDefaultTimeout()
Expect(result.ExitCode()).To(Equal(125))
})
diff --git a/test/e2e/runlabel_test.go b/test/e2e/runlabel_test.go
index b1d057bfd..f52a2b8fc 100644
--- a/test/e2e/runlabel_test.go
+++ b/test/e2e/runlabel_test.go
@@ -18,6 +18,11 @@ var LsDockerfile = `
FROM alpine:latest
LABEL RUN ls -la`
+var GlobalDockerfile = `
+FROM alpine:latest
+LABEL RUN echo \$GLOBAL_OPTS
+`
+
var _ = Describe("podman container runlabel", func() {
var (
tempdir string
@@ -78,4 +83,18 @@ var _ = Describe("podman container runlabel", func() {
Expect(result.ExitCode()).ToNot(Equal(0))
})
+
+ It("podman container runlabel global options", func() {
+ image := "podman-global-test:ls"
+ podmanTest.BuildImage(GlobalDockerfile, image, "false")
+ result := podmanTest.Podman([]string{"--syslog", "--log-level", "debug", "container", "runlabel", "RUN", image})
+ result.WaitWithDefaultTimeout()
+ Expect(result.ExitCode()).To(Equal(0))
+
+ Expect(result.OutputToString()).To(ContainSubstring("--syslog true"))
+ Expect(result.OutputToString()).To(ContainSubstring("--log-level debug"))
+ result = podmanTest.Podman([]string{"rmi", image})
+ result.WaitWithDefaultTimeout()
+ Expect(result.ExitCode()).To(Equal(0))
+ })
})
diff --git a/test/e2e/top_test.go b/test/e2e/top_test.go
index 2d3a5629c..4c2cdb7b5 100644
--- a/test/e2e/top_test.go
+++ b/test/e2e/top_test.go
@@ -87,13 +87,39 @@ var _ = Describe("Podman top", func() {
Expect(len(result.OutputToStringArray())).To(BeNumerically(">", 1))
})
+ It("podman top with ps(1) options", func() {
+ session := podmanTest.Podman([]string{"run", "-d", ALPINE, "top", "-d", "2"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ result := podmanTest.Podman([]string{"top", session.OutputToString(), "aux"})
+ result.WaitWithDefaultTimeout()
+ Expect(result.ExitCode()).To(Equal(0))
+ Expect(len(result.OutputToStringArray())).To(BeNumerically(">", 1))
+ })
+
+ It("podman top with comma-separated options", func() {
+ session := podmanTest.Podman([]string{"run", "-d", ALPINE, "top", "-d", "2"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ result := podmanTest.Podman([]string{"top", session.OutputToString(), "user,pid,comm"})
+ result.WaitWithDefaultTimeout()
+ Expect(result.ExitCode()).To(Equal(0))
+ Expect(len(result.OutputToStringArray())).To(BeNumerically(">", 1))
+ })
+
It("podman top on container invalid options", func() {
top := podmanTest.RunTopContainer("")
top.WaitWithDefaultTimeout()
Expect(top.ExitCode()).To(Equal(0))
cid := top.OutputToString()
- result := podmanTest.Podman([]string{"top", cid, "invalid"})
+ // We need to pass -eo to force executing ps in the Alpine container.
+ // Alpines stripped down ps(1) is accepting any kind of weird input in
+ // contrast to others, such that a `ps invalid` will silently ignore
+ // the wrong input and still print the -ef output instead.
+ result := podmanTest.Podman([]string{"top", cid, "-eo", "invalid"})
result.WaitWithDefaultTimeout()
Expect(result.ExitCode()).To(Equal(125))
})