summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_io_buffer.rb9
-rw-r--r--test/ruby/test_sprintf.rb6
2 files changed, 15 insertions, 0 deletions
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
diff --git a/test/ruby/test_sprintf.rb b/test/ruby/test_sprintf.rb
index 1c7e89c265..bbbe6e7ec3 100644
--- a/test/ruby/test_sprintf.rb
+++ b/test/ruby/test_sprintf.rb
@@ -1,5 +1,6 @@
# frozen_string_literal: false
require 'test/unit'
+require 'rbconfig/sizeof'
class TestSprintf < Test::Unit::TestCase
def test_positional
@@ -539,6 +540,11 @@ class TestSprintf < Test::Unit::TestCase
def test_width_underflow
bug = 'https://github.com/mruby/mruby/issues/3347'
assert_equal("!", sprintf("%*c", 0, ?!.ord), bug)
+
+ int_max = RbConfig::LIMITS["INT_MAX"]
+ assert_raise_with_message(ArgumentError, /width too big/) {
+ sprintf "%*c", int_max, 0x80
+ }
end
def test_negative_width_overflow