thetvdb_api 0.2.3.1 → 0.2.4

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.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/README.md +30 -51
  4. data/lib/thetvdb_api/actor.rb +9 -9
  5. data/lib/thetvdb_api/banner.rb +9 -9
  6. data/lib/thetvdb_api/base.rb +10 -56
  7. data/lib/thetvdb_api/client.rb +6 -4
  8. data/lib/thetvdb_api/episode.rb +33 -34
  9. data/lib/thetvdb_api/search.rb +23 -35
  10. data/lib/thetvdb_api/series.rb +17 -17
  11. data/lib/thetvdb_api/update.rb +32 -32
  12. data/lib/thetvdb_api/version.rb +1 -1
  13. data/lib/thetvdb_api.rb +0 -12
  14. data/spec/fixtures/get_episode.xml +30 -0
  15. data/spec/fixtures/get_series.xml +24 -0
  16. data/spec/fixtures/get_series_by_remote.xml +14 -0
  17. data/spec/fixtures/updates.xml +35 -0
  18. data/spec/functionals/actor_spec.rb +30 -0
  19. data/spec/functionals/banner_spec.rb +30 -0
  20. data/spec/functionals/episode_spec.rb +85 -0
  21. data/spec/functionals/search_spec.rb +71 -0
  22. data/spec/functionals/series_spec.rb +48 -0
  23. data/spec/functionals/update_spec.rb +81 -0
  24. data/thetvdb_api.gemspec +2 -2
  25. metadata +34 -82
  26. data/lib/generators/templates/thetvdb_api.rb +0 -3
  27. data/lib/generators/thetvdb_api/install_generator.rb +0 -12
  28. data/lib/thetvdb_api/configuration.rb +0 -10
  29. data/lib/thetvdb_api/response/actors.rb +0 -7
  30. data/lib/thetvdb_api/response/banners.rb +0 -7
  31. data/lib/thetvdb_api/response/collection.rb +0 -9
  32. data/lib/thetvdb_api/response/episode.rb +0 -5
  33. data/lib/thetvdb_api/response/full_series.rb +0 -21
  34. data/lib/thetvdb_api/response/search_multiple_episode.rb +0 -7
  35. data/lib/thetvdb_api/response/search_multiple_series.rb +0 -7
  36. data/lib/thetvdb_api/response/search_series.rb +0 -5
  37. data/lib/thetvdb_api/response/series.rb +0 -5
  38. data/lib/thetvdb_api/response/update.rb +0 -31
  39. data/lib/thetvdb_api/response.rb +0 -52
  40. data/spec/functionals/classes/actor_spec.rb +0 -41
  41. data/spec/functionals/classes/banner_spec.rb +0 -42
  42. data/spec/functionals/classes/episode_spec.rb +0 -93
  43. data/spec/functionals/classes/series_spec.rb +0 -91
  44. data/spec/functionals/functional_spec_helper.rb +0 -7
  45. data/spec/functionals/support/stub_faraday.rb +0 -5
  46. data/spec/integrations/support/.keep +0 -0
  47. data/spec/units/classes/actor_spec.rb +0 -49
  48. data/spec/units/classes/banner_spec.rb +0 -49
  49. data/spec/units/classes/base_spec.rb +0 -123
  50. data/spec/units/classes/client_spec.rb +0 -41
  51. data/spec/units/classes/episode_spec.rb +0 -167
  52. data/spec/units/classes/response/actors_spec.rb +0 -15
  53. data/spec/units/classes/response/banners_spec.rb +0 -15
  54. data/spec/units/classes/response/collection_spec.rb +0 -38
  55. data/spec/units/classes/response/episode_spec.rb +0 -15
  56. data/spec/units/classes/response/full_series_spec.rb +0 -51
  57. data/spec/units/classes/response/search_multiple_episode_spec.rb +0 -15
  58. data/spec/units/classes/response/search_multiple_series_spec.rb +0 -15
  59. data/spec/units/classes/response/search_series_spec.rb +0 -15
  60. data/spec/units/classes/response/series_spec.rb +0 -15
  61. data/spec/units/classes/response/update_spec.rb +0 -79
  62. data/spec/units/classes/response_spec.rb +0 -100
  63. data/spec/units/classes/search_spec.rb +0 -178
  64. data/spec/units/classes/series_spec.rb +0 -92
  65. data/spec/units/classes/update_spec.rb +0 -178
  66. data/spec/units/unit_spec_helper.rb +0 -5
