spotlite 0.7.2 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +8 -41
  4. data/Rakefile +23 -3
  5. data/lib/spotlite.rb +1 -8
  6. data/lib/spotlite/movie.rb +169 -80
  7. data/lib/spotlite/person.rb +90 -14
  8. data/lib/spotlite/string_extensions.rb +9 -9
  9. data/lib/spotlite/version.rb +1 -1
  10. data/spec/fixtures/movie_find_conan +722 -0
  11. data/spec/fixtures/{search_no_results → movie_find_no_results} +95 -149
  12. data/spec/fixtures/nm0000233/index +6118 -0
  13. data/spec/fixtures/nm0005132/index +817 -740
  14. data/spec/fixtures/nm0864666/index +199 -221
  15. data/spec/fixtures/nm1659547/index +748 -719
  16. data/spec/fixtures/person_find_conan +722 -0
  17. data/spec/fixtures/{search_the_core → person_find_no_results} +112 -219
  18. data/spec/fixtures/tt0002186/index +212 -242
  19. data/spec/fixtures/tt0047396/releaseinfo +217 -292
  20. data/spec/fixtures/tt0112873/index +556 -539
  21. data/spec/fixtures/tt0133093/criticreviews +169 -250
  22. data/spec/fixtures/tt0133093/fullcredits +212 -299
  23. data/spec/fixtures/tt0133093/index +444 -491
  24. data/spec/fixtures/tt0133093/keywords +416 -492
  25. data/spec/fixtures/tt0133093/mediaindex_still_frame +114 -158
  26. data/spec/fixtures/tt0133093/releaseinfo +282 -344
  27. data/spec/fixtures/tt0133093/technical +1144 -0
  28. data/spec/fixtures/tt0133093/trivia +1350 -1230
  29. data/spec/fixtures/tt0169547/index +629 -644
  30. data/spec/fixtures/tt0317248/index +579 -608
  31. data/spec/fixtures/tt1134629/fullcredits +257 -340
  32. data/spec/spec_helper.rb +24 -23
  33. data/spec/spotlite/find_spec.rb +38 -0
  34. data/spec/spotlite/movie_spec.rb +73 -57
  35. data/spec/spotlite/person_spec.rb +60 -1
  36. data/spotlite.gemspec +9 -9
  37. metadata +34 -56
  38. data/lib/spotlite/box_office_top.rb +0 -11
  39. data/lib/spotlite/coming_soon.rb +0 -24
  40. data/lib/spotlite/in_theaters.rb +0 -25
  41. data/lib/spotlite/list.rb +0 -18
  42. data/lib/spotlite/opening_this_week.rb +0 -11
  43. data/lib/spotlite/search.rb +0 -45
  44. data/lib/spotlite/top.rb +0 -23
  45. data/spec/fixtures/movies_coming_soon +0 -2103
  46. data/spec/fixtures/movies_in_theaters +0 -2708
  47. data/spec/fixtures/top +0 -10823
  48. data/spec/spotlite/box_office_top_spec.rb +0 -29
  49. data/spec/spotlite/coming_soon_spec.rb +0 -29
  50. data/spec/spotlite/opening_this_week_spec.rb +0 -29
  51. data/spec/spotlite/search_spec.rb +0 -34
  52. data/spec/spotlite/top_spec.rb +0 -21
  53. data/tasks/fixtures.rake +0 -15
@@ -11,27 +11,28 @@ def read_fixture(path)
11
11
  end
12
12
 
