github.com/dmaizel/tests@v0.0.0-20210728163746-cae6a2d9cee8/integration/docker/load_test.go (about) 1 // Copyright (c) 2019 Intel Corporation 2 // 3 // SPDX-License-Identifier: Apache-2.0 4 5 package docker 6 7 import ( 8 "io/ioutil" 9 "os" 10 11 . "github.com/onsi/ginkgo" 12 . "github.com/onsi/gomega" 13 ) 14 15 var _ = Describe("load", func() { 16 var ( 17 id string 18 repoName string 19 exitCode int 20 ) 21 22 BeforeEach(func() { 23 id = randomDockerName() 24 _, _, exitCode = dockerRun("-td", "--name", id, Image) 25 Expect(exitCode).To(Equal(0)) 26 repoName = randomDockerRepoName() 27 }) 28 29 AfterEach(func() { 30 _, _, exitCode = dockerRmi(repoName) 31 Expect(exitCode).To(Equal(0)) 32 Expect(RemoveDockerContainer(id)).To(BeTrue()) 33 Expect(ExistDockerContainer(id)).NotTo(BeTrue()) 34 }) 35 36 Describe("load with docker", func() { 37 Context("load a container", func() { 38 It("should load image", func() { 39 file, err := ioutil.TempFile(os.TempDir(), "mynewimage.tar") 40 Expect(err).ToNot(HaveOccurred()) 41 err = file.Close() 42 Expect(err).ToNot(HaveOccurred()) 43 defer os.Remove(file.Name()) 44 Expect(file.Name()).To(BeAnExistingFile()) 45 _, _, exitCode = dockerCommit(id, repoName) 46 Expect(exitCode).To(Equal(0)) 47 _, _, exitCode = dockerSave(repoName, "--output", file.Name()) 48 Expect(exitCode).To(Equal(0)) 49 stdout, _, _ := dockerLoad("--input", file.Name()) 50 Expect(stdout).To(ContainSubstring(repoName)) 51 }) 52 }) 53 }) 54 })