| 221 | } |
| 222 | |
| 223 | func TestShowManagedFields(t *testing.T) { |
| 224 | diff, err := NewDiffer("LIVE", "MERGED") |
| 225 | if err != nil { |
| 226 | t.Fatal(err) |
| 227 | } |
| 228 | defer diff.TearDown() |
| 229 | |
| 230 | testCases := []struct { |
| 231 | name string |
| 232 | showManagedFields bool |
| 233 | expectedFromContent string |
| 234 | expectedToContent string |
| 235 | }{ |
| 236 | { |
| 237 | name: "without managed fields", |
| 238 | showManagedFields: false, |
| 239 | expectedFromContent: `live: true |
| 240 | metadata: |
| 241 | name: foo |
| 242 | `, |
| 243 | expectedToContent: `merged: true |
| 244 | metadata: |
| 245 | name: foo |
| 246 | `, |
| 247 | }, |
| 248 | { |
| 249 | name: "with managed fields", |
| 250 | showManagedFields: true, |
| 251 | expectedFromContent: `live: true |
| 252 | metadata: |
| 253 | managedFields: mf-data |
| 254 | name: foo |
| 255 | `, |
| 256 | expectedToContent: `merged: true |
| 257 | metadata: |
| 258 | managedFields: mf-data |
| 259 | name: foo |
| 260 | `, |
| 261 | }, |
| 262 | } |
| 263 | |
| 264 | for i, tc := range testCases { |
| 265 | t.Run(tc.name, func(t *testing.T) { |
| 266 | obj := FakeObject{ |
| 267 | name: fmt.Sprintf("TestCase%d", i), |
| 268 | live: map[string]interface{}{ |
| 269 | "live": true, |
| 270 | "metadata": map[string]interface{}{ |
| 271 | "managedFields": "mf-data", |
| 272 | "name": "foo", |
| 273 | }, |
| 274 | }, |
| 275 | merged: map[string]interface{}{ |
| 276 | "merged": true, |
| 277 | "metadata": map[string]interface{}{ |
| 278 | "managedFields": "mf-data", |
| 279 | "name": "foo", |
| 280 | }, |