the_tv_db 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +6 -0
- data/Gemfile +4 -0
- data/README.md +1 -1
- data/Rakefile +7 -0
- data/lib/the_tv_db/connection.rb +5 -1
- data/lib/the_tv_db/response/raise_error.rb +10 -0
- data/lib/the_tv_db/response/unzip.rb +33 -0
- data/lib/the_tv_db/response/xmlize.rb +4 -4
- data/lib/the_tv_db/response.rb +2 -2
- data/lib/the_tv_db/series.rb +15 -7
- data/lib/the_tv_db/version.rb +1 -1
- data/spec/fixtures/series/en/actors.xml +73 -0
- data/spec/fixtures/series/en/banners.xml +2275 -0
- data/spec/fixtures/series/en/en.xml +2762 -0
- data/spec/fixtures/series/en.zip +0 -0
- data/spec/the_tv_db/series_spec.rb +40 -11
- data/the_tv_db.gemspec +1 -1
- metadata +33 -22
Binary file
|
@@ -24,19 +24,48 @@ describe TheTvDB::Series do
|
|
24
24
|
end
|
25
25
|
|
26
26
|
context ".find" do
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
27
|
+
|
28
|
+
context "when unauthenticated" do
|
29
|
+
it "returns a series obejct" do
|
30
|
+
stub_get("data/series/82066/all/", TheTvDB::SITE.to_s).
|
31
|
+
to_return(:status => 200, :body => fixture("series/find.xml"))
|
32
|
+
series = api.series.find("82066")
|
33
|
+
series.id.should == "82066"
|
34
|
+
end
|
35
|
+
|
36
|
+
it "raises RecordNotFound" do
|
37
|
+
stub_get("data/series/-1/all/", TheTvDB::SITE.to_s).
|
38
|
+
to_return(:status => 404, :body => fixture("series/404.html"))
|
39
|
+
expect {
|
40
|
+
api.series.find("-1")
|
41
|
+
}.to raise_error(TheTvDB::RecordNotFound)
|
42
|
+
end
|
32
43
|
end
|
33
44
|
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
api.
|
39
|
-
|
45
|
+
context "when api key is provided" do
|
46
|
+
before(:all) do
|
47
|
+
stub_get("ASDF01234F0AF1368/series/82066/all/en.zip").
|
48
|
+
to_return(:status => 200, :body => fixture("series/en.zip"))
|
49
|
+
api = TheTvDB.new(:api_key => "ASDF01234F0AF1368")
|
50
|
+
@series = api.series.find("82066")
|
51
|
+
end
|
52
|
+
|
53
|
+
it "returns a series object" do
|
54
|
+
@series.id.should == "82066"
|
55
|
+
end
|
56
|
+
|
57
|
+
it "assigns episodes" do
|
58
|
+
@series.episodes.should_not be_nil
|
59
|
+
end
|
60
|
+
|
61
|
+
it "assigns banners" do
|
62
|
+
@series.banners.should_not be_nil
|
63
|
+
end
|
64
|
+
|
65
|
+
it "assigns actors" do
|
66
|
+
@series.actors.should_not be_nil
|
67
|
+
end
|
40
68
|
end
|
69
|
+
|
41
70
|
end
|
42
71
|
end
|
data/the_tv_db.gemspec
CHANGED
@@ -17,10 +17,10 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ["lib"]
|
19
19
|
|
20
|
-
gem.add_dependency "typhoeus", "~> 0.4.2"
|
21
20
|
gem.add_dependency "faraday", "~> 0.8.4"
|
22
21
|
gem.add_dependency "ox", "~> 1.6.3"
|
23
22
|
gem.add_dependency "multi_xml", "~> 0.5.1"
|
23
|
+
gem.add_dependency "rubyzip", "~> 0.9.9"
|
24
24
|
|
25
25
|
gem.add_development_dependency "rspec", "~> 2.11.0"
|
26
26
|
gem.add_development_dependency "webmock", "~> 1.8.11"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: the_tv_db
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,55 +9,55 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-11-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
16
|
-
requirement: &
|
15
|
+
name: faraday
|
16
|
+
requirement: &70196380374840 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.4
|
21
|
+
version: 0.8.4
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70196380374840
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
|
-
name:
|
27
|
-
requirement: &
|
26
|
+
name: ox
|
27
|
+
requirement: &70196380393720 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
32
|
+
version: 1.6.3
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70196380393720
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
|
-
name:
|
38
|
-
requirement: &
|
37
|
+
name: multi_xml
|
38
|
+
requirement: &70196380392740 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version:
|
43
|
+
version: 0.5.1
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70196380392740
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
49
|
-
requirement: &
|
48
|
+
name: rubyzip
|
49
|
+
requirement: &70196380392120 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 0.9.9
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70196380392120
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rspec
|
60
|
-
requirement: &
|
60
|
+
requirement: &70196380391440 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 2.11.0
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70196380391440
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: webmock
|
71
|
-
requirement: &
|
71
|
+
requirement: &70196380390660 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: 1.8.11
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70196380390660
|
80
80
|
description: Ruby API Client for TheTvDB.com
|
81
81
|
email:
|
82
82
|
- javier@tractical.com
|
@@ -86,6 +86,7 @@ extra_rdoc_files: []
|
|
86
86
|
files:
|
87
87
|
- .gitignore
|
88
88
|
- .rspec
|
89
|
+
- .travis.yml
|
89
90
|
- Gemfile
|
90
91
|
- LICENSE.txt
|
91
92
|
- README.md
|
@@ -99,6 +100,8 @@ files:
|
|
99
100
|
- lib/the_tv_db/errors.rb
|
100
101
|
- lib/the_tv_db/model.rb
|
101
102
|
- lib/the_tv_db/response.rb
|
103
|
+
- lib/the_tv_db/response/raise_error.rb
|
104
|
+
- lib/the_tv_db/response/unzip.rb
|
102
105
|
- lib/the_tv_db/response/xmlize.rb
|
103
106
|
- lib/the_tv_db/series.rb
|
104
107
|
- lib/the_tv_db/series/collection.rb
|
@@ -109,6 +112,10 @@ files:
|
|
109
112
|
- spec/fixtures/episodes/series_id.xml
|
110
113
|
- spec/fixtures/series/404.html
|
111
114
|
- spec/fixtures/series/empty.xml
|
115
|
+
- spec/fixtures/series/en.zip
|
116
|
+
- spec/fixtures/series/en/actors.xml
|
117
|
+
- spec/fixtures/series/en/banners.xml
|
118
|
+
- spec/fixtures/series/en/en.xml
|
112
119
|
- spec/fixtures/series/find.xml
|
113
120
|
- spec/fixtures/series/result.xml
|
114
121
|
- spec/fixtures/series/results.xml
|
@@ -148,6 +155,10 @@ test_files:
|
|
148
155
|
- spec/fixtures/episodes/series_id.xml
|
149
156
|
- spec/fixtures/series/404.html
|
150
157
|
- spec/fixtures/series/empty.xml
|
158
|
+
- spec/fixtures/series/en.zip
|
159
|
+
- spec/fixtures/series/en/actors.xml
|
160
|
+
- spec/fixtures/series/en/banners.xml
|
161
|
+
- spec/fixtures/series/en/en.xml
|
151
162
|
- spec/fixtures/series/find.xml
|
152
163
|
- spec/fixtures/series/result.xml
|
153
164
|
- spec/fixtures/series/results.xml
|