...
1
2
3
4 package yaml
5
6 import (
7 "testing"
8 )
9
10 func TestMapNodeIsNilOrEmpty(t *testing.T) {
11 var mn *MapNode
12
13 if !mn.IsNilOrEmpty() {
14 t.Fatalf("nil should be empty")
15 }
16
17 mn = &MapNode{Key: MakeNullNode()}
18 if !mn.IsNilOrEmpty() {
19 t.Fatalf("missing value should be empty")
20 }
21
22 mn.Value = NewRNode(nil)
23 if !mn.IsNilOrEmpty() {
24 t.Fatalf("missing value YNode should be empty")
25 }
26
27 mn.Value = MakeNullNode()
28 if !mn.IsNilOrEmpty() {
29 t.Fatalf("value tagged null should be empty")
30 }
31
32 mn.Value = NewMapRNode(nil)
33 if !mn.IsNilOrEmpty() {
34 t.Fatalf("empty map should be empty")
35 }
36
37 mn.Value = NewMapRNode(&map[string]string{"foo": "bar"})
38 if mn.IsNilOrEmpty() {
39 t.Fatalf("non-empty map should not be empty")
40 }
41
42 mn.Value = NewListRNode()
43 if !mn.IsNilOrEmpty() {
44 t.Fatalf("empty list should be empty")
45 }
46
47 mn.Value = NewListRNode("foo")
48 if mn.IsNilOrEmpty() {
49 t.Fatalf("non-empty list should not be empty")
50 }
51 }
52
View as plain text