filter_io 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/lib/filter_io.rb +2 -2
- data/test/filter_io_test.rb +15 -0
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.6
|
data/lib/filter_io.rb
CHANGED
@@ -95,7 +95,7 @@ class FilterIO
|
|
95
95
|
end
|
96
96
|
data = pop_bytes read_length
|
97
97
|
@pos += bytesize(data)
|
98
|
-
if length.nil? &&
|
98
|
+
if length.nil? && @io.respond_to?(:external_encoding)
|
99
99
|
data.force_encoding @io.external_encoding
|
100
100
|
data.encode! @io.internal_encoding if @io.internal_encoding
|
101
101
|
end
|
@@ -296,7 +296,7 @@ class FilterIO
|
|
296
296
|
|
297
297
|
def process_data(data, initial_data_size)
|
298
298
|
|
299
|
-
if
|
299
|
+
if @io.respond_to? :external_encoding
|
300
300
|
org_encoding = data.encoding
|
301
301
|
data.force_encoding @io.external_encoding
|
302
302
|
additional_data_size = bytesize(data) - initial_data_size
|
data/test/filter_io_test.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'test_helper'
|
4
4
|
require 'stringio'
|
5
5
|
require 'tempfile'
|
6
|
+
require 'zlib'
|
6
7
|
|
7
8
|
class FilterIOTest < ActiveSupport::TestCase
|
8
9
|
|
@@ -759,4 +760,18 @@ class FilterIOTest < ActiveSupport::TestCase
|
|
759
760
|
end
|
760
761
|
end
|
761
762
|
|
763
|
+
test "should be able to read from GzipReader stream" do
|
764
|
+
input = "über résumé"
|
765
|
+
input.force_encoding 'ASCII-8BIT' if input.respond_to? :force_encoding
|
766
|
+
buffer = StringIO.new
|
767
|
+
out = Zlib::GzipWriter.new buffer
|
768
|
+
out.write input
|
769
|
+
out.finish
|
770
|
+
buffer.rewind
|
771
|
+
io = Zlib::GzipReader.new(buffer)
|
772
|
+
|
773
|
+
io = FilterIO.new(io)
|
774
|
+
assert_equal input, io.read
|
775
|
+
end
|
776
|
+
|
762
777
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 6
|
9
|
+
version: 0.1.6
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Jason Weathered
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-12-02 00:00:00 +10:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|