13
13
  IMDB_SAMPLES = {
14
- "http://www.imdb.com/title/tt0133093/" => "tt0133093/index",
15
- "http://www.imdb.com/title/tt0133093/fullcredits" => "tt0133093/fullcredits",
16
- "http://www.imdb.com/title/tt0133093/keywords" => "tt0133093/keywords",
17
- "http://www.imdb.com/title/tt0133093/releaseinfo" => "tt0133093/releaseinfo",
18
- "http://www.imdb.com/title/tt0133093/trivia" => "tt0133093/trivia",
19
- "http://www.imdb.com/title/tt0133093/criticreviews" => "tt0133093/criticreviews",
20
- "http://www.imdb.com/title/tt0317248/" => "tt0317248/index",
21
- "http://www.imdb.com/title/tt0169547/" => "tt0169547/index",
22
- "http://www.imdb.com/title/tt0112873/" => "tt0112873/index",
23
- "http://www.imdb.com/title/tt0047396/releaseinfo" => "tt0047396/releaseinfo",
24
- "http://www.imdb.com/title/tt0002186/" => "tt0002186/index",
25
- "http://www.imdb.com/title/tt1134629/fullcredits" => "tt1134629/fullcredits",
26
- "http://www.imdb.com/find?q=the+core&s=all" => "search_the_core",
27
- "http://www.imdb.com/find?q=wappadoozle+swambling&s=all" => "search_no_results",
28
- "http://www.imdb.com/chart/top" => "top",
29
- "http://www.imdb.com/movies-in-theaters/" => "movies_in_theaters",
30
- "http://www.imdb.com/movies-coming-soon/" => "movies_coming_soon",
31
- "http://www.imdb.com/name/nm0005132/" => "nm0005132/index",
32
- "http://www.imdb.com/name/nm1659547/" => "nm1659547/index",
33
- "http://www.imdb.com/name/nm0864666/" => "nm0864666/index",
34
- "http://www.imdb.com/title/tt0133093/mediaindex?refine=still_frame" => "tt0133093/mediaindex_still_frame"
14
+ 'http://www.imdb.com/title/tt0133093/' => 'tt0133093/index',
15
+ 'http://www.imdb.com/title/tt0133093/fullcredits' => 'tt0133093/fullcredits',
16
+ 'http://www.imdb.com/title/tt0133093/keywords' => 'tt0133093/keywords',
17
+ 'http://www.imdb.com/title/tt0133093/releaseinfo' => 'tt0133093/releaseinfo',
18
+ 'http://www.imdb.com/title/tt0133093/trivia' => 'tt0133093/trivia',
19
+ 'http://www.imdb.com/title/tt0133093/criticreviews' => 'tt0133093/criticreviews',
20
+ 'http://www.imdb.com/title/tt0133093/technical' => 'tt0133093/technical',
21
+ 'http://www.imdb.com/title/tt0317248/' => 'tt0317248/index',
22
+ 'http://www.imdb.com/title/tt0169547/' => 'tt0169547/index',
23
+ 'http://www.imdb.com/title/tt0112873/' => 'tt0112873/index',
24
+ 'http://www.imdb.com/title/tt0047396/releaseinfo' => 'tt0047396/releaseinfo',
25
+ 'http://www.imdb.com/title/tt0002186/' => 'tt0002186/index',
26
+ 'http://www.imdb.com/title/tt1134629/fullcredits' => 'tt1134629/fullcredits',
27
+ 'http://www.imdb.com/find?q=conan&s=tt&ttype=ft' => 'movie_find_conan',
28
+ 'http://www.imdb.com/find?q=wappadoozle+swambling&s=tt&ttype=ft' => 'movie_find_no_results',
29
+ 'http://www.imdb.com/find?q=herpinson+derpington&s=nm' => 'person_find_no_results',
30
+ 'http://www.imdb.com/find?q=conan&s=nm' => 'person_find_conan',
31
+ 'http://www.imdb.com/name/nm0000233/?nmdp=1' => 'nm0000233/index',
32
+ 'http://www.imdb.com/name/nm0005132/?nmdp=1' => 'nm0005132/index',
33
+ 'http://www.imdb.com/name/nm1659547/?nmdp=1' => 'nm1659547/index',
34
+ 'http://www.imdb.com/name/nm0864666/?nmdp=1' => 'nm0864666/index',
35
+ 'http://www.imdb.com/title/tt0133093/mediaindex?refine=still_frame' => 'tt0133093/mediaindex_still_frame'
35
36
  }
