From 97c573bf020e946fe1b9af61269f7f13f7f63f67 Mon Sep 17 00:00:00 2001 From: Doug Davis Date: Thu, 19 Mar 2015 10:06:06 -0700 Subject: [PATCH] Add a LABEL cache check testcase Thanks to @tiborvass's review of another PR it was noticed that we didn't have a testcase to make sure the cache checking for LABEL was being done properly. This adds a test for it. Signed-off-by: Doug Davis --- integration-cli/docker_cli_build_test.go | 35 ++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/integration-cli/docker_cli_build_test.go b/integration-cli/docker_cli_build_test.go index 3647616726..52132f175e 100644 --- a/integration-cli/docker_cli_build_test.go +++ b/integration-cli/docker_cli_build_test.go @@ -4563,6 +4563,41 @@ func TestBuildLabels(t *testing.T) { logDone("build - label") } +func TestBuildLabelsCache(t *testing.T) { + name := "testbuildlabelcache" + defer deleteImages(name) + + id1, err := buildImage(name, + `FROM busybox + LABEL Vendor=Acme`, false) + if err != nil { + t.Fatalf("Build 1 should have worked: %v", err) + } + + id2, err := buildImage(name, + `FROM busybox + LABEL Vendor=Acme`, true) + if err != nil || id1 != id2 { + t.Fatalf("Build 2 should have worked & used cache(%s,%s): %v", id1, id2, err) + } + + id2, err = buildImage(name, + `FROM busybox + LABEL Vendor=Acme1`, true) + if err != nil || id1 == id2 { + t.Fatalf("Build 2 should have worked & NOT used cache(%s,%s): %v", id1, id2, err) + } + + id2, err = buildImage(name, + `FROM busybox + LABEL Vendor Acme`, true) // Note: " " and "=" should be same + if err != nil || id1 != id2 { + t.Fatalf("Build 3 should have worked & used cache(%s,%s): %v", id1, id2, err) + } + + logDone("build - label cache") +} + func TestBuildStderr(t *testing.T) { // This test just makes sure that no non-error output goes // to stderr