-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocutil_test.go
63 lines (59 loc) · 1.1 KB
/
docutil_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package validate_test
import (
"testing"
"github.com/google/go-cmp/cmp"
"github.com/protogodev/validate"
)
func TestParseDoc(t *testing.T) {
tests := []struct {
name string
in []string
want map[string][]validate.Option
}{
{
name: "one",
in: []string{
"// @header1:",
"// key1: value1",
"// key2: value2",
},
want: map[string][]validate.Option{
"header1": {
{K: "key1", V: "value1"},
{K: "key2", V: "value2"},
},
},
},
{
name: "more",
in: []string{
"// @header1:",
"// key1: value1",
"// key2: value2",
"//",
"// @header2:",
"// key3: value3",
"// key4: value4",
},
want: map[string][]validate.Option{
"header1": {
{K: "key1", V: "value1"},
{K: "key2", V: "value2"},
},
"header2": {
{K: "key3", V: "value3"},
{K: "key4", V: "value4"},
},
},
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got := validate.ParseDoc(tt.in)
if !cmp.Equal(got, tt.want) {
diff := cmp.Diff(got, tt.want)
t.Errorf("Want - Got: %s", diff)
}
})
}
}