From 220ec3bfcb89e4af39909ad91066ff621f84d2af Mon Sep 17 00:00:00 2001 From: Patrick Decat Date: Mon, 12 Feb 2018 20:08:48 +0100 Subject: [PATCH] Add test case revealing issue #115 when add adding labels to a resource that didn't have any --- .../resource_kubernetes_namespace_test.go | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/kubernetes/resource_kubernetes_namespace_test.go b/kubernetes/resource_kubernetes_namespace_test.go index e0de1c9b6e..3cc171d31e 100644 --- a/kubernetes/resource_kubernetes_namespace_test.go +++ b/kubernetes/resource_kubernetes_namespace_test.go @@ -26,6 +26,22 @@ func TestAccKubernetesNamespace_basic(t *testing.T) { Steps: []resource.TestStep{ { Config: testAccKubernetesNamespaceConfig_basic(nsName), + Check: resource.ComposeAggregateTestCheckFunc( + testAccCheckKubernetesNamespaceExists("kubernetes_namespace.test", &conf), + resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.annotations.%", "2"), + resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.annotations.TestAnnotationOne", "one"), + resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.annotations.TestAnnotationTwo", "two"), + testAccCheckMetaAnnotations(&conf.ObjectMeta, map[string]string{"TestAnnotationOne": "one", "TestAnnotationTwo": "two"}), + resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.labels.%", "0"), + resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.name", nsName), + resource.TestCheckResourceAttrSet("kubernetes_namespace.test", "metadata.0.generation"), + resource.TestCheckResourceAttrSet("kubernetes_namespace.test", "metadata.0.resource_version"), + resource.TestCheckResourceAttrSet("kubernetes_namespace.test", "metadata.0.self_link"), + resource.TestCheckResourceAttrSet("kubernetes_namespace.test", "metadata.0.uid"), + ), + }, + { + Config: testAccKubernetesNamespaceConfig_addLabels(nsName), Check: resource.ComposeAggregateTestCheckFunc( testAccCheckKubernetesNamespaceExists("kubernetes_namespace.test", &conf), resource.TestCheckResourceAttr("kubernetes_namespace.test", "metadata.0.annotations.%", "2"), @@ -260,6 +276,19 @@ func testAccCheckKubernetesNamespaceExists(n string, obj *api.Namespace) resourc func testAccKubernetesNamespaceConfig_basic(nsName string) string { return fmt.Sprintf(` +resource "kubernetes_namespace" "test" { + metadata { + annotations { + TestAnnotationOne = "one" + TestAnnotationTwo = "two" + } + name = "%s" + } +}`, nsName) +} + +func testAccKubernetesNamespaceConfig_addLabels(nsName string) string { + return fmt.Sprintf(` resource "kubernetes_namespace" "test" { metadata { annotations {