summaryrefslogtreecommitdiff
path: root/test/ruby/test_io_buffer.rb
diff options
context:
space:
mode:
authorSamuel Williams <[email protected]>2023-09-14 20:37:43 +1200
committerGitHub <[email protected]>2023-09-14 20:37:43 +1200
commita095740fed2a05a04806a1d3827bcaba02e45720 (patch)
treead2b2e3ca8d24a876f594ff085d4303d983742c0 /test/ruby/test_io_buffer.rb
parent998ae7c3f36b65f04471cd680b4c7ac78b3d9f30 (diff)
Fix `io_buffer_get_string` default length computation. (#8427)
* Fix `io_buffer_get_string` default length computation. When an offset bigger than the size is given, the resulting length will be computed incorrectly. Raise an argument error in this case. * Validate all arguments.
Notes
Notes: Merged-By: ioquatix <[email protected]>
Diffstat (limited to 'test/ruby/test_io_buffer.rb')
-rw-r--r--test/ruby/test_io_buffer.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb
index c3ab09f27e..d5ba3266c7 100644
--- a/test/ruby/test_io_buffer.rb
+++ b/test/ruby/test_io_buffer.rb
@@ -252,13 +252,17 @@ class TestIOBuffer < Test::Unit::TestCase
chunk = buffer.get_string(0, message.bytesize, Encoding::BINARY)
assert_equal Encoding::BINARY, chunk.encoding
- assert_raise_with_message(ArgumentError, /exceeds buffer size/) do
+ assert_raise_with_message(ArgumentError, /bigger than the buffer size/) do
buffer.get_string(0, 129)
end
- assert_raise_with_message(ArgumentError, /exceeds buffer size/) do
+ assert_raise_with_message(ArgumentError, /bigger than the buffer size/) do
buffer.get_string(129)
end
+
+ assert_raise_with_message(ArgumentError, /Offset can't be negative/) do
+ buffer.get_string(-1)
+ end
end
# We check that values are correctly round tripped.