github.com/containers/podman/v2@v2.2.2-0.20210501105131-c1e07d070c4c/pkg/bindings/test/info_test.go (about)

     1  package test_bindings
     2  
     3  import (
     4  	"runtime"
     5  	"time"
     6  
     7  	"github.com/containers/podman/v2/pkg/bindings/containers"
     8  	"github.com/containers/podman/v2/pkg/bindings/images"
     9  	"github.com/containers/podman/v2/pkg/bindings/system"
    10  	"github.com/containers/podman/v2/pkg/specgen"
    11  	. "github.com/onsi/ginkgo"
    12  	. "github.com/onsi/gomega"
    13  	"github.com/onsi/gomega/gexec"
    14  )
    15  
    16  var _ = Describe("Podman info", func() {
    17  	var (
    18  		bt *bindingTest
    19  		s  *gexec.Session
    20  		t  bool = true
    21  	)
    22  
    23  	BeforeEach(func() {
    24  		bt = newBindingTest()
    25  		bt.RestoreImagesFromCache()
    26  		s = bt.startAPIService()
    27  		time.Sleep(1 * time.Second)
    28  		err := bt.NewConnection()
    29  		Expect(err).To(BeNil())
    30  	})
    31  
    32  	AfterEach(func() {
    33  		s.Kill()
    34  		bt.cleanup()
    35  	})
    36  
    37  	It("podman info", func() {
    38  		info, err := system.Info(bt.conn)
    39  		Expect(err).To(BeNil())
    40  		Expect(info.Host.Arch).To(Equal(runtime.GOARCH))
    41  		Expect(info.Host.OS).To(Equal(runtime.GOOS))
    42  		i, err := images.List(bt.conn, &t, nil)
    43  		Expect(err).To(BeNil())
    44  		Expect(info.Store.ImageStore.Number).To(Equal(len(i)))
    45  	})
    46  
    47  	It("podman info container counts", func() {
    48  		s := specgen.NewSpecGenerator(alpine.name, false)
    49  		_, err := containers.CreateWithSpec(bt.conn, s)
    50  		Expect(err).To(BeNil())
    51  
    52  		idPause, err := bt.RunTopContainer(nil, nil, nil)
    53  		Expect(err).To(BeNil())
    54  		err = containers.Pause(bt.conn, idPause)
    55  		Expect(err).To(BeNil())
    56  
    57  		idStop, err := bt.RunTopContainer(nil, nil, nil)
    58  		Expect(err).To(BeNil())
    59  		err = containers.Stop(bt.conn, idStop, nil)
    60  		Expect(err).To(BeNil())
    61  
    62  		_, err = bt.RunTopContainer(nil, nil, nil)
    63  		Expect(err).To(BeNil())
    64  
    65  		info, err := system.Info(bt.conn)
    66  		Expect(err).To(BeNil())
    67  
    68  		Expect(info.Store.ContainerStore.Number).To(BeNumerically("==", 4))
    69  		Expect(info.Store.ContainerStore.Paused).To(Equal(1))
    70  		Expect(info.Store.ContainerStore.Stopped).To(Equal(2))
    71  		Expect(info.Store.ContainerStore.Running).To(Equal(1))
    72  	})
    73  })