MCPcopy Create free account
hub / github.com/aws-cloudformation/rain / TestMergeNodes

Function TestMergeNodes

internal/node/node_test.go:211–243  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

209}
210
211func TestMergeNodes(t *testing.T) {
212 original := &yaml.Node{Kind: yaml.MappingNode, Content: make([]*yaml.Node, 0)}
213 override := &yaml.Node{Kind: yaml.MappingNode, Content: make([]*yaml.Node, 0)}
214 expected := &yaml.Node{Kind: yaml.MappingNode, Content: make([]*yaml.Node, 0)}
215
216 original.Content = append(original.Content, node.MakeScalar("A"))
217 original.Content = append(original.Content, node.MakeScalar("foo"))
218 original.Content = append(original.Content, node.MakeScalar("B"))
219 original.Content = append(original.Content, node.MakeSequence([]string{"1", "2"}))
220
221 override.Content = append(override.Content, node.MakeScalar("A"))
222 override.Content = append(override.Content, node.MakeScalar("bar"))
223 override.Content = append(override.Content, node.MakeScalar("B"))
224 override.Content = append(override.Content, node.MakeSequence([]string{"3", "4"}))
225
226 expected.Content = append(expected.Content, node.MakeScalar("A"))
227 expected.Content = append(expected.Content, node.MakeScalar("bar"))
228 expected.Content = append(expected.Content, node.MakeScalar("B"))
229 expected.Content = append(expected.Content,
230 node.MakeSequence([]string{"1", "2", "3", "4"}))
231
232 merged := node.MergeNodes(original, override)
233
234 diff := node.Diff(merged, expected)
235
236 if len(diff) > 0 {
237 for _, d := range diff {
238 fmt.Println(d)
239 }
240 t.Fatalf("nodes are not the same")
241 }
242
243}
244
245func TestMergeNodes2(t *testing.T) {
246 original := `

Callers

nothing calls this directly

Calls 4

MakeScalarFunction · 0.92
MakeSequenceFunction · 0.92
MergeNodesFunction · 0.92
DiffFunction · 0.92

Tested by

no test coverage detected