metadata CHANGED
@@ -1,71 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thetvdb_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3.1
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Krzysztof Wawer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-02 00:00:00.000000000 Z
11
+ date: 2014-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: confiture
14
+ name: faraday
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ~>
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.4
19
+ version: 0.9.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.4
26
+ version: 0.9.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: faraday
28
+ name: uri_template
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
- version: 0.9.0
33
+ version: 0.7.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ~>
39
39
  - !ruby/object:Gem::Version
40
- version: 0.9.0
40
+ version: 0.7.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: uri_template
42
+ name: multi_xml
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
- version: 0.6.0
47
+ version: 0.5.5
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: 0.6.0
54
+ version: 0.5.5
55
55
  - !ruby/object:Gem::Dependency
56
- name: multi_xml
56
+ name: service_api
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: 0.5.5
61
+ version: 0.0.4
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - ~>
67
67
  - !ruby/object:Gem::Version
68
- version: 0.5.5
68
+ version: 0.0.4
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -135,26 +135,12 @@ files:
135
135
  - LICENSE.txt
136
136
  - README.md
137
137
  - Rakefile
138
- - lib/generators/templates/thetvdb_api.rb
139
- - lib/generators/thetvdb_api/install_generator.rb
140
138
  - lib/thetvdb_api.rb
141
139
  - lib/thetvdb_api/actor.rb
142
140
  - lib/thetvdb_api/banner.rb
143
141
  - lib/thetvdb_api/base.rb
144
142
  - lib/thetvdb_api/client.rb
145
- - lib/thetvdb_api/configuration.rb
146
143
  - lib/thetvdb_api/episode.rb
147
- - lib/thetvdb_api/response.rb
148
- - lib/thetvdb_api/response/actors.rb
149
- - lib/thetvdb_api/response/banners.rb
150
- - lib/thetvdb_api/response/collection.rb
151
- - lib/thetvdb_api/response/episode.rb
152
- - lib/thetvdb_api/response/full_series.rb
153
- - lib/thetvdb_api/response/search_multiple_episode.rb
154
- - lib/thetvdb_api/response/search_multiple_series.rb
155
- - lib/thetvdb_api/response/search_series.rb
156
- - lib/thetvdb_api/response/series.rb
157
- - lib/thetvdb_api/response/update.rb
158
144
  - lib/thetvdb_api/search.rb
159
145
  - lib/thetvdb_api/series.rb
160
146
  - lib/thetvdb_api/update.rb
@@ -163,13 +149,17 @@ files:
163
149
  - spec/fixtures/banners.xml
164
150
  - spec/fixtures/episode.xml
165
151
  - spec/fixtures/full_series.xml
152
+ - spec/fixtures/get_episode.xml
153
+ - spec/fixtures/get_series.xml
154
+ - spec/fixtures/get_series_by_remote.xml
166
155
  - spec/fixtures/series.xml
167
- - spec/functionals/classes/actor_spec.rb
168
- - spec/functionals/classes/banner_spec.rb
169
- - spec/functionals/classes/episode_spec.rb
170
- - spec/functionals/classes/series_spec.rb
171
- - spec/functionals/functional_spec_helper.rb
172
- - spec/functionals/support/stub_faraday.rb
156
+ - spec/fixtures/updates.xml
157
+ - spec/functionals/actor_spec.rb
158
+ - spec/functionals/banner_spec.rb
159
+ - spec/functionals/episode_spec.rb
160
+ - spec/functionals/search_spec.rb
161
+ - spec/functionals/series_spec.rb
162
+ - spec/functionals/update_spec.rb
173
163
  - spec/integrations/classes/actor_spec.rb
174
164
  - spec/integrations/classes/banner_spec.rb
175
165
  - spec/integrations/classes/client_spec.rb
@@ -178,28 +168,7 @@ files:
178
168
  - spec/integrations/classes/series_spec.rb
179
169
  - spec/integrations/classes/update_spec.rb
180
170
  - spec/integrations/integration_spec_helper.rb
