Skip to content

Commit f430fbb

Browse files
committed
IO::Buffer: Fill the test for IO::Buffer#clear
1 parent 87274c7 commit f430fbb

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

test/ruby/test_io_buffer.rb

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,21 @@ def test_zero_length_each_byte
489489

490490
def test_clear
491491
buffer = IO::Buffer.new(16)
492-
buffer.set_string("Hello World!")
492+
assert_equal "\0" * 16, buffer.get_string
493+
buffer.clear(1)
494+
assert_equal "\1" * 16, buffer.get_string
495+
buffer.clear(2, 1, 2)
496+
assert_equal "\1" + "\2"*2 + "\1"*13, buffer.get_string
497+
buffer.clear(2, 1)
498+
assert_equal "\1" + "\2"*15, buffer.get_string
499+
buffer.clear(260)
500+
assert_equal "\4" * 16, buffer.get_string
501+
assert_raise(TypeError) {buffer.clear("x")}
502+
503+
assert_raise(ArgumentError) {buffer.clear(0, 20)}
504+
assert_raise(ArgumentError) {buffer.clear(0, 0, 20)}
505+
assert_raise(ArgumentError) {buffer.clear(0, 10, 10)}
506+
assert_raise(ArgumentError) {buffer.clear(0, (1<<64)-8, 10)}
493507
end
494508

495509
def test_invalidation

0 commit comments

Comments
 (0)