36
37
 
37
38
  unless ENV['LIVE_TEST']
@@ -44,7 +45,7 @@ unless ENV['LIVE_TEST']
44
45
  FakeWeb.register_uri(:get, url, :response => read_fixture(response))
45
46
  end
46
47
  rescue LoadError
47
- puts "Could not load FakeWeb, these tests will hit IMDb.com"
48
- puts "You can run `gem install fakeweb` to stub out the responses."
48
+ puts 'Could not load FakeWeb, these tests will hit IMDb.com'
49
+ puts 'You can run `gem install fakeweb` to stub out the responses.'
49
50
  end
50
51
  end
@@ -0,0 +1,38 @@
1
+ require 'spec_helper'
2
+
3
+ describe "Find feature" do
4
+ context "Movie" do
5
+ it "should find movies" do
6
+ results = Spotlite::Movie.find("conan")
7
+ results.size.should eql(200)
8
+ results.each{ |result| result.should be_a(Spotlite::Movie) }
9
+ first = results.first
10
+ first.imdb_id.should eql("0816462")
11
+ first.title.should eql("Conan the Barbarian")
12
+ first.year.should eql(2011)
13
+ end
14
+
15
+ it "should return emtpy array with no results" do
16
+ results = Spotlite::Movie.find("wappadoozle swambling")
17
+ results.should be_an(Array)
18
+ results.should be_empty
19
+ end
20
+ end
21
+
22
+ context "Person" do
23
+ it "should find people" do
24
+ results = Spotlite::Person.find("conan")
25
+ results.size.should eql(200)
26
+ results.each{ |result| result.should be_a(Spotlite::Person) }
27
+ first = results.first
28
+ first.imdb_id.should eql("0000192")
29
+ first.name.should eql("Alyssa Milano")
30
+ end
31
+
32
+ it "should return emtpy array with no results" do
33
+ results = Spotlite::Person.find("herpinson derpington")
34
+ results.should be_an(Array)
35
+ results.should be_empty
36
+ end
37
+ end
38
+ end
@@ -25,6 +25,14 @@ describe "Spotlite::Movie" do
25
25
  end
26
26
  end
27
27
 
28
+ it "should return alternative titles" do
29
+ @movie.alternative_titles.should be_an(Array)
30
+ @movie.alternative_titles.size.should eql(35)
31
+ @movie.alternative_titles.should include({:title => "The Matrix", :comment => "(original title)"})
32
+ @movie.alternative_titles.should include({:title => "Maatriks", :comment => "Estonia"})
33
+ @movie.alternative_titles.should include({:title => "Матрица", :comment => "Russia"})
34
+ end
35
+
28
36
  it "should return original release year" do
29
37
  @movie.year.should eql(1999)
30
38
  end
@@ -65,9 +73,8 @@ describe "Spotlite::Movie" do
65
73
 
66
74
  it "should return genres" do
67
75
  @movie.genres.should be_an(Array)
68
- @movie.genres.size.should eql(3)
76
+ @movie.genres.size.should eql(2)
69
77
  @movie.genres.should include("Action")
70
- @movie.genres.should include("Adventure")
71
78
  @movie.genres.should include("Sci-Fi")
72
79
  end
73
80
 
@@ -90,13 +97,13 @@ describe "Spotlite::Movie" do
90
97
 
91
98
  describe "poster URL" do
92
99
  it "should return old style poster URL" do
93
- @movie.poster_url.should eql("http://ia.media-imdb.com/images/M/MV5BMjEzNjg1NTg2NV5BMl5BanBnXkFtZTYwNjY3MzQ5.jpg")
100
+ @movie.poster_url.should eql("http://ia.media-imdb.com/images/M/MV5BMTkxNDYxOTA4M15BMl5BanBnXkFtZTgwNTk0NzQxMTE@.jpg")
94
101
  end
95
102
 
96
103
  it "should return new style poster URL" do
