diff options
Diffstat (limited to 'tests/test_util_json.lua')
-rw-r--r-- | tests/test_util_json.lua | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/test_util_json.lua b/tests/test_util_json.lua new file mode 100644 index 00000000..2c1a9ce9 --- /dev/null +++ b/tests/test_util_json.lua @@ -0,0 +1,21 @@ + +function encode(encode, json) + local function test(f, j, e) + if e then + assert_equal(f(j), e); + end + assert_equal(f(j), f(json.decode(f(j)))); + end + test(encode, json.null, "null") + test(encode, {}, "{}") + test(encode, {a=1}); + test(encode, {a={1,2,3}}); + test(encode, {1}, "[1]"); +end + +function decode(decode) + local empty_array = decode("[]"); + assert_equal(type(empty_array), "table"); + assert_equal(#empty_array, 0); + assert_equal(next(empty_array), nil); +end |