181
- - spec/integrations/support/.keep
182
171
  - spec/spec_helper.rb
183
- - spec/units/classes/actor_spec.rb
184
- - spec/units/classes/banner_spec.rb
185
- - spec/units/classes/base_spec.rb
186
- - spec/units/classes/client_spec.rb
187
- - spec/units/classes/episode_spec.rb
188
- - spec/units/classes/response/actors_spec.rb
189
- - spec/units/classes/response/banners_spec.rb
190
- - spec/units/classes/response/collection_spec.rb
191
- - spec/units/classes/response/episode_spec.rb
192
- - spec/units/classes/response/full_series_spec.rb
193
- - spec/units/classes/response/search_multiple_episode_spec.rb
194
- - spec/units/classes/response/search_multiple_series_spec.rb
195
- - spec/units/classes/response/search_series_spec.rb
196
- - spec/units/classes/response/series_spec.rb
197
- - spec/units/classes/response/update_spec.rb
198
- - spec/units/classes/response_spec.rb
199
- - spec/units/classes/search_spec.rb
200
- - spec/units/classes/series_spec.rb
201
- - spec/units/classes/update_spec.rb
202
- - spec/units/unit_spec_helper.rb
203
172
  - thetvdb_api.gemspec
204
173
  homepage: http://github.com/wafcio/thetvdb_api
205
174
  licenses:
@@ -230,13 +199,17 @@ test_files:
230
199
  - spec/fixtures/banners.xml
231
200
  - spec/fixtures/episode.xml
232
201
  - spec/fixtures/full_series.xml
202
+ - spec/fixtures/get_episode.xml
203
+ - spec/fixtures/get_series.xml
204
+ - spec/fixtures/get_series_by_remote.xml
233
205
  - spec/fixtures/series.xml
234
- - spec/functionals/classes/actor_spec.rb
235
- - spec/functionals/classes/banner_spec.rb
236
- - spec/functionals/classes/episode_spec.rb
237
- - spec/functionals/classes/series_spec.rb
238
- - spec/functionals/functional_spec_helper.rb
239
- - spec/functionals/support/stub_faraday.rb
206
+ - spec/fixtures/updates.xml
207
+ - spec/functionals/actor_spec.rb
208
+ - spec/functionals/banner_spec.rb
209
+ - spec/functionals/episode_spec.rb
210
+ - spec/functionals/search_spec.rb
211
+ - spec/functionals/series_spec.rb
212
+ - spec/functionals/update_spec.rb
240
213
  - spec/integrations/classes/actor_spec.rb
241
214
  - spec/integrations/classes/banner_spec.rb
242
215
  - spec/integrations/classes/client_spec.rb
@@ -245,25 +218,4 @@ test_files:
245
218
  - spec/integrations/classes/series_spec.rb
246
219
  - spec/integrations/classes/update_spec.rb
247
220
  - spec/integrations/integration_spec_helper.rb
248
- - spec/integrations/support/.keep
249
221
  - spec/spec_helper.rb
