unescape tests for decoder
This commit is contained in:
parent
fd9856341f
commit
82b7044d42
1 changed files with 53 additions and 0 deletions
|
@ -1566,6 +1566,59 @@ bad_utf8_test_() ->
|
||||||
].
|
].
|
||||||
|
|
||||||
|
|
||||||
|
unescape(Bin, Config) ->
|
||||||
|
[{string, String}, end_json] = decode(<<34, Bin/binary, 34>>, Config),
|
||||||
|
String.
|
||||||
|
|
||||||
|
unescape_test_() ->
|
||||||
|
[
|
||||||
|
{"unescape backspace", ?_assertEqual(
|
||||||
|
<<"\b">>,
|
||||||
|
unescape(<<"\\b"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape tab", ?_assertEqual(
|
||||||
|
<<"\t">>,
|
||||||
|
unescape(<<"\\t"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape newline", ?_assertEqual(
|
||||||
|
<<"\n">>,
|
||||||
|
unescape(<<"\\n"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape formfeed", ?_assertEqual(
|
||||||
|
<<"\f">>,
|
||||||
|
unescape(<<"\\f"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape carriage return", ?_assertEqual(
|
||||||
|
<<"\r">>,
|
||||||
|
unescape(<<"\\r"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape quote", ?_assertEqual(
|
||||||
|
<<"\"">>,
|
||||||
|
unescape(<<"\\\""/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape single quote", ?_assertEqual(
|
||||||
|
<<"'">>,
|
||||||
|
unescape(<<"\\'"/utf8>>, [single_quoted_strings])
|
||||||
|
)},
|
||||||
|
{"unescape solidus", ?_assertEqual(
|
||||||
|
<<"/">>,
|
||||||
|
unescape(<<"\\/"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape reverse solidus", ?_assertEqual(
|
||||||
|
<<"\\">>,
|
||||||
|
unescape(<<"\\\\"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape control", ?_assertEqual(
|
||||||
|
<<0>>,
|
||||||
|
unescape(<<"\\u0000"/utf8>>, [])
|
||||||
|
)},
|
||||||
|
{"unescape surrogate pair", ?_assertEqual(
|
||||||
|
<<16#10000/utf8>>,
|
||||||
|
unescape(<<"\\ud800\\udc00"/utf8>>, [])
|
||||||
|
)}
|
||||||
|
].
|
||||||
|
|
||||||
|
|
||||||
maybe_escape(Bin, Config) ->
|
maybe_escape(Bin, Config) ->
|
||||||
[{string, String}, end_json] = decode(Bin, Config),
|
[{string, String}, end_json] = decode(Bin, Config),
|
||||||
String.
|
String.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue