From bab50b4201355e695632d56fc770498d284d2533 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 Upstream-commit: 97c573bf020e946fe1b9af61269f7f13f7f63f67 Component: engine --- .../integration-cli/docker_cli_build_test.go | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/components/engine/integration-cli/docker_cli_build_test.go b/components/engine/integration-cli/docker_cli_build_test.go index 3647616726..52132f175e 100644 --- a/components/engine/integration-cli/docker_cli_build_test.go +++ b/components/engine/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