remove various tests from encoder and parser

This commit is contained in:
alisdair sullivan 2013-02-05 21:07:38 -08:00
parent dfbda5a9d3
commit 50133ffefd
2 changed files with 2 additions and 381 deletions

View file

@ -169,176 +169,4 @@ clean_string(Bin, Opts) -> jsx_utils:clean_string(Bin, Opts).
-include_lib("eunit/include/eunit.hrl").
incomplete_test_() ->
F = parser(jsx, [], []),
[
{"incomplete test", ?_assertEqual(
begin
{incomplete, A} = F(start_object),
{incomplete, B} = A(key),
{incomplete, C} = B(true),
{incomplete, D} = C(end_object),
D(end_json)
end,
[start_object, {key, <<"key">>}, {literal, true}, end_object, end_json]
)}
].
encode(Term) -> encode(Term, []).
encode(Term, Opts) ->
try (parser(jsx, [], Opts))(Term)
catch error:badarg -> {error, badarg}
end.
encode_test_() ->
[
{"naked string", ?_assertEqual(
encode([{string, <<"a string\n">>}, end_json]), [{string, <<"a string\n">>}, end_json]
)},
{"naked integer - simple rep", ?_assertEqual(
encode([123, end_json]), [{integer, 123}, end_json]
)},
{"naked integer - alt rep", ?_assertEqual(
encode([{number, 123}, end_json]), [{integer, 123}, end_json]
)},
{"naked integer - full rep", ?_assertEqual(
encode([{integer, 123}, end_json]), [{integer, 123}, end_json]
)},
{"naked float - simple rep", ?_assertEqual(
encode([1.23, end_json]), [{float, 1.23}, end_json]
)},
{"naked float - alt rep", ?_assertEqual(
encode([{number, 1.23}, end_json]), [{float, 1.23}, end_json]
)},
{"naked float - full rep", ?_assertEqual(
encode([{float, 1.23}, end_json]), [{float, 1.23}, end_json]
)},
{"naked literal - simple rep", ?_assertEqual(
encode([null, end_json]), [{literal, null}, end_json]
)},
{"naked literal - full rep", ?_assertEqual(
encode([{literal, null}, end_json]), [{literal, null}, end_json]
)},
{"empty object", ?_assertEqual(
encode([start_object, end_object, end_json]), [start_object, end_object, end_json]
)},
{"empty list", ?_assertEqual(
encode([start_array, end_array, end_json]), [start_array, end_array, end_json]
)},
{"simple list", ?_assertEqual(
encode([
start_array,
{integer, 1},
{integer, 2},
{integer, 3},
{literal, true},
{literal, false},
end_array,
end_json
]),
[
start_array,
{integer, 1},
{integer, 2},
{integer, 3},
{literal, true},
{literal, false},
end_array,
end_json
]
)
},
{"simple object", ?_assertEqual(
encode([
start_object,
{key, <<"a">>},
{literal, true},
{key, <<"b">>},
{literal, false},
end_object,
end_json
]),
[
start_object,
{key, <<"a">>},
{literal, true},
{key, <<"b">>},
{literal, false},
end_object,
end_json
]
)
},
{"complex term", ?_assertEqual(
encode([
start_object,
{key, <<"a">>},
{literal, true},
{key, <<"b">>},
{literal, false},
{key, <<"c">>},
start_array,
{integer, 1},
{integer, 2},
{integer, 3},
end_array,
{key, <<"d">>},
start_object,
{key, <<"key">>},
{string, <<"value">>},
end_object,
end_object,
end_json
]),
[
start_object,
{key, <<"a">>},
{literal, true},
{key, <<"b">>},
{literal, false},
{key, <<"c">>},
start_array,
{integer, 1},
{integer, 2},
{integer, 3},
end_array,
{key, <<"d">>},
start_object,
{key, <<"key">>},
{string, <<"value">>},
end_object,
end_object,
end_json
]
)
},
{"atom keys", ?_assertEqual(
encode([start_object, {key, key}, {string, <<"value">>}, end_object, end_json]),
[start_object, {key, <<"key">>}, {string, <<"value">>}, end_object, end_json]
)}
].
encode_failures_test_() ->
[
{"unwrapped values", ?_assertEqual(
{error, badarg},
encode([{string, <<"a string\n">>}, {string, <<"a string\n">>}, end_json])
)},
{"unbalanced array", ?_assertEqual(
{error, badarg},
encode([start_array, end_array, end_array, end_json])
)},
{"premature finish", ?_assertEqual(
{error, badarg},
encode([start_object, {key, <<"key">>, start_array, end_json}])
)},
{"really premature finish", ?_assertEqual(
{error, badarg},
encode([end_json])
)}
].
-endif.