kyaml: initial support for yaml and resource manipulation

This commit is contained in:
Phillip Wittrock
2019-11-04 11:27:47 -08:00
parent 588297f1f9
commit efd7c8e3f7
92 changed files with 13733 additions and 0 deletions

View File

@@ -0,0 +1,186 @@
// Copyright 2019 The Kubernetes Authors.
// SPDX-License-Identifier: Apache-2.0
package merge2_test
var mapTestCases = []testCase{
{`merge Map -- update field in dest`,
`
kind: Deployment
spec:
foo: bar1
`,
`
kind: Deployment
spec:
foo: bar0
baz: buz
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
{`merge Map -- add field to dest`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
spec:
foo: bar0
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
{`merge Map -- add list, empty in dest`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
spec: {}
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
{`merge Map -- add list, missing from dest`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
{`merge Map -- add Map first`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
spec:
foo: bar1
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
{`merge Map -- add Map second`,
`
kind: Deployment
spec:
baz: buz
foo: bar1
`,
`
kind: Deployment
spec:
foo: bar1
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
//
// Test Case
//
{`keep map -- map missing from src`,
`
kind: Deployment
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
},
//
// Test Case
//
{`keep map -- empty list in src`,
`
kind: Deployment
items: {}
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
items: {}
`,
},
//
// Test Case
//
{`remove Map -- null in src`,
`
kind: Deployment
spec: null
`,
`
kind: Deployment
spec:
foo: bar1
baz: buz
`,
`
kind: Deployment
`,
},
}