MCPcopy Create free account
hub / github.com/CrunchyData/postgres-operator / TestParameterSetEqual

Function TestParameterSetEqual

internal/postgres/parameters_test.go:102–140  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

100}
101
102func TestParameterSetEqual(t *testing.T) {
103 var Nil *ParameterSet
104 ps1 := NewParameterSet()
105 ps2 := NewParameterSet()
106
107 // nil equals nil, and empty does not equal nil
108 assert.Assert(t, Nil.Equal(nil))
109 assert.Assert(t, !Nil.Equal(ps1))
110 assert.Assert(t, !ps1.Equal(nil))
111
112 // empty equals empty
113 assert.Assert(t, ps1.Equal(ps2))
114 assert.Assert(t, ps2.Equal(ps1))
115
116 // different keys are not equal
117 ps1.Add("a", "b")
118 assert.Assert(t, !ps1.Equal(nil))
119 assert.Assert(t, !Nil.Equal(ps1))
120 assert.Assert(t, !ps1.Equal(ps2))
121 assert.Assert(t, !ps2.Equal(ps1))
122
123 // different values are not equal
124 ps2.Add("a", "c")
125 assert.Assert(t, !ps1.Equal(ps2))
126 assert.Assert(t, !ps2.Equal(ps1))
127
128 // normalized keys+values are equal
129 ps1.Add("A", "c")
130 assert.Assert(t, ps1.Equal(ps2))
131 assert.Assert(t, ps2.Equal(ps1))
132
133 // [assert.DeepEqual] can only compare exported fields.
134 // When present, the `(T) Equal(T) bool` method is used instead.
135 //
136 // https://pkg.go.dev/github.com/google/go-cmp/cmp#Equal
137 t.Run("DeepEqual", func(t *testing.T) {
138 assert.DeepEqual(t, NewParameterSet(), NewParameterSet())
139 })
140}

Callers

nothing calls this directly

Calls 3

EqualMethod · 0.95
AddMethod · 0.95
NewParameterSetFunction · 0.85

Tested by

no test coverage detected