parent
2697c7ea4f
commit
96377f72de
|
@ -86,6 +86,10 @@ module Zip
|
|||
return @output_buffer.slice!(0...sep_index)
|
||||
end
|
||||
|
||||
def ungetc(byte)
|
||||
@output_buffer.prepend(byte.chr)
|
||||
end
|
||||
|
||||
def flush
|
||||
ret_val = @output_buffer
|
||||
@output_buffer = ''
|
||||
|
@ -108,4 +112,4 @@ module Zip
|
|||
alias_method :each, :each_line
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -157,4 +157,14 @@ class ZipInputStreamTest < MiniTest::Unit::TestCase
|
|||
}
|
||||
end
|
||||
|
||||
def test_ungetc
|
||||
::Zip::InputStream.open(TestZipFile::TEST_ZIP2.zip_name) do |zis|
|
||||
zis.get_next_entry
|
||||
first_line = zis.gets.chomp
|
||||
first_line.bytes.reverse.each { |b| zis.ungetc(b) }
|
||||
assert_equal('#!/usr/bin/env ruby', zis.gets.chomp)
|
||||
assert_equal("$VERBOSE =", zis.read(10))
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue