summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/json/json_parser_test.rb30
-rw-r--r--test/ruby/test_io_buffer.rb9
2 files changed, 29 insertions, 10 deletions
diff --git a/test/json/json_parser_test.rb b/test/json/json_parser_test.rb
index 292ca1a670..943d932851 100644
--- a/test/json/json_parser_test.rb
+++ b/test/json/json_parser_test.rb
@@ -489,7 +489,7 @@ class JSONParserTest < Test::Unit::TestCase
JSON
assert_equal(
{ "key1" => "value1", "key2" => "value2", "key3" => "value3" },
- parse(json))
+ parse(json, allow_comments: true))
json = <<~JSON
{
"key1":"value1" /* multi line
@@ -498,7 +498,7 @@ class JSONParserTest < Test::Unit::TestCase
* comment */
}
JSON
- assert_raise(ParserError) { parse(json) }
+ assert_raise(ParserError) { parse(json, allow_comments: true) }
json = <<~JSON
{
"key1":"value1" /* multi line
@@ -506,7 +506,7 @@ class JSONParserTest < Test::Unit::TestCase
/* legal nested multi line comment start sequence */
}
JSON
- assert_equal({ "key1" => "value1" }, parse(json))
+ assert_equal({ "key1" => "value1" }, parse(json, allow_comments: true))
json = <<~JSON
{
"key1":"value1" /* multi line
@@ -515,18 +515,28 @@ class JSONParserTest < Test::Unit::TestCase
and again, throw an Error */
}
JSON
- assert_raise(ParserError) { parse(json) }
+ assert_raise(ParserError) { parse(json, allow_comments: true) }
json = <<~JSON
{
"key1":"value1" /*/*/
}
JSON
- assert_equal({ "key1" => "value1" }, parse(json))
- assert_equal({}, parse('{} /**/'))
- assert_raise(ParserError) { parse('{} /* comment not closed') }
- assert_raise(ParserError) { parse('{} /*/') }
- assert_raise(ParserError) { parse('{} /x wrong comment') }
- assert_raise(ParserError) { parse('{} /') }
+ assert_equal({ "key1" => "value1" }, parse(json, allow_comments: true))
+ assert_equal({}, parse('{} /**/', allow_comments: true))
+ assert_raise(ParserError) { parse('{} /* comment not closed', allow_comments: true) }
+ assert_raise(ParserError) { parse('{} /*/', allow_comments: true) }
+ assert_raise(ParserError) { parse('{} /x wrong comment', allow_comments: true) }
+ assert_raise(ParserError) { parse('{} /', allow_comments: true) }
+ end
+
+ def test_parse_comments_deprecation
+ assert_equal({}, parse('/**/ {}', allow_comments: true))
+ assert_raise(ParserError) { parse('/**/ {}', allow_comments: false) }
+ if RUBY_ENGINE == 'ruby'
+ assert_deprecated_warning(/Encountered comment in JSON/) do
+ parse('/**/ {}')
+ end
+ end
end
def test_nesting
diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb
index b6372f25b8..327a3ece9c 100644
--- a/test/ruby/test_io_buffer.rb
+++ b/test/ruby/test_io_buffer.rb
@@ -712,6 +712,10 @@ class TestIOBuffer < Test::Unit::TestCase
assert_raise(IO::Buffer::InvalidatedError) { slice | mask }
assert_raise(IO::Buffer::InvalidatedError) { slice ^ mask }
assert_raise(IO::Buffer::InvalidatedError) { ~slice }
+
+ assert_raise(IO::Buffer::InvalidatedError) { slice.and!(mask) }
+ assert_raise(IO::Buffer::InvalidatedError) { slice.or!(mask) }
+ assert_raise(IO::Buffer::InvalidatedError) { slice.xor!(mask) }
end
def test_operators_raise_on_freed_mask
@@ -723,6 +727,11 @@ class TestIOBuffer < Test::Unit::TestCase
assert_raise(IO::Buffer::InvalidatedError) { source & mask_slice }
assert_raise(IO::Buffer::InvalidatedError) { source | mask_slice }
assert_raise(IO::Buffer::InvalidatedError) { source ^ mask_slice }
+
+ source = source.dup
+ assert_raise(IO::Buffer::InvalidatedError) { source.and!(mask_slice) }
+ assert_raise(IO::Buffer::InvalidatedError) { source.or!(mask_slice) }
+ assert_raise(IO::Buffer::InvalidatedError) { source.xor!(mask_slice) }
end
def test_bit_count