mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-12 01:14:22 +00:00
Add some kyaml filters for k8s metadata.
This commit is contained in:
@@ -5,6 +5,8 @@ package yaml
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
var input = `apiVersion: v1
|
||||
@@ -16,6 +18,72 @@ data:
|
||||
enableRisky: "false"
|
||||
`
|
||||
|
||||
func TestSetK8sData(t *testing.T) {
|
||||
rn := MustParse(`apiVersion: v1
|
||||
kind: ConfigMap
|
||||
data:
|
||||
altGreeting: "Good Morning!"
|
||||
`)
|
||||
_, err := rn.Pipe(
|
||||
SetK8sData("foo", "bar"),
|
||||
SetK8sData("fruit", "apple"),
|
||||
SetK8sData("veggie", "celery"))
|
||||
assert.NoError(t, err)
|
||||
output := rn.MustString()
|
||||
|
||||
expected := `apiVersion: v1
|
||||
kind: ConfigMap
|
||||
data:
|
||||
altGreeting: "Good Morning!"
|
||||
foo: bar
|
||||
fruit: apple
|
||||
veggie: celery
|
||||
`
|
||||
if output != expected {
|
||||
t.Fatalf("expected \n%s\nbut got \n%s\n", expected, output)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSetK8sDataForbidOverwrite(t *testing.T) {
|
||||
rn := MustParse(`apiVersion: v1
|
||||
kind: ConfigMap
|
||||
data:
|
||||
altGreeting: "Good Morning!"
|
||||
`)
|
||||
_, err := rn.Pipe(
|
||||
SetK8sData("foo", "bar"),
|
||||
SetK8sData("altGreeting", "hey"),
|
||||
SetK8sData("veggie", "celery"))
|
||||
assert.EqualError(
|
||||
t, err, "protecting existing altGreeting='\"Good Morning!\"' "+
|
||||
"against attempt to add new value 'hey'")
|
||||
}
|
||||
|
||||
func TestSetMeta(t *testing.T) {
|
||||
rn := MustParse(`apiVersion: v1
|
||||
kind: ConfigMap
|
||||
data:
|
||||
altGreeting: "Good Morning!"
|
||||
`)
|
||||
_, err := rn.Pipe(SetK8sName("foo"), SetK8sNamespace("bar"))
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error %v", err)
|
||||
}
|
||||
output := rn.MustString()
|
||||
|
||||
expected := `apiVersion: v1
|
||||
kind: ConfigMap
|
||||
data:
|
||||
altGreeting: "Good Morning!"
|
||||
metadata:
|
||||
name: foo
|
||||
namespace: bar
|
||||
`
|
||||
if output != expected {
|
||||
t.Fatalf("expected \n%s\nbut got \n%s\n", expected, output)
|
||||
}
|
||||
}
|
||||
|
||||
func TestSetLabel1(t *testing.T) {
|
||||
rn := MustParse(input)
|
||||
_, err := rn.Pipe(SetLabel("foo", "bar"))
|
||||
|
||||
Reference in New Issue
Block a user