mirror of
https://github.com/moby/moby.git
synced 2026-01-11 18:51:37 +00:00
Use suite for integration-cli
It prints test name and duration for each test. Also performs deleteAllContainers after each test. Signed-off-by: Alexander Morozov <lk4d4@docker.com>
This commit is contained in:
@@ -4,12 +4,13 @@ import (
|
||||
"fmt"
|
||||
"os/exec"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/go-check/check"
|
||||
)
|
||||
|
||||
// This is a heisen-test. Because the created timestamp of images and the behavior of
|
||||
// sort is not predictable it doesn't always fail.
|
||||
func TestBuildHistory(t *testing.T) {
|
||||
func (s *DockerSuite) TestBuildHistory(c *check.C) {
|
||||
name := "testbuildhistory"
|
||||
defer deleteImages(name)
|
||||
_, err := buildImage(name, `FROM busybox
|
||||
@@ -42,12 +43,12 @@ RUN echo "Z"`,
|
||||
true)
|
||||
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
c.Fatal(err)
|
||||
}
|
||||
|
||||
out, exitCode, err := runCommandWithOutput(exec.Command(dockerBinary, "history", "testbuildhistory"))
|
||||
if err != nil || exitCode != 0 {
|
||||
t.Fatalf("failed to get image history: %s, %v", out, err)
|
||||
c.Fatalf("failed to get image history: %s, %v", out, err)
|
||||
}
|
||||
|
||||
actualValues := strings.Split(out, "\n")[1:27]
|
||||
@@ -58,32 +59,29 @@ RUN echo "Z"`,
|
||||
actualValue := actualValues[i]
|
||||
|
||||
if !strings.Contains(actualValue, echoValue) {
|
||||
t.Fatalf("Expected layer \"%s\", but was: %s", expectedValues[i], actualValue)
|
||||
c.Fatalf("Expected layer \"%s\", but was: %s", expectedValues[i], actualValue)
|
||||
}
|
||||
}
|
||||
|
||||
logDone("history - build history")
|
||||
}
|
||||
|
||||
func TestHistoryExistentImage(t *testing.T) {
|
||||
func (s *DockerSuite) TestHistoryExistentImage(c *check.C) {
|
||||
historyCmd := exec.Command(dockerBinary, "history", "busybox")
|
||||
_, exitCode, err := runCommandWithOutput(historyCmd)
|
||||
if err != nil || exitCode != 0 {
|
||||
t.Fatal("failed to get image history")
|
||||
c.Fatal("failed to get image history")
|
||||
}
|
||||
logDone("history - history on existent image must pass")
|
||||
}
|
||||
|
||||
func TestHistoryNonExistentImage(t *testing.T) {
|
||||
func (s *DockerSuite) TestHistoryNonExistentImage(c *check.C) {
|
||||
historyCmd := exec.Command(dockerBinary, "history", "testHistoryNonExistentImage")
|
||||
_, exitCode, err := runCommandWithOutput(historyCmd)
|
||||
if err == nil || exitCode == 0 {
|
||||
t.Fatal("history on a non-existent image didn't result in a non-zero exit status")
|
||||
c.Fatal("history on a non-existent image didn't result in a non-zero exit status")
|
||||
}
|
||||
logDone("history - history on non-existent image must pass")
|
||||
}
|
||||
|
||||
func TestHistoryImageWithComment(t *testing.T) {
|
||||
func (s *DockerSuite) TestHistoryImageWithComment(c *check.C) {
|
||||
name := "testhistoryimagewithcomment"
|
||||
defer deleteContainer(name)
|
||||
defer deleteImages(name)
|
||||
@@ -93,26 +91,26 @@ func TestHistoryImageWithComment(t *testing.T) {
|
||||
runCmd := exec.Command(dockerBinary, "run", "--name", name, "busybox", "true")
|
||||
out, _, err := runCommandWithOutput(runCmd)
|
||||
if err != nil {
|
||||
t.Fatalf("failed to run container: %s, %v", out, err)
|
||||
c.Fatalf("failed to run container: %s, %v", out, err)
|
||||
}
|
||||
|
||||
waitCmd := exec.Command(dockerBinary, "wait", name)
|
||||
if out, _, err := runCommandWithOutput(waitCmd); err != nil {
|
||||
t.Fatalf("error thrown while waiting for container: %s, %v", out, err)
|
||||
c.Fatalf("error thrown while waiting for container: %s, %v", out, err)
|
||||
}
|
||||
|
||||
comment := "This_is_a_comment"
|
||||
|
||||
commitCmd := exec.Command(dockerBinary, "commit", "-m="+comment, name, name)
|
||||
if out, _, err := runCommandWithOutput(commitCmd); err != nil {
|
||||
t.Fatalf("failed to commit container to image: %s, %v", out, err)
|
||||
c.Fatalf("failed to commit container to image: %s, %v", out, err)
|
||||
}
|
||||
|
||||
// test docker history <image id> to check comment messages
|
||||
historyCmd := exec.Command(dockerBinary, "history", name)
|
||||
out, exitCode, err := runCommandWithOutput(historyCmd)
|
||||
if err != nil || exitCode != 0 {
|
||||
t.Fatalf("failed to get image history: %s, %v", out, err)
|
||||
c.Fatalf("failed to get image history: %s, %v", out, err)
|
||||
}
|
||||
|
||||
outputTabs := strings.Fields(strings.Split(out, "\n")[1])
|
||||
@@ -120,8 +118,7 @@ func TestHistoryImageWithComment(t *testing.T) {
|
||||
actualValue := outputTabs[len(outputTabs)-1]
|
||||
|
||||
if !strings.Contains(actualValue, comment) {
|
||||
t.Fatalf("Expected comments %q, but found %q", comment, actualValue)
|
||||
c.Fatalf("Expected comments %q, but found %q", comment, actualValue)
|
||||
}
|
||||
|
||||
logDone("history - history on image with comment")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user