250
- - spec/units/classes/actor_spec.rb
251
- - spec/units/classes/banner_spec.rb
252
- - spec/units/classes/base_spec.rb
253
- - spec/units/classes/client_spec.rb
254
- - spec/units/classes/episode_spec.rb
255
- - spec/units/classes/response/actors_spec.rb
256
- - spec/units/classes/response/banners_spec.rb
257
- - spec/units/classes/response/collection_spec.rb
258
- - spec/units/classes/response/episode_spec.rb
259
- - spec/units/classes/response/full_series_spec.rb
260
- - spec/units/classes/response/search_multiple_episode_spec.rb
261
- - spec/units/classes/response/search_multiple_series_spec.rb
262
- - spec/units/classes/response/search_series_spec.rb
263
- - spec/units/classes/response/series_spec.rb
264
- - spec/units/classes/response/update_spec.rb
265
- - spec/units/classes/response_spec.rb
266
- - spec/units/classes/search_spec.rb
267
- - spec/units/classes/series_spec.rb
268
- - spec/units/classes/update_spec.rb
269
- - spec/units/unit_spec_helper.rb
@@ -1,3 +0,0 @@
1
- ThetvdbApi::Configuration.configure do |config|
2
- # config.api_key = 'ABC123DEF456GHI7' # Your API key here, get one at http://thetvdb.com/?tab=apiregister
3
- end
@@ -1,12 +0,0 @@
1
- module ThetvdbApi
2
- module Generators
3
- class InstallGenerator < Rails::Generators::Base
4
- source_root File.expand_path('../../templates', __FILE__)
5
-
6
- desc 'Creates a ThetvdbApi::Configuration initializer and copy locale files to your application.'
7
- def copy_initializer
8
- template 'thetvdb_api.rb', 'config/initializers/thetvdb_api.rb'
9
- end
10
- end
11
- end
12
- end
@@ -1,10 +0,0 @@
1
- require 'confiture'
2
-
3
- class ThetvdbApi::Configuration
4
- include Confiture::Configuration
5
-
6
- confiture_allowed_keys(:api_key, :language, :adapter)
7
- confiture_defaults(language: 'en', adapter: :net_http)
8
- end
9
-
10
- ThetvdbApi::Configuration.configure
@@ -1,7 +0,0 @@
1
- class ThetvdbApi::Response::Actors < ThetvdbApi::Response
2
- include ThetvdbApi::Response::Collection
3
-
4
- def xml_parse
5
- multi_xml_parse.fetch('Actors', {}).fetch('Actor', [])
6
- end
7
- end
@@ -1,7 +0,0 @@
1
- class ThetvdbApi::Response::Banners < ThetvdbApi::Response
2
- include ThetvdbApi::Response::Collection
3
-
4
- def xml_parse
5
- multi_xml_parse.fetch('Banners', {}).fetch('Banner', [])
6
- end
7
- end
@@ -1,9 +0,0 @@
1
- module ThetvdbApi::Response::Collection
2
- def body
3
- @body ||= if @mapping
4
- parse.is_a?(Array) ? parse : [parse]
5
- else
6
- @faraday_response.body
7
- end
8
- end
9
- end
@@ -1,5 +0,0 @@
1
- class ThetvdbApi::Response::Episode < ThetvdbApi::Response
2
- def xml_parse
3
- multi_xml_parse.fetch('Data', {}).fetch('Episode', {})
4
- end
5
- end
@@ -1,21 +0,0 @@
1
- class ThetvdbApi::Response::FullSeries < ThetvdbApi::Response
2
- def parse
3
- unless @parse
4
- @parse = xml_parse
5
- episode_normalize
6
- end
7
- @parse
8
- end
9
-
10
- def xml_parse
11
- multi_xml_parse.fetch('Data', {})
12
- end
13
-
14
- def episode_normalize
15
- normalize('Episode')
16
- end
17
-
18
- def normalize(key)
19
- @parse[key] = [@parse[key]] if @parse[key].is_a?(Hash)
20
- end
21
- end
@@ -1,7 +0,0 @@
1
- class ThetvdbApi::Response::SearchMultipleEpisode < ThetvdbApi::Response
2
- include ThetvdbApi::Response::Collection
3
-
4
- def xml_parse
5
- multi_xml_parse.fetch('Data', {}).fetch('Episode', [])
6
- end
7
- end
@@ -1,7 +0,0 @@
1
- class ThetvdbApi::Response::SearchMultipleSeries < ThetvdbApi::Response
2
- include ThetvdbApi::Response::Collection
3
-
4
- def xml_parse
5
- multi_xml_parse.fetch('Data', {}).fetch('Series', [])
6
- end
7
- end
@@ -1,5 +0,0 @@
1
- class ThetvdbApi::Response::SearchSeries < ThetvdbApi::Response
2
- def xml_parse
3
- multi_xml_parse.fetch('Data', {}).fetch('Series', {})
4
- end
5
- end
@@ -1,5 +0,0 @@
1
- class ThetvdbApi::Response::Series < ThetvdbApi::Response
2
- def xml_parse
3
- multi_xml_parse.fetch('Data', {}).fetch('Series', {})
4
- end
5
- end
@@ -1,31 +0,0 @@
1
- class ThetvdbApi::Response::Update < ThetvdbApi::Response
2
- def parse
3
- unless @parse
4
- @parse = xml_parse
5
- series_normalize
6
- episode_normalize
7
- banner_normalize
8
- end
9
- @parse
10
- end
11
-
12
- def xml_parse
13
- multi_xml_parse.fetch('Data', {})
14
- end
15
-
16
- def series_normalize
17
- normalize('Series')
18
- end
19
-
20
- def episode_normalize
21
- normalize('Episode')
22
- end
23
-
24
- def banner_normalize
25
- normalize('Banner')
26
- end
27
-
28
- def normalize(key)
29
- @parse[key] = [@parse[key]] if @parse[key].is_a?(Hash)
30
- end
31
- end
@@ -1,52 +0,0 @@
1
- require 'multi_xml'
2
-
3
- class ThetvdbApi::Response
4
- def initialize(faraday_response, mapping = false)
5
- @faraday_response = faraday_response
6
- @mapping = mapping
7
- end
8
-
9
- def env
10
- @faraday_response.env
11
- end
12
-
13
- def status
14
- @faraday_response.status
15
- end
16
-
17
- def headers
18
- @faraday_response.headers
19
- end
20
-
21
- def body
22
- @body ||= @mapping ? parse : @faraday_response.body
23
- end
24
-
25
- def inspect
26
- body.inspect
27
- end
28
-
29
- def [](key)
30
- parse[key]
31
- end
32
-
33
- def []=(key, value)
34
- parse[key] = value
35
- end
36
-
37
- def each(&block)
38
- parse.each(&block)
39
- end
40
-
41
- def multi_xml_parse
42
- MultiXml.parse(@faraday_response.body)
43
- end
44
-
45
- def xml_parse
46
- multi_xml_parse
47
- end
48
-
49
- def parse
50
- @parse ||= xml_parse
51
- end
52
- end
@@ -1,41 +0,0 @@
1
- require 'functionals/functional_spec_helper'
2
-
3
- describe ThetvdbApi::Actor do
4
- include StubFaraday
5
-
6
- let(:model) { ThetvdbApi::Actor.new(ThetvdbApi::Client.new) }
7
-
8
- let(:faraday_stubs) do
9
- Faraday::Adapter::Test::Stubs.new do |stub|
10
- stub.get('/api/123456789/series/1234/actors.xml') { [200, {}, File.read('spec/fixtures/actors.xml')] }
11
- end
12
- end
13
-
14
- def actor_keys
15
- ['id', 'Image', 'Name', 'Role', 'SortOrder'].sort
16
- end
17
-
18
- before do
19
- stub_request(model, faraday_stubs)
20
- end
21
-
22
- describe '.find' do
23
- it 'should return string without mapping' do
24
- model.find(1234).body.class.should == String
25
- end
26
-
27
- describe 'with mapping' do
28
- it 'should return Array' do
29
- model.find(1234, mapping: true).body.class.should == Array
30
- end
31
-
32
- it 'should return not empty Array' do
33
- model.find(1234, mapping: true).body.should_not be_empty
34
- end
35
-
36
- it 'should return specific keys for first element' do
37
- model.find(1234, mapping: true).body.first.keys.sort.should == actor_keys
38
- end
39
- end
40
- end
41
- end
@@ -1,42 +0,0 @@
1
- require 'functionals/functional_spec_helper'
2
-
3
- describe ThetvdbApi::Banner do
4
- include StubFaraday
5
-
6
- let(:model) { ThetvdbApi::Banner.new(ThetvdbApi::Client.new) }
7
-
8
- let(:faraday_stubs) do
9
- Faraday::Adapter::Test::Stubs.new do |stub|
10
- stub.get('/api/123456789/series/1234/banners.xml') { [200, {}, File.read('spec/fixtures/banners.xml')] }
11
- end
12
- end
13
-
14
- def banner_keys
15
- ['id', 'BannerPath', 'BannerType', 'BannerType2', 'Colors', 'Language', 'Rating', 'RatingCount', 'SeriesName',
16
- 'ThumbnailPath', 'VignettePath'].sort
17
- end
18
-
19
- before do
20
- stub_request(model, faraday_stubs)
21
- end
22
-
23
- describe '.find' do
24
- it 'should return string without mapping' do
25
- model.find(1234).body.class.should == String
26
- end
27
-
28
- describe 'with mapping' do
29
- it 'should return Array' do
30
- model.find(1234, mapping: true).body.class.should == Array
31
- end
32
-
33
- it 'should return not empty Array' do
34
- model.find(1234, mapping: true).body.should_not be_empty
35
- end
36
-
37
- it 'should return specific keys for first element' do
38
- model.find(1234, mapping: true).body.first.keys.sort.should == banner_keys
39
- end
40
- end
41
- end
42
- end
@@ -1,93 +0,0 @@
1
- require 'functionals/functional_spec_helper'
2
-
3
- describe ThetvdbApi::Episode do
4
- include StubFaraday
5
-
6
- let(:model) { ThetvdbApi::Episode.new(ThetvdbApi::Client.new) }
7
-
8
- let(:episode_data) { File.read('spec/fixtures/episode.xml') }
9
-
10
- let(:faraday_stubs) do
11
- Faraday::Adapter::Test::Stubs.new do |stub|
12
- stub.get('/api/123456789/series/1234/default/1/1/en.xml') { [200, {}, episode_data] }
13
- stub.get('/api/123456789/series/1234/dvd/1/1/en.xml') { [200, {}, episode_data] }
14
- stub.get('/api/123456789/series/1234/absolute/1/en.xml') { [200, {}, episode_data] }
15
- stub.get('/api/123456789/episodes/1234/en.xml') { [200, {}, episode_data] }
16
- end
17
- end
18
-
19
- def episode_keys
20
- ['id', 'seasonid', 'EpisodeNumber', 'EpisodeName', 'FirstAired', 'GuestStars', 'Director', 'Writer', 'Overview',
21
- 'ProductionCode', 'lastupdated', 'flagged', 'DVD_discid', 'DVD_season', 'DVD_episodenumber', 'DVD_chapter',
22
- 'absolute_number', 'filename', 'seriesid', 'thumb_added', 'thumb_width', 'thumb_height', 'tms_export',
23
- 'mirrorupdate', 'IMDB_ID', 'EpImgFlag', 'Rating', 'SeasonNumber', 'Language'].sort
24
- end
25
-
26
- before do
27
- stub_request(model, faraday_stubs)
28
- end
29
-
30
- describe '.find_by_default_order' do
31
- it 'should return string without mapping' do
32
- model.find_by_default_order(1234, 1, 1).body.class.should == String
33
- end
34
-
35
- describe 'with mapping' do
36
- it 'should return Hash' do
37
- model.find_by_default_order(1234, 1, 1, mapping: true).body.class.should == Hash
38
- end
39
-
40
- it 'should return specific keys' do
41
- model.find_by_default_order(1234, 1, 1, mapping: true).body.keys.sort.should == episode_keys
42
- end
43
- end
44
- end
45
-
46
- describe '.find_by_dvd_order' do
47
- it 'should return string without mapping' do
48
- model.find_by_dvd_order(1234, 1, 1).body.class.should == String
49
- end
50
-
51
- describe 'with mapping' do
52
- it 'should return Hash' do
53
- model.find_by_dvd_order(1234, 1, 1, mapping: true).body.class.should == Hash
54
- end
55
-
56
- it 'should return specific keys' do
57
- model.find_by_dvd_order(1234, 1, 1, mapping: true).body.keys.sort.should == episode_keys
58
- end
59
- end
60
- end
61
-
62
- describe '.find_by_absolute_order' do
63
- it 'should return string without mapping' do
64
- model.find_by_absolute_order(1234, 1).body.class.should == String
65
- end
66
-
67
- describe 'with mapping' do
68
- it 'should return Hash' do
69
- model.find_by_absolute_order(1234, 1, mapping: true).body.class.should == Hash
70
- end
71
-
72
- it 'should return specific keys' do
73
- model.find_by_absolute_order(1234, 1, mapping: true).body.keys.sort.should == episode_keys
74
- end
75
- end
76
- end
77
-
78
- describe '.find' do
79
- it 'should return string without mapping' do
80
- model.find(1234).body.class.should == String
81
- end
82
-
83
- describe 'with mapping' do
84
- it 'should return Hash' do
85
- model.find(1234, mapping: true).body.class.should == Hash
86
- end
87
-
88
- it 'should return specific keys' do
89
- model.find(1234, mapping: true).body.keys.sort.should == episode_keys
90
- end
91
- end
92
- end
93
- end