@@ -37,6 +37,12 @@ func podData(name string) map[string]string {
3737 }
3838}
3939
40+ func podDataNoStatus(name string) map[string]string {
41+ return map[string]string{
42+ fmt.Sprintf("test-inventory-namespace_%s__Pod", name): "",
43+ }
44+ }
45+
4046func TestGetClusterInventoryInfo(t *testing.T) {
4147 tests := map[string]struct {
4248 statusPolicy StatusPolicy
@@ -125,18 +131,20 @@ func TestMerge(t *testing.T) {
125131 isError bool
126132 }{
127133 "Nil local inventory object is error": {
128- localInv: nil,
129- localObjs: object.ObjMetadataSet{},
130- clusterObjs: object.ObjMetadataSet{},
131- pruneObjs: object.ObjMetadataSet{},
132- isError: true,
134+ localInv: nil,
135+ localObjs: object.ObjMetadataSet{},
136+ clusterObjs: object.ObjMetadataSet{},
137+ pruneObjs: object.ObjMetadataSet{},
138+ isError: true,
139+ statusPolicy: StatusPolicyAll,
133140 },
134141 "Cluster and local inventories empty: no prune objects; no change": {
135- localInv: copyInventory(),
136- localObjs: object.ObjMetadataSet{},
137- clusterObjs: object.ObjMetadataSet{},
138- pruneObjs: object.ObjMetadataSet{},
139- isError: false,
142+ localInv: copyInventory(),
143+ localObjs: object.ObjMetadataSet{},
144+ clusterObjs: object.ObjMetadataSet{},
145+ pruneObjs: object.ObjMetadataSet{},
146+ isError: false,
147+ statusPolicy: StatusPolicyAll,
140148 },
141149 "Cluster and local inventories same: no prune objects; no change": {
142150 localInv: copyInventory(),
@@ -146,8 +154,9 @@ func TestMerge(t *testing.T) {
146154 clusterObjs: object.ObjMetadataSet{
147155 ignoreErrInfoToObjMeta(pod1Info),
148156 },
149- pruneObjs: object.ObjMetadataSet{},
150- isError: false,
157+ pruneObjs: object.ObjMetadataSet{},
158+ isError: false,
159+ statusPolicy: StatusPolicyAll,
151160 },
152161 "Cluster two obj, local one: prune obj": {
153162 localInv: copyInventory(),
@@ -161,7 +170,8 @@ func TestMerge(t *testing.T) {
161170 pruneObjs: object.ObjMetadataSet{
162171 ignoreErrInfoToObjMeta(pod3Info),
163172 },
164- isError: false,
173+ statusPolicy: StatusPolicyAll,
174+ isError: false,
165175 },
166176 "Cluster multiple objs, local multiple different objs: prune objs": {
167177 localInv: copyInventory(),
@@ -176,7 +186,8 @@ func TestMerge(t *testing.T) {
176186 ignoreErrInfoToObjMeta(pod1Info),
177187 ignoreErrInfoToObjMeta(pod3Info),
178188 },
179- isError: false,
189+ statusPolicy: StatusPolicyAll,
190+ isError: false,
180191 },
181192 }
182193
@@ -309,8 +320,9 @@ func TestReplace(t *testing.T) {
309320 clusterObjs: object.ObjMetadataSet{
310321 ignoreErrInfoToObjMeta(pod1Info),
311322 },
312- objStatus: []actuation.ObjectStatus{podStatus(pod1Info)},
313- data: podData("pod-1"),
323+ objStatus: []actuation.ObjectStatus{podStatus(pod1Info)},
324+ data: podData("pod-1"),
325+ statusPolicy: StatusPolicyAll,
314326 },
315327 "Cluster two obj, local one": {
316328 localObjs: object.ObjMetadataSet{
@@ -320,8 +332,9 @@ func TestReplace(t *testing.T) {
320332 ignoreErrInfoToObjMeta(pod1Info),
321333 ignoreErrInfoToObjMeta(pod3Info),
322334 },
323- objStatus: []actuation.ObjectStatus{podStatus(pod1Info), podStatus(pod3Info)},
324- data: podData("pod-1"),
335+ objStatus: []actuation.ObjectStatus{podStatus(pod1Info), podStatus(pod3Info)},
336+ data: podData("pod-1"),
337+ statusPolicy: StatusPolicyAll,
325338 },
326339 "Cluster multiple objs, local multiple different objs": {
327340 localObjs: object.ObjMetadataSet{
@@ -331,8 +344,21 @@ func TestReplace(t *testing.T) {
331344 ignoreErrInfoToObjMeta(pod1Info),
332345 ignoreErrInfoToObjMeta(pod2Info),
333346 ignoreErrInfoToObjMeta(pod3Info)},
334- objStatus: []actuation.ObjectStatus{podStatus(pod2Info), podStatus(pod1Info), podStatus(pod3Info)},
335- data: podData("pod-2"),
347+ objStatus: []actuation.ObjectStatus{podStatus(pod2Info), podStatus(pod1Info), podStatus(pod3Info)},
348+ data: podData("pod-2"),
349+ statusPolicy: StatusPolicyAll,
350+ },
351+ "Cluster multiple objs, local multiple different objs with StatusPolicyNone": {
352+ localObjs: object.ObjMetadataSet{
353+ ignoreErrInfoToObjMeta(pod2Info),
354+ },
355+ clusterObjs: object.ObjMetadataSet{
356+ ignoreErrInfoToObjMeta(pod1Info),
357+ ignoreErrInfoToObjMeta(pod2Info),
358+ ignoreErrInfoToObjMeta(pod3Info)},
359+ objStatus: []actuation.ObjectStatus{podStatus(pod2Info), podStatus(pod1Info), podStatus(pod3Info)},
360+ data: podDataNoStatus("pod-2"),
361+ statusPolicy: StatusPolicyNone,
336362 },
337363 }
338364
0 commit comments