mirror of
https://github.com/containers/podman.git
synced 2025-05-29 14:06:29 +08:00
Add one test case for check diff in container and committed image
The test steps are: 1. Start a container and touch a file under /tmp 2. Use diff to check the container 3. commit the change into a new image 4. Use diff to check the image Signed-off-by: Yiqiao Pu <ypu@redhat.com> Closes: #643 Approved by: mheon
This commit is contained in:
@ -2,6 +2,7 @@ package integration
|
||||
|
||||
import (
|
||||
"os"
|
||||
"sort"
|
||||
|
||||
. "github.com/onsi/ginkgo"
|
||||
. "github.com/onsi/gomega"
|
||||
@ -47,4 +48,24 @@ var _ = Describe("Podman diff", func() {
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
Expect(session.IsJSONOutputValid()).To(BeTrue())
|
||||
})
|
||||
|
||||
It("podman diff container and committed image", func() {
|
||||
session := podmanTest.Podman([]string{"run", "--name=diff-test", ALPINE, "touch", "/tmp/diff-test"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
session = podmanTest.Podman([]string{"diff", "diff-test"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
containerDiff := session.OutputToStringArray()
|
||||
sort.Strings(containerDiff)
|
||||
Expect(session.LineInOutputContains("C /tmp")).To(BeTrue())
|
||||
Expect(session.LineInOutputContains("A /tmp/diff-test")).To(BeTrue())
|
||||
session = podmanTest.Podman([]string{"commit", "diff-test", "diff-test-img"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
Expect(session.ExitCode()).To(Equal(0))
|
||||
session = podmanTest.Podman([]string{"diff", "diff-test-img"})
|
||||
session.WaitWithDefaultTimeout()
|
||||
imageDiff := session.OutputToStringArray()
|
||||
sort.Strings(imageDiff)
|
||||
Expect(imageDiff).To(Equal(containerDiff))
|
||||
})
|
||||
})
|
||||
|
Reference in New Issue
Block a user