diff options
| author | Samuel Williams <samuel.williams@oriontransfer.co.nz> | 2023-05-24 10:17:35 +0900 |
|---|---|---|
| committer | nagachika <nagachika@ruby-lang.org> | 2024-05-18 20:09:56 +0900 |
| commit | 67d499a7646a4f2f5294b6c83ac9503fcd873270 (patch) | |
| tree | 6c1e90317bc6b6ae08e1dd4692077e58e4a58123 /test/ruby | |
| parent | 359e40e3c9986b8a5d77359995f0e926d1c6eb72 (diff) | |
Improvements to `IO::Buffer` `read`/`write`/`pread`/`pwrite`. (#7826)
- Fix IO::Buffer `read`/`write` to use a minimum length.
Diffstat (limited to 'test/ruby')
| -rw-r--r-- | test/ruby/test_io_buffer.rb | 35 |
1 files changed, 28 insertions, 7 deletions
diff --git a/test/ruby/test_io_buffer.rb b/test/ruby/test_io_buffer.rb index 13e28abea9..d6931119f2 100644 --- a/test/ruby/test_io_buffer.rb +++ b/test/ruby/test_io_buffer.rb @@ -355,17 +355,38 @@ class TestIOBuffer < Test::Unit::TestCase input.close end - def test_read + def hello_world_tempfile io = Tempfile.new io.write("Hello World") io.seek(0) - buffer = IO::Buffer.new(128) - buffer.read(io, 5) - - assert_equal "Hello", buffer.get_string(0, 5) + yield io ensure - io.close! if io + io&.close! + end + + def test_read + hello_world_tempfile do |io| + buffer = IO::Buffer.new(128) + buffer.read(io) + assert_equal "Hello", buffer.get_string(0, 5) + end + end + + def test_read_with_with_length + hello_world_tempfile do |io| + buffer = IO::Buffer.new(128) + buffer.read(io, 5) + assert_equal "Hello", buffer.get_string(0, 5) + end + end + + def test_read_with_with_offset + hello_world_tempfile do |io| + buffer = IO::Buffer.new(128) + buffer.read(io, nil, 6) + assert_equal "Hello", buffer.get_string(6, 5) + end end def test_write @@ -373,7 +394,7 @@ class TestIOBuffer < Test::Unit::TestCase buffer = IO::Buffer.new(128) buffer.set_string("Hello") - buffer.write(io, 5) + buffer.write(io) io.seek(0) assert_equal "Hello", io.read(5) |