97
104
  # American Beauty (1999)
98
105
  @movie = Spotlite::Movie.new("0169547")
99
- @movie.poster_url.should eql("http://ia.media-imdb.com/images/M/MV5BOTU1MzExMDg3N15BMl5BanBnXkFtZTcwODExNDg3OA@@.jpg")
106
+ @movie.poster_url.should eql("http://ia.media-imdb.com/images/M/MV5BMjM4NTI5NzYyNV5BMl5BanBnXkFtZTgwNTkxNTYxMTE@.jpg")
100
107
  end
101
108
 
102
109
  it "should return nil if poster doesn't exist" do
@@ -118,11 +125,7 @@ describe "Spotlite::Movie" do
118
125
  it "should return plot keywords" do
119
126
  @movie.keywords.should be_an(Array)
120
127
  @movie.keywords.size.should be_within(50).of(250)
121
- @movie.keywords.should include("computer")
122
- @movie.keywords.should include("artificial reality")
123
- @movie.keywords.should include("hand to hand combat")
124
- @movie.keywords.should include("white rabbit")
125
- @movie.keywords.should include("chosen one")
128
+ @movie.keywords.should include("computer", "artificial reality", "hand to hand combat", "white rabbit", "chosen one")
126
129
  end
127
130
 
128
131
  it "should return trivia" do
@@ -133,54 +136,6 @@ describe "Spotlite::Movie" do
133
136
  @movie.trivia.should include("Gary Oldman was considered as Morpheus at one point, as well as Samuel L. Jackson.")
134
137
  end
135
138
 
136
- it "should return directors" do
137
- @movie.directors.should be_an(Array)
138
- @movie.directors.size.should eql(2)
139
- @movie.directors.should include({:imdb_id => "0905152", :name => "Andy Wachowski"})
140
- @movie.directors.should include({:imdb_id => "0905154", :name => "Lana Wachowski"})
141
- end
142
-
143
- it "should return writers" do
144
- @movie.writers.should be_an(Array)
145
- @movie.writers.size.should eql(2)
146
- @movie.writers.should include({:imdb_id => "0905152", :name => "Andy Wachowski"})
147
- @movie.writers.should include({:imdb_id => "0905154", :name => "Lana Wachowski"})
148
- end
149
-
150
- it "should return only unique writers" do
151
- # The Private Lives of Pippa Lee (2009)
152
- @movie = Spotlite::Movie.new("1134629")
153
- @movie.writers.size.should eql(1)
154
- end
155
-
156
- it "should return producers" do
157
- @movie.producers.should be_an(Array)
158
- @movie.producers.size.should eql(10)
159
- @movie.producers.should include({:imdb_id => "0075732", :name => "Bruce Berman"})
160
- @movie.producers.should include({:imdb_id => "0185621", :name => "Dan Cracchiolo"})
161
- @movie.producers.should include({:imdb_id => "0400492", :name => "Carol Hughes"})
162
- @movie.producers.should include({:imdb_id => "0905152", :name => "Andy Wachowski"})
163
- @movie.producers.should include({:imdb_id => "0905154", :name => "Lana Wachowski"})
164
- end
165
-
166
- it "should return cast members and characters" do
167
- @movie.cast.should be_an(Array)
168
- @movie.cast.size.should eql(37)
169
- @movie.cast.should include({:imdb_id => "0000206", :name => "Keanu Reeves", :character => "Neo"})
170
- @movie.cast.should include({:imdb_id => "0000401", :name => "Laurence Fishburne", :character => "Morpheus"})
171
- @movie.cast.should include({:imdb_id => "0005251", :name => "Carrie-Anne Moss", :character => "Trinity"})
172
- @movie.cast.should include({:imdb_id => "0915989", :name => "Hugo Weaving", :character => "Agent Smith"})
173
- @movie.cast.should include({:imdb_id => "3269395", :name => "Rana Morrison", :character => "Shaylae - Woman in Office (uncredited)"})
174
- end
175
-
176
- it "should return starred actors" do
177
- @movie.stars.should be_an(Array)
178
- @movie.stars.size.should eql(3)
179
- @movie.stars.should include({:imdb_id => "0000206", :name => "Keanu Reeves"})
180
- @movie.stars.should include({:imdb_id => "0000401", :name => "Laurence Fishburne"})
181
- @movie.stars.should include({:imdb_id => "0005251", :name => "Carrie-Anne Moss"})
182
- end
183
-
184
139
  describe "release dates" do
