| 1 | import x.json2 as json |
| 2 | |
| 3 | fn test_fixed_array() { |
| 4 | mut expected := [3]int{} |
| 5 | expected[0] = 1 |
| 6 | expected[1] = 2 |
| 7 | expected[2] = 3 |
| 8 | assert json.decode[[3]int]('[1, 2, 3]')! == expected |
| 9 | } |
| 10 | |
| 11 | fn test_fixed_array_to_few() { |
| 12 | json.decode[[4]int]('[1, 2, 3]') or { |
| 13 | if err is json.JsonDecodeError { |
| 14 | assert err.line == 1 |
| 15 | assert err.character == 8 |
| 16 | assert err.message == 'Data: Fixed size array expected 4 elements but got 3 elements' |
| 17 | } |
| 18 | |
| 19 | return |
| 20 | } |
| 21 | assert false |
| 22 | } |
| 23 | |
| 24 | fn test_fixed_array_to_many() { |
| 25 | json.decode[[2]int]('[1, 2, 3]') or { |
| 26 | if err is json.JsonDecodeError { |
| 27 | assert err.line == 1 |
| 28 | assert err.character == 8 |
| 29 | assert err.message == 'Data: Fixed size array expected 2 elements but got 3 elements' |
| 30 | } |
| 31 | |
| 32 | return |
| 33 | } |
| 34 | assert false |
| 35 | } |
| 36 | |