From b4038a6cd23ce9ef1976675ad2bcc557e5eb4cb7 Mon Sep 17 00:00:00 2001 From: jingfangliu Date: Fri, 26 Jul 2019 14:02:52 -0700 Subject: [PATCH] add testting for patch transformers --- .../PatchJson6902Transformer_test.go | 46 +++++++++++++++- .../PatchStrategicMergeTransformer_test.go | 54 ++++++++++++++++++- 2 files changed, 98 insertions(+), 2 deletions(-) diff --git a/plugin/builtin/patchjson6902transformer/PatchJson6902Transformer_test.go b/plugin/builtin/patchjson6902transformer/PatchJson6902Transformer_test.go index abdcd1a9c..9a7aa2d42 100644 --- a/plugin/builtin/patchjson6902transformer/PatchJson6902Transformer_test.go +++ b/plugin/builtin/patchjson6902transformer/PatchJson6902Transformer_test.go @@ -250,7 +250,7 @@ spec: `) } -func TestPatchJson6902TransformerWithInline(t *testing.T) { +func TestPatchJson6902TransformerWithInlineJSON(t *testing.T) { tc := plugins_test.NewEnvForTest(t).Set() defer tc.Reset() @@ -290,3 +290,47 @@ spec: dnsPolicy: ClusterFirst `) } + +func TestPatchJson6902TransformerWithInlineYAML(t *testing.T) { + tc := plugins_test.NewEnvForTest(t).Set() + defer tc.Reset() + + tc.BuildGoPlugin( + "builtin", "", "PatchJson6902Transformer") + + th := kusttest_test.NewKustTestPluginHarness(t, "/app") + + rm := th.LoadAndRunTransformer(` +apiVersion: builtin +kind: PatchJson6902Transformer +metadata: + name: notImportantHere +target: + group: apps + version: v1 + kind: Deployment + name: myDeploy +jsonOp: |- + - op: add + path: /spec/template/spec/dnsPolicy + value: ClusterFirst +`, target) + + th.AssertActualEqualsExpected(rm, ` +apiVersion: apps/v1 +kind: Deployment +metadata: + name: myDeploy +spec: + replica: 2 + template: + metadata: + labels: + old-label: old-value + spec: + containers: + - image: nginx + name: nginx + dnsPolicy: ClusterFirst +`) +} diff --git a/plugin/builtin/patchstrategicmergetransformer/PatchStrategicMergeTransformer_test.go b/plugin/builtin/patchstrategicmergetransformer/PatchStrategicMergeTransformer_test.go index 7d67996b9..3cfd80eaa 100644 --- a/plugin/builtin/patchstrategicmergetransformer/PatchStrategicMergeTransformer_test.go +++ b/plugin/builtin/patchstrategicmergetransformer/PatchStrategicMergeTransformer_test.go @@ -181,7 +181,7 @@ spec: `) } -func TestPatchStrategicMergeTransformerWithInline(t *testing.T) { +func TestPatchStrategicMergeTransformerWithInlineJSON(t *testing.T) { tc := plugins_test.NewEnvForTest(t).Set() defer tc.Reset() @@ -216,6 +216,58 @@ spec: `) } +func TestPatchStrategicMergeTransformerWithInlineYAML(t *testing.T) { + tc := plugins_test.NewEnvForTest(t).Set() + defer tc.Reset() + + tc.BuildGoPlugin( + "builtin", "", "PatchStrategicMergeTransformer") + + th := kusttest_test.NewKustTestPluginHarness(t, "/app") + + rm := th.LoadAndRunTransformer(` +apiVersion: builtin +kind: PatchStrategicMergeTransformer +metadata: + name: notImportantHere +patches: |- + apiVersion: apps/v1 + metadata: + name: myDeploy + kind: Deployment + spec: + replica: 3 + --- + apiVersion: apps/v1 + metadata: + name: myDeploy + kind: Deployment + spec: + template: + spec: + containers: + - name: nginx + image: nginx:latest +`, target) + + th.AssertActualEqualsExpected(rm, ` +apiVersion: apps/v1 +kind: Deployment +metadata: + name: myDeploy +spec: + replica: 3 + template: + metadata: + labels: + old-label: old-value + spec: + containers: + - image: nginx:latest + name: nginx +`) +} + func TestPatchStrategicMergeTransformerMultiplePatches(t *testing.T) { tc := plugins_test.NewEnvForTest(t).Set() defer tc.Reset()