thumbnail_scraper 0.0.1 → 0.0.2
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/lib/thumbnail_scraper.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require "thumbnail_scraper/version"
|
2
2
|
require 'thumbnail_scraper/image'
|
3
3
|
require 'thumbnail_scraper/http_receiver'
|
4
|
+
require 'thumbnail_scraper/no_valid_thumbnail'
|
4
5
|
|
5
6
|
module ThumbnailScraper
|
6
7
|
class ThumbnailScraper
|
@@ -29,7 +30,7 @@ module ThumbnailScraper
|
|
29
30
|
def select_best_possible_image_to_scrap(images_urls)
|
30
31
|
images = images_urls.map{|image_url| create_image(image_url)}
|
31
32
|
valid_images = select_valid_images(images)
|
32
|
-
|
33
|
+
raise NoValidThumbnail.new if valid_images.empty?
|
33
34
|
valid_images.max{|a, b| a.area <=> b.area}
|
34
35
|
end
|
35
36
|
|
@@ -49,4 +49,16 @@ describe ThumbnailScraper::ThumbnailScraper do
|
|
49
49
|
end
|
50
50
|
end
|
51
51
|
end
|
52
|
+
|
53
|
+
context "for page without valid images" do
|
54
|
+
before :each do
|
55
|
+
stub_request(:get, "www.example.com/no_images.html").to_return(:body => asset_file("no_images.html"))
|
56
|
+
end
|
57
|
+
|
58
|
+
describe "#image_to_thumbnail_for_url" do
|
59
|
+
it "should raise NoValidThumbnail exception" do
|
60
|
+
expect{@thumbnail_scraper.image_to_thumbnail_for_url("http://www.example.com/no_images.html")}.to raise_error(ThumbnailScraper::NoValidThumbnail)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
52
64
|
end
|
@@ -97,9 +97,9 @@ module ThumbnailScraper
|
|
97
97
|
end
|
98
98
|
|
99
99
|
context "for all invalid images" do
|
100
|
-
it "should
|
100
|
+
it "should raise NoValidThumbnail error" do
|
101
101
|
@thumbnail_scraper.should_receive(:select_valid_images).and_return([])
|
102
|
-
@thumbnail_scraper.select_best_possible_image_to_scrap(@images_urls).
|
102
|
+
expect{@thumbnail_scraper.select_best_possible_image_to_scrap(@images_urls)}.to raise_error(NoValidThumbnail)
|
103
103
|
end
|
104
104
|
end
|
105
105
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thumbnail_scraper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-
|
13
|
+
date: 2012-08-06 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rspec
|
@@ -108,6 +108,7 @@ files:
|
|
108
108
|
- lib/thumbnail_scraper.rb
|
109
109
|
- lib/thumbnail_scraper/http_receiver.rb
|
110
110
|
- lib/thumbnail_scraper/image.rb
|
111
|
+
- lib/thumbnail_scraper/no_valid_thumbnail.rb
|
111
112
|
- lib/thumbnail_scraper/version.rb
|
112
113
|
- lib/thumbnail_scraper/webpage.rb
|
113
114
|
- lib/thumbnail_scraper/with_smart_url.rb
|
@@ -116,6 +117,7 @@ files:
|
|
116
117
|
- spec/sample_pages/images/kitty.jpg
|
117
118
|
- spec/sample_pages/images/subcatalog/smallest.jpg
|
118
119
|
- spec/sample_pages/img_src.html
|
120
|
+
- spec/sample_pages/no_images.html
|
119
121
|
- spec/sample_pages/og_image.html
|
120
122
|
- spec/thumbnail_scraper_helper.rb
|
121
123
|
- spec/thumbnail_scraper_spec.rb
|
@@ -153,6 +155,7 @@ test_files:
|
|
153
155
|
- spec/sample_pages/images/kitty.jpg
|
154
156
|
- spec/sample_pages/images/subcatalog/smallest.jpg
|
155
157
|
- spec/sample_pages/img_src.html
|
158
|
+
- spec/sample_pages/no_images.html
|
156
159
|
- spec/sample_pages/og_image.html
|
157
160
|
- spec/thumbnail_scraper_helper.rb
|
158
161
|
- spec/thumbnail_scraper_spec.rb
|