185
140
  it "should return release dates" do
186
141
  # Rear Window (1954)
@@ -228,6 +183,15 @@ describe "Spotlite::Movie" do
228
183
  )
229
184
  end
230
185
 
186
+ it "should return technical information" do
187
+ hash = @movie.technical
188
+ hash.should be_a(Hash)
189
+ hash.should include("Runtime" => ["2 hr 16 min (136 min)"])
190
+ hash.should include("Sound Mix" => ["DTS", "Dolby Digital", "SDDS"])
191
+ hash.should include("Cinematographic Process" => ["Super 35", "VistaVision (effects shots)"])
192
+ hash.should include("Film Length" => ["3,735 m (Sweden)"])
193
+ end
194
+
231
195
  it "should return an array of still frames URLs" do
232
196
  @movie.images.should be_an(Array)
233
197
  @movie.images.size.should eql(12)
@@ -237,6 +201,58 @@ describe "Spotlite::Movie" do
237
201
  )
238
202
  end
239
203
 
204
+ describe "movie credits" do
205
+ it "should return crew categories" do
206
+ @movie.crew_categories.should be_an(Array)
207
+ @movie.crew_categories.size.should eql(27)
208
+ @movie.crew_categories.should include("Directed by", "Writing Credits", "Cinematography by", "Second Unit Director or Assistant Director", "Casting By", "Other crew")
209
+ @movie.crew_categories.should_not include("Cast")
210
+ end
211
+
212
+ it "should return movie cast" do
213
+ @movie.cast.should be_an(Array)
214
+ @movie.cast.size.should eql(37)
215
+ @movie.cast.each{ |person| person.should be_a(Spotlite::Person) }
216
+ first = @movie.cast.first
217
+ first.name.should eql("Keanu Reeves")
218
+ first.imdb_id.should eql("0000206")
219
+ first.credits_category.should eql("Cast")
220
+ first.credits_text.should eql("Neo")
221
+ end
222
+
223
+ it "should return movie crew" do
224
+ @movie.crew.should be_an(Array)
225
+ @movie.crew.size.should eql(542)
226
+ @movie.crew.each{ |person| person.should be_a(Spotlite::Person) }
227
+ end
228
+
229
+ it "should return full credits" do
230
+ @movie.credits.should be_an(Array)
231
+ @movie.credits.size.should eql(@movie.cast.size + @movie.crew.size)
232
+ @movie.credits.each{ |person| person.should be_a(Spotlite::Person) }
233
+ end
234
+
235
+ it "should parse crew category" do
236
+ category = @movie.parse_crew("Transportation Department")
237
+ category.should be_an(Array)
238
+ category.size.should eql(3)
239
+ first = category.first
240
+ first.name.should eql("John Allan")
241
+ first.imdb_id.should eql("0019956")
242
+ first.credits_category.should eql("Transportation Department")
243
+ first.credits_text.should eql("action vehicle coordinator")
244
+ end
245
+
246
+ it "should return starred actors" do
247
+ @movie.stars.should be_an(Array)
248
+ @movie.stars.size.should eql(3)
249
+ @movie.stars.each{ |person| person.should be_a(Spotlite::Person) }
250
+ first = @movie.stars.first
251
+ first.name.should eql("Keanu Reeves")
252
+ first.imdb_id.should eql("0000206")
253
+ end
254
+ end
255
+
240
256
  end
241
257
 
242
258
  end
