summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorbaude <bbaude@redhat.com>2018-08-08 13:08:22 -0500
committerAtomic Bot <atomic-devel@projectatomic.io>2018-08-09 11:06:32 +0000
commit06fafe4cd04f29ee19078d6e78fdd792f2c1a37e (patch)
tree858649113e849d6b6c179126eb3b8740b0d2ee9d /test
parent879453eaf16675f732dd87fd250ccaaac72f4285 (diff)
downloadpodman-06fafe4cd04f29ee19078d6e78fdd792f2c1a37e.tar.gz
podman-06fafe4cd04f29ee19078d6e78fdd792f2c1a37e.tar.bz2
podman-06fafe4cd04f29ee19078d6e78fdd792f2c1a37e.zip
add podman pod inspect
first pass of podman pod inspect Signed-off-by: baude <bbaude@redhat.com> Closes: #1236 Approved by: rhatdan
Diffstat (limited to 'test')
-rw-r--r--test/e2e/libpod_suite_test.go9
-rw-r--r--test/e2e/pod_inspect_test.go61
2 files changed, 70 insertions, 0 deletions
diff --git a/test/e2e/libpod_suite_test.go b/test/e2e/libpod_suite_test.go
index e95b03cb9..3b7953672 100644
--- a/test/e2e/libpod_suite_test.go
+++ b/test/e2e/libpod_suite_test.go
@@ -19,6 +19,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
"github.com/onsi/gomega/gexec"
+ "github.com/projectatomic/libpod/libpod"
"github.com/projectatomic/libpod/pkg/inspect"
)
@@ -339,6 +340,14 @@ func (s *PodmanSession) InspectContainerToJSON() []inspect.ContainerData {
return i
}
+// InspectPodToJSON takes the sessions output from a pod inspect and returns json
+func (s *PodmanSession) InspectPodToJSON() libpod.PodInspect {
+ var i libpod.PodInspect
+ err := json.Unmarshal(s.Out.Contents(), &i)
+ Expect(err).To(BeNil())
+ return i
+}
+
// InspectImageJSON takes the session output of an inspect
// image and returns json
func (s *PodmanSession) InspectImageJSON() []inspect.ImageData {
diff --git a/test/e2e/pod_inspect_test.go b/test/e2e/pod_inspect_test.go
new file mode 100644
index 000000000..b5c2bd1be
--- /dev/null
+++ b/test/e2e/pod_inspect_test.go
@@ -0,0 +1,61 @@
+package integration
+
+import (
+ "fmt"
+ "os"
+
+ . "github.com/onsi/ginkgo"
+ . "github.com/onsi/gomega"
+)
+
+var _ = Describe("Podman pod inspect", func() {
+ var (
+ tempdir string
+ err error
+ podmanTest PodmanTest
+ )
+
+ BeforeEach(func() {
+ tempdir, err = CreateTempDirInTempDir()
+ if err != nil {
+ os.Exit(1)
+ }
+ podmanTest = PodmanCreate(tempdir)
+ podmanTest.RestoreAllArtifacts()
+ })
+
+ AfterEach(func() {
+ podmanTest.CleanupPod()
+ f := CurrentGinkgoTestDescription()
+ timedResult := fmt.Sprintf("Test: %s completed in %f seconds", f.TestText, f.Duration.Seconds())
+ GinkgoWriter.Write([]byte(timedResult))
+ })
+
+ It("podman inspect bogus pod", func() {
+ session := podmanTest.Podman([]string{"pod", "inspect", "foobar"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Not(Equal(0)))
+ })
+
+ It("podman inspect a pod", func() {
+ session := podmanTest.Podman([]string{"pod", "create"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ podid := session.OutputToString()
+
+ session = podmanTest.RunTopContainerInPod("", podid)
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ session = podmanTest.RunTopContainerInPod("", podid)
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ inspect := podmanTest.Podman([]string{"pod", "inspect", podid})
+ inspect.WaitWithDefaultTimeout()
+ Expect(inspect.ExitCode()).To(Equal(0))
+ Expect(inspect.IsJSONOutputValid()).To(BeTrue())
+ podData := inspect.InspectPodToJSON()
+ Expect(podData.Config.ID).To(Equal(podid))
+ })
+})