summaryrefslogtreecommitdiff
path: root/test/json/json_parser_test.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/json/json_parser_test.rb')
-rw-r--r--test/json/json_parser_test.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/test/json/json_parser_test.rb b/test/json/json_parser_test.rb
index c5ce02320f..bca8ff287c 100644
--- a/test/json/json_parser_test.rb
+++ b/test/json/json_parser_test.rb
@@ -302,6 +302,14 @@ class JSONParserTest < Test::Unit::TestCase
end
end
+ def test_invalid_unicode_escape
+ assert_raise(JSON::ParserError) { parse('"\u"') }
+ assert_raise(JSON::ParserError) { parse('"\ua"') }
+ assert_raise(JSON::ParserError) { parse('"\uaa"') }
+ assert_raise(JSON::ParserError) { parse('"\uaaa"') }
+ assert_equal "\uaaaa", parse('"\uaaaa"')
+ end
+
def test_parse_big_integers
json1 = JSON(orig = (1 << 31) - 1)
assert_equal orig, parse(json1)