@@ -43,7 +43,66 @@ describe "Spotlite::Person" do
43
43
  @person = Spotlite::Person.new("0864666")
44
44
  @person.photo_url.should be_nil
45
45
  end
46
- end
46
+ end
47
+
48
+ describe "filmography" do
49
+ before(:each) do
50
+ # Quentin Tarantino
51
+ @person = Spotlite::Person.new("0000233")
52
+ end
53
+
54
+ context "with basic jobs (director, actor, writer, producer), flattened to array" do
55
+ it "should return an array of 76..86 movies" do
56
+ @person.filmography.should be_an(Array)
57
+ @person.filmography.size.should be_within(5).of(81)
58
+ @person.filmography.each{ |movie| movie.should be_a(Spotlite::Movie) }
59
+ @person.filmography.last.title.should eql("My Best Friend's Birthday")
60
+ @person.filmography.last.imdb_id.should eql("0359715")
61
+ end
62
+ end
63
+
64
+ context "with basic jobs (director, actor, writer, producer), expanded to a hash of arrays" do
65
+ it "should return a hash of 4 arrays" do
66
+ @person.filmography(false, false).should be_an(Hash)
67
+ @person.filmography(false, false).size.should eql(4)
68
+ @person.filmography(false, false).keys.should eql([:director, :actor, :writer, :producer])
69
+ end
70
+
71
+ it "should be able to retrieve an array of +Spotlite::Movie+ objects by a hash key" do
72
+ @person.filmography(false, false)[:actor].should be_an(Array)
73
+ @person.filmography(false, false)[:actor].size.should be_within(5).of(29)
74
+ @person.filmography(false, false)[:actor].each{ |movie| movie.should be_a(Spotlite::Movie) }
75
+ @person.filmography(false, false)[:actor].last.title.should eql("Love Birds in Bondage")
76
+ @person.filmography(false, false)[:actor].last.imdb_id.should eql("1959459")
77
+ end
78
+ end
79
+
80
+ context "with all available jobs, flattened to array" do
81
+ it "should return an array of 176..196 movies" do
82
+ @person.filmography(true, true).should be_an(Array)
83
+ @person.filmography(true, true).size.should be_within(10).of(186)
84
+ @person.filmography(true, true).each{ |movie| movie.should be_a(Spotlite::Movie) }
85
+ @person.filmography(true, true).last.title.should eql("The Typewriter, the Rifle & the Movie Camera")
86
+ @person.filmography(true, true).last.imdb_id.should eql("0118004")
87
+ end
88
+ end
89
+
90
+ context "with all available jobs, expanded to a hash of arrays" do
91
+ it "should return a hash of 11 arrays" do
92
+ @person.filmography(true, false).should be_an(Hash)
93
+ @person.filmography(true, false).size.should eql(11)
94
+ @person.filmography(true, false).keys.should eql([:writer, :actor, :director, :producer, :miscellaneous, :soundtrack, :cinematographer, :music_department, :editor, :thanks, :self])
95
+ end
96
+
97
+ it "should be able to retrieve an array of +Spotlite::Movie+ objects by a hash key" do
98
+ @person.filmography(true, false)[:thanks].should be_an(Array)
99
+ @person.filmography(true, false)[:thanks].size.should be_within(10).of(75)
100
+ @person.filmography(true, false)[:thanks].each{ |movie| movie.should be_a(Spotlite::Movie) }
101
+ @person.filmography(true, false)[:thanks].last.title.should eql("White Man's Burden")
102
+ @person.filmography(true, false)[:thanks].last.imdb_id.should eql("0114928")
103
+ end
104
+ end
105
+ end
47
106
  end
48
107
 
49
108
  end
@@ -4,20 +4,20 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'spotlite/version'
5
5
 
6
6
  Gem::Specification.new do |gem|
7
- gem.name = "spotlite"
7
+ gem.name = 'spotlite'
8
8
  gem.version = Spotlite::VERSION
