v2 / vlib / json / tests / json_encode_struct_with_option_field_test.v
29 lines · 24 sloc · 497 bytes · 8ebbacecd60366ac4ba68aa35f9b0e7a0e56ff61
Raw
1import json
2import x.json2
3
4struct Foo {
5 name string
6 num ?int
7}
8
9fn test_json_encode_struct_with_option_field() {
10 f1 := Foo{
11 name: 'hello'
12 }
13 ret1 := json.encode(f1)
14 println(ret1)
15 assert ret1 == '{"name":"hello"}'
16
17 ret2 := json2.encode(f1)
18 println(ret2)
19 assert ret2 == '{"name":"hello"}'
20
21 f2 := Foo{'hello', 22}
22 ret3 := json.encode(f2)
23 println(ret3)
24 assert ret3 == '{"name":"hello","num":22}'
25
26 ret4 := json2.encode(f2)
27 println(ret4)
28 assert ret4 == '{"name":"hello","num":22}'
29}
30