fastimage 1.6.4 → 1.6.5
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.
- checksums.yaml +4 -4
- data/lib/fastimage.rb +15 -2
- data/test/fixtures/gzipped.jpg +0 -0
- data/test/fixtures/truncated_gzipped.jpg +0 -0
- data/test/test.rb +18 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ee43e5740dcf6818e5c8d1125fad36e1bda9f57
|
4
|
+
data.tar.gz: 8b86b676562492da1da645cf7f94210aa0c71666
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7dea06d67cd7f9de2b06581cd130e52da3e2cca037214ca481326dc6340006e288186b734d392ea26c13a6a8a0ebd41d8dda0d7c9ada19448f5de6d4758a00b3
|
7
|
+
data.tar.gz: 9082130cc32246bd4fed77d9f6012029f5660f66049aa07b940eb56f5ecac14c7688e0d962a8343fcc3cb75eab44cb871ea9617fb586a2a6c5b85ed053f52f32
|
data/lib/fastimage.rb
CHANGED
@@ -53,8 +53,6 @@ class FastImage
|
|
53
53
|
|
54
54
|
class FastImageException < StandardError # :nodoc:
|
55
55
|
end
|
56
|
-
class MoreCharsNeeded < FastImageException # :nodoc:
|
57
|
-
end
|
58
56
|
class UnknownImageType < FastImageException # :nodoc:
|
59
57
|
end
|
60
58
|
class ImageFetchFailure < FastImageException # :nodoc:
|
@@ -237,6 +235,21 @@ class FastImage
|
|
237
235
|
end
|
238
236
|
end
|
239
237
|
|
238
|
+
case res['content-encoding']
|
239
|
+
when 'deflate', 'gzip', 'x-gzip'
|
240
|
+
begin
|
241
|
+
gzip = Zlib::GzipReader.new(FiberStream.new(read_fiber))
|
242
|
+
rescue FiberError, Zlib::GzipFile::Error
|
243
|
+
raise CannotParseImage
|
244
|
+
end
|
245
|
+
|
246
|
+
read_fiber = Fiber.new do
|
247
|
+
while data = gzip.readline
|
248
|
+
Fiber.yield data
|
249
|
+
end
|
250
|
+
end
|
251
|
+
end
|
252
|
+
|
240
253
|
parse_packets FiberStream.new(read_fiber)
|
241
254
|
|
242
255
|
break # needed to actively quit out of the fetch
|
Binary file
|
Binary file
|
data/test/test.rb
CHANGED
@@ -56,6 +56,12 @@ BadFixtures.each do |fn|
|
|
56
56
|
FakeWeb.register_uri(:get, "#{TestUrl}#{fn}", :body => File.join(FixturePath, fn))
|
57
57
|
end
|
58
58
|
|
59
|
+
GzipTestImg = "gzipped.jpg"
|
60
|
+
FakeWeb.register_uri(:get, "#{TestUrl}#{GzipTestImg}", :body => File.join(FixturePath, GzipTestImg), :content_encoding => "gzip")
|
61
|
+
GzipTestImgTruncated = "truncated_gzipped.jpg"
|
62
|
+
FakeWeb.register_uri(:get, "#{TestUrl}#{GzipTestImgTruncated}", :body => File.join(FixturePath, GzipTestImgTruncated), :content_encoding => "gzip")
|
63
|
+
GzipTestImgSize = [970, 450]
|
64
|
+
|
59
65
|
class FastImageTest < Test::Unit::TestCase
|
60
66
|
def test_should_report_type_correctly
|
61
67
|
GoodFixtures.each do |fn, info|
|
@@ -258,4 +264,16 @@ class FastImageTest < Test::Unit::TestCase
|
|
258
264
|
assert_equal info[1], FastImage.size(stringio)
|
259
265
|
end
|
260
266
|
end
|
267
|
+
|
268
|
+
def test_gzipped_file
|
269
|
+
url = "http://example.nowhere/#{GzipTestImg}"
|
270
|
+
assert_equal([970, 450], FastImage.size(url))
|
271
|
+
end
|
272
|
+
|
273
|
+
def test_truncated_gzipped_file
|
274
|
+
url = "http://example.nowhere/#{GzipTestImgTruncated}"
|
275
|
+
assert_raises(FastImage::SizeNotFound) do
|
276
|
+
FastImage.size(url, :raise_on_failure => true)
|
277
|
+
end
|
278
|
+
end
|
261
279
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastimage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stephen Sykes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-12-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -88,6 +88,7 @@ files:
|
|
88
88
|
- test/fixtures/exif_orientation.jpg
|
89
89
|
- test/fixtures/faulty.jpg
|
90
90
|
- test/fixtures/folder with spaces/test.bmp
|
91
|
+
- test/fixtures/gzipped.jpg
|
91
92
|
- test/fixtures/infinite.jpg
|
92
93
|
- test/fixtures/man.ico
|
93
94
|
- test/fixtures/orient_2.jpg
|
@@ -103,6 +104,7 @@ files:
|
|
103
104
|
- test/fixtures/test2.tiff
|
104
105
|
- test/fixtures/test3.jpg
|
105
106
|
- test/fixtures/test4.jpg
|
107
|
+
- test/fixtures/truncated_gzipped.jpg
|
106
108
|
- test/test.rb
|
107
109
|
homepage: http://github.com/sdsykes/fastimage
|
108
110
|
licenses:
|