9
- gem.license = "MIT"
10
- gem.authors = ["Artem Pakk"]
11
- gem.email = ["apakk@me.com"]
9
+ gem.license = 'MIT'
10
+ gem.authors = ['Artem Pakk']
11
+ gem.email = ['apakk@me.com']
12
12
  gem.description = %q{Spotlite gem helps you fetch all kinds of publicly available information about movies and people from IMDb movie website, including title, year, genres, directors, writers, actors, runtime, countries, poster, keywords, etc.}
13
13
  gem.summary = %q{Ruby gem to fetch publicly available information about movies from IMDb}
14
- gem.homepage = "http://github.com/defeed/spotlite"
14
+ gem.homepage = 'http://github.com/defeed/spotlite'
15
15
 
16
16
  gem.files = `git ls-files`.split($/)
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = ["lib"]
18
+ gem.require_paths = ['lib']
19
19
 
20
- gem.add_dependency "nokogiri", "~> 1.5"
21
- gem.add_development_dependency "rspec", "~> 2.13"
22
- gem.add_development_dependency "fakeweb"
20
+ gem.add_dependency 'nokogiri', '~> 1.6'
21
+ gem.add_development_dependency 'rspec', '~> 2.14'
22
+ gem.add_development_dependency 'fakeweb', '~> 1.3'
23
23
  end
metadata CHANGED
@@ -1,64 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spotlite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
5
- prerelease:
4
+ version: 0.8.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Artem Pakk
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-12-15 00:00:00.000000000 Z
11
+ date: 2014-07-06 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: nokogiri
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '1.5'
19
+ version: '1.6'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '1.5'
26
+ version: '1.6'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
- version: '2.13'
33
+ version: '2.14'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
- version: '2.13'
40
+ version: '2.14'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: fakeweb
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '0'
47
+ version: '1.3'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: '0'
54
+ version: '1.3'
62
55
  description: Spotlite gem helps you fetch all kinds of publicly available information
63
56
  about movies and people from IMDb movie website, including title, year, genres,
64
57
  directors, writers, actors, runtime, countries, poster, keywords, etc.
@@ -68,31 +61,24 @@ executables: []
68
61
  extensions: []
69
62
  extra_rdoc_files: []
70
63
  files:
71
- - .gitignore
64
+ - ".gitignore"
72
65
  - CHANGELOG.md
73
66
  - Gemfile
74
67
  - README.md
75
68
  - Rakefile
76
69
  - lib/spotlite.rb
77
- - lib/spotlite/box_office_top.rb
78
- - lib/spotlite/coming_soon.rb
79
- - lib/spotlite/in_theaters.rb
80
- - lib/spotlite/list.rb
81
70
  - lib/spotlite/movie.rb
82
- - lib/spotlite/opening_this_week.rb
83
71
  - lib/spotlite/person.rb
84
- - lib/spotlite/search.rb
85
72
  - lib/spotlite/string_extensions.rb
86
- - lib/spotlite/top.rb
87
73
  - lib/spotlite/version.rb
88
- - spec/fixtures/movies_coming_soon
89
- - spec/fixtures/movies_in_theaters
74
+ - spec/fixtures/movie_find_conan
75
+ - spec/fixtures/movie_find_no_results
76
+ - spec/fixtures/nm0000233/index
90
77
  - spec/fixtures/nm0005132/index
91
78
  - spec/fixtures/nm0864666/index
92
79
  - spec/fixtures/nm1659547/index
93
- - spec/fixtures/search_no_results
94
- - spec/fixtures/search_the_core
95
- - spec/fixtures/top
80
+ - spec/fixtures/person_find_conan
81
+ - spec/fixtures/person_find_no_results
96
82
  - spec/fixtures/tt0002186/index
97
83
  - spec/fixtures/tt0047396/releaseinfo
98
84
  - spec/fixtures/tt0112873/index
@@ -102,54 +88,49 @@ files:
102
88
  - spec/fixtures/tt0133093/keywords
103
89
  - spec/fixtures/tt0133093/mediaindex_still_frame
