add tests for *List kinds and empty lists

This commit is contained in:
Andrew Lavery
2019-02-12 12:37:36 -08:00
parent fdba7df3c1
commit 3118ccfd05
2 changed files with 41 additions and 1 deletions

View File

@@ -42,6 +42,15 @@ func TestSliceFromBytes(t *testing.T) {
testConfigMap.Map(),
},
})
testConfigMapList := factory.FromMap(
map[string]interface{}{
"apiVersion": "v1",
"kind": "ConfigMapList",
"items": []interface{}{
testConfigMap.Map(),
testConfigMap.Map(),
},
})
tests := []struct {
name string
@@ -151,6 +160,24 @@ items:
expectedOut: []ifc.Kunstructured{testList},
expectedErr: false,
},
{
name: "ConfigMapList",
input: []byte(`
apiVersion: v1
kind: ConfigMapList
items:
- apiVersion: v1
kind: ConfigMap
metadata:
name: winnie
- apiVersion: v1
kind: ConfigMap
metadata:
name: winnie
`),
expectedOut: []ifc.Kunstructured{testConfigMapList},
expectedErr: false,
},
}
for _, test := range tests {

View File

@@ -68,7 +68,7 @@ items:
patchList2 := patch.StrategicMerge("patch5.yaml")
patch5 := `
apiVersion: v1
kind: List
kind: DeploymentList
items:
- apiVersion: apps/v1
kind: Deployment
@@ -87,6 +87,12 @@ items:
name: deployment-b
spec:
<<: *hostAliases
`
patchList3 := patch.StrategicMerge("patch6.yaml")
patch6 := `
apiVersion: v1
kind: List
items:
`
testDeploymentSpec := map[string]interface{}{
"template": map[string]interface{}{
@@ -126,6 +132,7 @@ items:
l.AddFile("/"+string(patchBad), []byte(patch3))
l.AddFile("/"+string(patchList), []byte(patch4))
l.AddFile("/"+string(patchList2), []byte(patch5))
l.AddFile("/"+string(patchList3), []byte(patch6))
tests := []struct {
name string
@@ -163,6 +170,12 @@ items:
expectedOut: []*Resource{testDeploymentA, testDeploymentB},
expectedErr: false,
},
{
name: "listWithNoEntries",
input: []patch.StrategicMerge{patchList3},
expectedOut: []*Resource{},
expectedErr: false,
},
}
for _, test := range tests {
rs, err := factory.SliceFromPatches(l, test.input)