v
Зеркало из https://github.com/vlang/v
1import json
2
3fn test_option_types() {
4assert json.decode[StructTypeOption[string]]('{}')!.val == none
5assert json.decode[StructTypeOption[string]]('{"val": ""}')!.val == ''
6assert json.decode[StructTypeOption[string]]('{"val": "0"}')!.val == '0'
7assert json.decode[StructTypeOption[string]]('{"val": "1"}')!.val == '1'
8assert json.decode[StructTypeOption[string]]('{"val": "2"}')!.val == '2'
9assert json.decode[StructTypeOption[string]]('{"val": 0}')!.val == '0'
10assert json.decode[StructTypeOption[string]]('{"val": 1}')!.val == '1'
11assert json.decode[StructTypeOption[string]]('{"val": 2}')!.val == '2'
12assert json.decode[StructTypeOption[string]]('{"val": "true"}')!.val == 'true'
13assert json.decode[StructTypeOption[string]]('{"val": "false"}')!.val == 'false'
14assert json.decode[StructTypeOption[string]]('{"val": true}')!.val == 'true'
15assert json.decode[StructTypeOption[string]]('{"val": false}')!.val == 'false'
16
17assert json.decode[StructTypeOption[bool]]('{}')!.val == none
18assert json.decode[StructTypeOption[bool]]('{"val": ""}')!.val == false
19assert json.decode[StructTypeOption[bool]]('{"val": "0"}')!.val == false
20assert json.decode[StructTypeOption[bool]]('{"val": "1"}')!.val == true
21assert json.decode[StructTypeOption[bool]]('{"val": "2"}')!.val == true
22assert json.decode[StructTypeOption[bool]]('{"val": 0}')!.val == false
23assert json.decode[StructTypeOption[bool]]('{"val": 1}')!.val == true
24assert json.decode[StructTypeOption[bool]]('{"val": 2}')!.val == true
25assert json.decode[StructTypeOption[bool]]('{"val": "true"}')!.val == true
26assert json.decode[StructTypeOption[bool]]('{"val": "false"}')!.val == false
27assert json.decode[StructTypeOption[bool]]('{"val": true}')!.val == true
28assert json.decode[StructTypeOption[bool]]('{"val": false}')!.val == false
29
30assert json.decode[StructTypeOption[int]]('{}')!.val == none
31assert json.decode[StructTypeOption[int]]('{"val": ""}')!.val == 0
32assert json.decode[StructTypeOption[int]]('{"val": "0"}')!.val == 0
33assert json.decode[StructTypeOption[int]]('{"val": "1"}')!.val == 1
34assert json.decode[StructTypeOption[int]]('{"val": "2"}')!.val == 2
35assert json.decode[StructTypeOption[int]]('{"val": 0}')!.val == 0
36assert json.decode[StructTypeOption[int]]('{"val": 1}')!.val == 1
37assert json.decode[StructTypeOption[int]]('{"val": 2}')!.val == 2
38assert json.decode[StructTypeOption[int]]('{"val": "true"}')!.val == 1
39assert json.decode[StructTypeOption[int]]('{"val": "false"}')!.val == 0
40assert json.decode[StructTypeOption[int]]('{"val": true}')!.val == 1
41assert json.decode[StructTypeOption[int]]('{"val": false}')!.val == 0
42}
43
44fn test_array() {
45// TODO
46}
47
48fn test_option_array() {
49// TODO
50}
51
52fn test_alias() {
53// TODO
54}
55
56fn test_option_alias() {
57// TODO
58}
59
60fn test_sumtypes() {
61// TODO
62}
63
64fn test_option_sumtypes() {
65// TODO
66}
67
68fn test_pointer() {
69// TODO
70}
71
72fn test_caos() {
73// TODO
74}
75
76fn test_caos_array() {
77// TODO
78}
79