...
1
16
17 package fieldpath
18
19 import (
20 "testing"
21
22 "sigs.k8s.io/structured-merge-diff/v4/value"
23 )
24
25 func TestPathElementValueMap(t *testing.T) {
26 m := PathElementValueMap{}
27
28 if _, ok := m.Get(PathElement{FieldName: strptr("onion")}); ok {
29 t.Fatal("Unexpected path-element found in empty map")
30 }
31
32 m.Insert(PathElement{FieldName: strptr("carrot")}, value.NewValueInterface("knife"))
33 m.Insert(PathElement{FieldName: strptr("chive")}, value.NewValueInterface(2))
34
35 if _, ok := m.Get(PathElement{FieldName: strptr("onion")}); ok {
36 t.Fatal("Unexpected path-element in map")
37 }
38
39 if val, ok := m.Get(PathElement{FieldName: strptr("carrot")}); !ok {
40 t.Fatal("Missing path-element in map")
41 } else if !value.Equals(val, value.NewValueInterface("knife")) {
42 t.Fatalf("Unexpected value found: %#v", val)
43 }
44
45 if val, ok := m.Get(PathElement{FieldName: strptr("chive")}); !ok {
46 t.Fatal("Missing path-element in map")
47 } else if !value.Equals(val, value.NewValueInterface(2)) {
48 t.Fatalf("Unexpected value found: %#v", val)
49 }
50
51 m.Insert(PathElement{FieldName: strptr("carrot")}, value.NewValueInterface("fork"))
52 if val, ok := m.Get(PathElement{FieldName: strptr("carrot")}); !ok {
53 t.Fatal("Missing path-element in map")
54 } else if !value.Equals(val, value.NewValueInterface("fork")) {
55 t.Fatalf("Unexpected value found: %#v", val)
56 }
57 }
58
View as plain text