diff options
Diffstat (limited to 'pkg/machine/e2e/list_test.go')
-rw-r--r-- | pkg/machine/e2e/list_test.go | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/pkg/machine/e2e/list_test.go b/pkg/machine/e2e/list_test.go index 0ce9063f9..0bc867047 100644 --- a/pkg/machine/e2e/list_test.go +++ b/pkg/machine/e2e/list_test.go @@ -4,6 +4,8 @@ import ( "strings" "github.com/containers/buildah/util" + "github.com/containers/podman/v4/cmd/podman/machine" + jsoniter "github.com/json-iterator/go" . "github.com/onsi/ginkgo" . "github.com/onsi/gomega" . "github.com/onsi/gomega/gexec" @@ -40,7 +42,7 @@ var _ = Describe("podman machine list", func() { Expect(len(secondList.outputToStringSlice())).To(Equal(2)) // one machine and the header }) - It("list machines with quiet", func() { + It("list machines with quiet or noheading", func() { // Random names for machines to test list name1 := randomString(12) name2 := randomString(12) @@ -51,6 +53,11 @@ var _ = Describe("podman machine list", func() { Expect(firstList).Should(Exit(0)) Expect(len(firstList.outputToStringSlice())).To(Equal(0)) // No header with quiet + noheaderSession, err := mb.setCmd(list.withNoHeading()).run() // noheader + Expect(err).NotTo(HaveOccurred()) + Expect(noheaderSession).Should(Exit(0)) + Expect(len(noheaderSession.outputToStringSlice())).To(Equal(0)) + i := new(initMachine) session, err := mb.setName(name1).setCmd(i.withImagePath(mb.imagePath)).run() Expect(err).To(BeNil()) @@ -97,6 +104,38 @@ var _ = Describe("podman machine list", func() { Expect(listSession.outputToString()).To(ContainSubstring("Currently running")) Expect(listSession.outputToString()).NotTo(ContainSubstring("Less than a second ago")) // check to make sure time created is accurate }) + + It("list with --format", func() { + // Random names for machines to test list + name1 := randomString(12) + + i := new(initMachine) + session, err := mb.setName(name1).setCmd(i.withImagePath(mb.imagePath)).run() + Expect(err).To(BeNil()) + Expect(session).To(Exit(0)) + + // go format + list := new(listMachine) + listSession, err := mb.setCmd(list.withFormat("{{.Name}}").withNoHeading()).run() + Expect(err).NotTo(HaveOccurred()) + Expect(listSession).To(Exit(0)) + Expect(len(listSession.outputToStringSlice())).To(Equal(1)) + + listNames := listSession.outputToStringSlice() + stripAsterisk(listNames) + Expect(util.StringInSlice(name1, listNames)).To(BeTrue()) + + // --format json + list2 := new(listMachine) + list2 = list2.withFormat("json") + listSession2, err := mb.setName("foo1").setCmd(list2).run() + Expect(err).To(BeNil()) + Expect(listSession2).To(Exit(0)) + + var listResponse []*machine.ListReporter + err = jsoniter.Unmarshal(listSession.Bytes(), &listResponse) + Expect(err).To(BeNil()) + }) }) func stripAsterisk(sl []string) { |