diff options
| author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2025-11-22 23:40:35 +0900 |
|---|---|---|
| committer | Nobuyoshi Nakada <nobu.nakada@gmail.com> | 2025-12-17 12:35:38 +0900 |
| commit | f430fbbfacea5690d790dd9060ca4118431fc2fb (patch) | |
| tree | a5be32583847b793320833dc3a26b9b34448a53f | |
| parent | 87274c7203bbf5c1c834b4ecd1c20d46ec88d7ac (diff) | |
IO::Buffer: Fill the test for `IO::Buffer#clear`
| -rw-r--r-- | test/ruby/test_io_buffer.rb | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb index cc79988423..62766130ce 100644 --- a/test/ruby/test_io_buffer.rb +++ b/test/ruby/test_io_buffer.rb @@ -489,7 +489,21 @@ class TestIOBuffer < Test::Unit::TestCase def test_clear buffer = IO::Buffer.new(16) - buffer.set_string("Hello World!") + assert_equal "\0" * 16, buffer.get_string + buffer.clear(1) + assert_equal "\1" * 16, buffer.get_string + buffer.clear(2, 1, 2) + assert_equal "\1" + "\2"*2 + "\1"*13, buffer.get_string + buffer.clear(2, 1) + assert_equal "\1" + "\2"*15, buffer.get_string + buffer.clear(260) + assert_equal "\4" * 16, buffer.get_string + assert_raise(TypeError) {buffer.clear("x")} + + assert_raise(ArgumentError) {buffer.clear(0, 20)} + assert_raise(ArgumentError) {buffer.clear(0, 0, 20)} + assert_raise(ArgumentError) {buffer.clear(0, 10, 10)} + assert_raise(ArgumentError) {buffer.clear(0, (1<<64)-8, 10)} end def test_invalidation |
