v
Зеркало из https://github.com/vlang/v
1module decoder2
2
3fn test_nodes() {
4mut nodes := []Node{}
5
6mut decoder := Decoder{
7json: '{"val": "2"}'
8}
9
10decoder.fulfill_nodes(mut nodes)
11
12assert nodes.len == 1
13assert nodes[0].key_pos == 2
14assert nodes[0].key_len == 3
15assert nodes[0].children == none
16nodes = []
17
18decoder = Decoder{
19json: '{"val": 0, "val1": 1}'
20}
21decoder.fulfill_nodes(mut nodes)
22
23assert nodes.len == 2
24assert nodes[0].key_pos == 2
25assert nodes[0].key_len == 3
26
27assert nodes[1].key_pos == 12
28assert nodes[1].key_len == 4
29
30nodes = []
31
32decoder = Decoder{
33json: '{"val": {"val": 2}}'
34}
35decoder.fulfill_nodes(mut nodes)
36
37assert nodes.len == 1
38assert nodes[0].children != none
39assert nodes[0].children?.len == 1
40assert nodes[0].children?[0].key_pos == 10
41assert nodes[0].children?[0].children == none
42}
43