Apply feedback
Kubernetes-commit: 13f809478f9322341a04715cda1b3912a9e470d5
This commit is contained in:
parent
dfdf159360
commit
b5d1135b94
|
|
@ -86,7 +86,8 @@ func equalIgnoringValueAtPath(a, b any, path []string) bool {
|
|||
aMap, aOk := a.(map[string]any)
|
||||
bMap, bOk := b.(map[string]any)
|
||||
if !aOk || !bOk {
|
||||
return !avoidTimestampEqualities.DeepEqual(a, b)
|
||||
// Can't traverse into non-maps, ignore
|
||||
return true
|
||||
}
|
||||
if len(aMap) != len(bMap) {
|
||||
return false
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright 20214The Kubernetes Authors.
|
||||
Copyright 2024 The Kubernetes Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
|
@ -91,7 +91,7 @@ func TestEqualIgnoringFieldValueAtPath(t *testing.T) {
|
|||
want: false,
|
||||
},
|
||||
{
|
||||
name: "extra spec fields in object a",
|
||||
name: "extra spec field",
|
||||
a: map[string]any{
|
||||
"metadata": map[string]any{
|
||||
"labels": map[string]any{"env": "dev"},
|
||||
|
|
@ -114,7 +114,7 @@ func TestEqualIgnoringFieldValueAtPath(t *testing.T) {
|
|||
want: false,
|
||||
},
|
||||
{
|
||||
name: "different spec field in object b",
|
||||
name: "different spec field",
|
||||
a: map[string]any{
|
||||
"metadata": map[string]any{
|
||||
"labels": map[string]any{"env": "dev"},
|
||||
|
|
@ -158,6 +158,26 @@ func TestEqualIgnoringFieldValueAtPath(t *testing.T) {
|
|||
},
|
||||
want: true,
|
||||
},
|
||||
{
|
||||
name: "wrong type for metadata result in differences being ignored",
|
||||
a: map[string]any{
|
||||
"metadata": []any{
|
||||
"something",
|
||||
},
|
||||
"spec": map[string]any{
|
||||
"field": "value",
|
||||
},
|
||||
},
|
||||
b: map[string]any{
|
||||
"metadata": []any{
|
||||
"something else",
|
||||
},
|
||||
"spec": map[string]any{
|
||||
"field": "value",
|
||||
},
|
||||
},
|
||||
want: true,
|
||||
},
|
||||
}
|
||||
|
||||
path := []string{"metadata", "managedFields"}
|
||||
|
|
@ -168,6 +188,11 @@ func TestEqualIgnoringFieldValueAtPath(t *testing.T) {
|
|||
if actual != c.want {
|
||||
t.Error("Expected equality check to return ", c.want, ", but got ", actual)
|
||||
}
|
||||
// Check that equality is commutative
|
||||
actual = equalIgnoringValueAtPath(c.b, c.a, path)
|
||||
if actual != c.want {
|
||||
t.Error("Expected equality check to return ", c.want, ", but got ", actual)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue