github.com/containers/libpod@v1.9.4-0.20220419124438-4284fd425507/test/e2e/system_df_test.go (about)

     1  // +build !remoteclient
     2  
     3  package integration
     4  
     5  import (
     6  	"fmt"
     7  	"os"
     8  	"strings"
     9  
    10  	. "github.com/containers/libpod/test/utils"
    11  	. "github.com/onsi/ginkgo"
    12  	. "github.com/onsi/gomega"
    13  )
    14  
    15  var _ = Describe("podman system df", func() {
    16  	var (
    17  		tempdir    string
    18  		err        error
    19  		podmanTest *PodmanTestIntegration
    20  	)
    21  
    22  	BeforeEach(func() {
    23  		tempdir, err = CreateTempDirInTempDir()
    24  		if err != nil {
    25  			os.Exit(1)
    26  		}
    27  		podmanTest = PodmanTestCreate(tempdir)
    28  		podmanTest.Setup()
    29  		podmanTest.SeedImages()
    30  	})
    31  
    32  	AfterEach(func() {
    33  		podmanTest.Cleanup()
    34  		f := CurrentGinkgoTestDescription()
    35  		timedResult := fmt.Sprintf("Test: %s completed in %f seconds", f.TestText, f.Duration.Seconds())
    36  		GinkgoWriter.Write([]byte(timedResult))
    37  	})
    38  
    39  	It("podman system df", func() {
    40  		session := podmanTest.Podman([]string{"create", ALPINE})
    41  		session.WaitWithDefaultTimeout()
    42  		Expect(session.ExitCode()).To(Equal(0))
    43  
    44  		session = podmanTest.Podman([]string{"volume", "create", "data"})
    45  		session.WaitWithDefaultTimeout()
    46  		Expect(session.ExitCode()).To(Equal(0))
    47  
    48  		session = podmanTest.Podman([]string{"create", "-v", "data:/data", "--name", "container1", "busybox"})
    49  		session.WaitWithDefaultTimeout()
    50  		Expect(session.ExitCode()).To(Equal(0))
    51  
    52  		session = podmanTest.Podman([]string{"system", "df"})
    53  		session.WaitWithDefaultTimeout()
    54  		Expect(session.ExitCode()).To(Equal(0))
    55  		Expect(len(session.OutputToStringArray())).To(Equal(4))
    56  		images := strings.Fields(session.OutputToStringArray()[1])
    57  		containers := strings.Fields(session.OutputToStringArray()[2])
    58  		volumes := strings.Fields(session.OutputToStringArray()[3])
    59  		Expect(images[1]).To(Equal("9"))
    60  		Expect(containers[1]).To(Equal("2"))
    61  		Expect(volumes[2]).To(Equal("1"))
    62  	})
    63  })