v2 / vlib / x / json2 / tests / encode_fixed_array_test.v
19 lines · 15 sloc · 396 bytes · cccc2ae702ab017e3cebc9682353188beec5f238
Raw
1import x.json2
2
3union NumberOrBytes {
4 number u64
5 bytes [8]u8 @[skip]
6}
7
8fn test_encode_fixed_array() {
9 assert json2.encode([u8(1), 2, 3]!) == '[1,2,3]'
10}
11
12fn test_encode_union_with_skipped_fixed_array_field() {
13 decoded := json2.decode[NumberOrBytes]('{"number":256}')!
14
15 unsafe {
16 assert decoded.bytes == [u8(0), 1, 0, 0, 0, 0, 0, 0]!
17 }
18 assert json2.encode(decoded) == '{"number":256}'
19}
20