104
90
  - spec/fixtures/tt0133093/releaseinfo
91
+ - spec/fixtures/tt0133093/technical
105
92
  - spec/fixtures/tt0133093/trivia
106
93
  - spec/fixtures/tt0169547/index
107
94
  - spec/fixtures/tt0317248/index
108
95
  - spec/fixtures/tt1134629/fullcredits
109
96
  - spec/spec_helper.rb
110
- - spec/spotlite/box_office_top_spec.rb
111
- - spec/spotlite/coming_soon_spec.rb
97
+ - spec/spotlite/find_spec.rb
112
98
  - spec/spotlite/movie_spec.rb
113
- - spec/spotlite/opening_this_week_spec.rb
114
99
  - spec/spotlite/person_spec.rb
115
- - spec/spotlite/search_spec.rb
116
- - spec/spotlite/top_spec.rb
117
100
  - spotlite.gemspec
118
- - tasks/fixtures.rake
119
101
  homepage: http://github.com/defeed/spotlite
120
102
  licenses:
121
103
  - MIT
104
+ metadata: {}
122
105
  post_install_message:
123
106
  rdoc_options: []
124
107
  require_paths:
125
108
  - lib
126
109
  required_ruby_version: !ruby/object:Gem::Requirement
127
- none: false
128
110
  requirements:
129
- - - ! '>='
111
+ - - ">="
130
112
  - !ruby/object:Gem::Version
131
113
  version: '0'
132
114
  required_rubygems_version: !ruby/object:Gem::Requirement
133
- none: false
134
115
  requirements:
135
- - - ! '>='
116
+ - - ">="
136
117
  - !ruby/object:Gem::Version
137
118
  version: '0'
138
119
  requirements: []
139
120
  rubyforge_project:
140
- rubygems_version: 1.8.25
121
+ rubygems_version: 2.2.2
141
122
  signing_key:
142
- specification_version: 3
123
+ specification_version: 4
143
124
  summary: Ruby gem to fetch publicly available information about movies from IMDb
144
125
  test_files:
145
- - spec/fixtures/movies_coming_soon
146
- - spec/fixtures/movies_in_theaters
126
+ - spec/fixtures/movie_find_conan
127
+ - spec/fixtures/movie_find_no_results
128
+ - spec/fixtures/nm0000233/index
147
129
  - spec/fixtures/nm0005132/index
148
130
  - spec/fixtures/nm0864666/index
149
131
  - spec/fixtures/nm1659547/index
150
- - spec/fixtures/search_no_results
151
- - spec/fixtures/search_the_core
152
- - spec/fixtures/top
132
+ - spec/fixtures/person_find_conan
133
+ - spec/fixtures/person_find_no_results
153
134
  - spec/fixtures/tt0002186/index
154
135
  - spec/fixtures/tt0047396/releaseinfo
155
136
  - spec/fixtures/tt0112873/index
@@ -159,15 +140,12 @@ test_files:
159
140
  - spec/fixtures/tt0133093/keywords
160
141
  - spec/fixtures/tt0133093/mediaindex_still_frame
161
142
  - spec/fixtures/tt0133093/releaseinfo
143
+ - spec/fixtures/tt0133093/technical
162
144
  - spec/fixtures/tt0133093/trivia
163
145
  - spec/fixtures/tt0169547/index
164
146
  - spec/fixtures/tt0317248/index
165
147
  - spec/fixtures/tt1134629/fullcredits
166
148
  - spec/spec_helper.rb
167
- - spec/spotlite/box_office_top_spec.rb
168
- - spec/spotlite/coming_soon_spec.rb
149
+ - spec/spotlite/find_spec.rb
169
150
  - spec/spotlite/movie_spec.rb
170
- - spec/spotlite/opening_this_week_spec.rb
171
151
  - spec/spotlite/person_spec.rb
172
- - spec/spotlite/search_spec.rb
173
- - spec/spotlite/top_spec.rb