From 0051d5bb1fe2525cdf3a8beaa274aae84d98a1ae Mon Sep 17 00:00:00 2001 From: Jan-Joost Spanjers Date: Sun, 30 May 2021 08:04:56 +0200 Subject: [PATCH] Read/write test files in binay mode (for Windows compatibility) --- test/file_test.rb | 8 ++++---- test/gentestfiles.rb | 12 ++++++------ test/input_stream_test.rb | 6 +++--- test/output_stream_test.rb | 2 +- test/pass_thru_decompressor_test.rb | 2 +- test/test_helper.rb | 2 +- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/test/file_test.rb b/test/file_test.rb index 0b49466..b34a947 100644 --- a/test/file_test.rb +++ b/test/file_test.rb @@ -113,21 +113,21 @@ class ZipFileTest < MiniTest::Test end def test_open_buffer_with_string - string = File.read('test/data/rubycode.zip') + string = File.read('test/data/rubycode.zip', mode: 'rb') ::Zip::File.open_buffer string do |zf| assert zf.entries.map(&:name).include?('zippedruby1.rb') end end def test_open_buffer_with_stringio - string_io = StringIO.new File.read('test/data/rubycode.zip') + string_io = StringIO.new File.read('test/data/rubycode.zip', mode: 'rb') ::Zip::File.open_buffer string_io do |zf| assert zf.entries.map(&:name).include?('zippedruby1.rb') end end def test_close_buffer_with_stringio - string_io = StringIO.new File.read('test/data/rubycode.zip') + string_io = StringIO.new File.read('test/data/rubycode.zip', mode: 'rb') zf = ::Zip::File.open_buffer string_io assert_nil zf.close end @@ -178,7 +178,7 @@ class ZipFileTest < MiniTest::Test end def test_open_buffer_without_block - string_io = StringIO.new File.read('test/data/rubycode.zip') + string_io = StringIO.new File.read('test/data/rubycode.zip', mode: 'rb') zf = ::Zip::File.open_buffer string_io assert zf.entries.map(&:name).include?('zippedruby1.rb') end diff --git a/test/gentestfiles.rb b/test/gentestfiles.rb index a95743b..7870916 100755 --- a/test/gentestfiles.rb +++ b/test/gentestfiles.rb @@ -79,19 +79,19 @@ class TestZipFile "zip -q #{TEST_ZIP1.zip_name} -d test/data/file2.txt" ) - File.open('test/data/generated/empty.txt', 'w') {} # Empty file. - File.open('test/data/generated/empty_chmod640.txt', 'w') {} # Empty file. + File.open('test/data/generated/empty.txt', 'wb') {} # Empty file. + File.open('test/data/generated/empty_chmod640.txt', 'wb') {} # Empty file. ::File.chmod(0o640, 'test/data/generated/empty_chmod640.txt') - File.open('test/data/generated/short.txt', 'w') { |file| file << 'ABCDEF' } + File.open('test/data/generated/short.txt', 'wb') { |file| file << 'ABCDEF' } test_text = '' - File.open('test/data/file2.txt') { |file| test_text = file.read } - File.open('test/data/generated/longAscii.txt', 'w') do |file| + File.open('test/data/file2.txt', 'rb') { |file| test_text = file.read } + File.open('test/data/generated/longAscii.txt', 'wb') do |file| file << test_text while file.tell < 1E5 end binary_pattern = '' - File.open('test/data/generated/empty.zip') do |file| + File.open('test/data/generated/empty.zip', 'rb') do |file| binary_pattern = file.read end binary_pattern *= 4 diff --git a/test/input_stream_test.rb b/test/input_stream_test.rb index 3d0e621..40d1947 100644 --- a/test/input_stream_test.rb +++ b/test/input_stream_test.rb @@ -42,13 +42,13 @@ class ZipInputStreamTest < MiniTest::Test end def test_open_string_io_without_block - string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name)) + string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name, mode: 'rb')) zis = ::Zip::InputStream.open(string_io) assert_stream_contents(zis, TestZipFile::TEST_ZIP2) end def test_open_string_io_with_block - string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name)) + string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name, mode: 'rb')) ::Zip::InputStream.open(string_io) do |zis| assert_stream_contents(zis, TestZipFile::TEST_ZIP2) assert_equal(true, zis.eof?) @@ -106,7 +106,7 @@ class ZipInputStreamTest < MiniTest::Test end def test_incomplete_reads_from_string_io - string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name)) + string_io = ::StringIO.new(::File.read(TestZipFile::TEST_ZIP2.zip_name, mode: 'rb')) ::Zip::InputStream.open(string_io) do |zis| entry = zis.get_next_entry # longAscii.txt assert_equal(false, zis.eof?) diff --git a/test/output_stream_test.rb b/test/output_stream_test.rb index 3b46f61..7a994b3 100644 --- a/test/output_stream_test.rb +++ b/test/output_stream_test.rb @@ -85,7 +85,7 @@ class ZipOutputStreamTest < MiniTest::Test zos << stored_text end - assert(File.read(TEST_ZIP.zip_name)[stored_text]) + assert(File.read(TEST_ZIP.zip_name, mode: 'rb')[stored_text]) ::Zip::File.open(TEST_ZIP.zip_name) do |zf| assert_equal(stored_text, zf.read(entry_name)) end diff --git a/test/pass_thru_decompressor_test.rb b/test/pass_thru_decompressor_test.rb index 937c3ac..9c251a0 100644 --- a/test/pass_thru_decompressor_test.rb +++ b/test/pass_thru_decompressor_test.rb @@ -6,7 +6,7 @@ class PassThruDecompressorTest < MiniTest::Test def setup super - @file = File.new(TEST_FILE) + @file = File.new(TEST_FILE, 'rb') @decompressor = ::Zip::PassThruDecompressor.new(@file, File.size(TEST_FILE)) end diff --git a/test/test_helper.rb b/test/test_helper.rb index 125ee99..b51fd5d 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -57,7 +57,7 @@ module DecompressorTests def setup @ref_text = '' - File.open(TEST_FILE) { |f| @ref_text = f.read } + File.open(TEST_FILE, 'rb') { |f| @ref_text = f.read } @ref_lines = @ref_text.split($INPUT_RECORD_SEPARATOR) end