enceladus 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.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +23 -0
  3. data/.rspec +1 -0
  4. data/.ruby-gemset +1 -0
  5. data/.ruby-version +1 -0
  6. data/.travis.yml +4 -0
  7. data/Gemfile +4 -0
  8. data/LICENSE.txt +22 -0
  9. data/README.md +36 -0
  10. data/Rakefile +2 -0
  11. data/enceladus.gemspec +29 -0
  12. data/lib/enceladus/configuration/api.rb +60 -0
  13. data/lib/enceladus/configuration/image.rb +83 -0
  14. data/lib/enceladus/exceptions.rb +5 -0
  15. data/lib/enceladus/models/account.rb +143 -0
  16. data/lib/enceladus/models/api_paginated_collection.rb +76 -0
  17. data/lib/enceladus/models/api_resource.rb +25 -0
  18. data/lib/enceladus/models/cast.rb +9 -0
  19. data/lib/enceladus/models/genre.rb +4 -0
  20. data/lib/enceladus/models/guest_account.rb +15 -0
  21. data/lib/enceladus/models/movie.rb +162 -0
  22. data/lib/enceladus/models/movie_collection.rb +3 -0
  23. data/lib/enceladus/models/production_company.rb +4 -0
  24. data/lib/enceladus/models/production_country.rb +4 -0
  25. data/lib/enceladus/models/release.rb +4 -0
  26. data/lib/enceladus/models/spoken_language.rb +4 -0
  27. data/lib/enceladus/models/you_tube_trailer.rb +9 -0
  28. data/lib/enceladus/requester.rb +68 -0
  29. data/lib/enceladus/version.rb +3 -0
  30. data/lib/enceladus.rb +43 -0
  31. data/spec/enceladus/configuration/api_spec.rb +59 -0
  32. data/spec/enceladus/configuration/image_spec.rb +200 -0
  33. data/spec/enceladus/enceladus_spec.rb +53 -0
  34. data/spec/enceladus/models/account_spec.rb +176 -0
  35. data/spec/enceladus/models/cast_spec.rb +18 -0
  36. data/spec/enceladus/models/guest_account_spec.rb +19 -0
  37. data/spec/enceladus/models/movie_collection_spec.rb +217 -0
  38. data/spec/enceladus/models/movie_spec.rb +469 -0
  39. data/spec/enceladus/models/you_tube_trailer_spec.rb +16 -0
  40. data/spec/spec_helper.rb +20 -0
  41. data/spec/support/responses/account_response.rb +27 -0
  42. data/spec/support/responses/authentication_response.rb +19 -0
  43. data/spec/support/responses/configuration_response.rb +32 -0
  44. data/spec/support/responses/credits_collection_response.rb +19 -0
  45. data/spec/support/responses/credits_response.rb +29 -0
  46. data/spec/support/responses/error_response.rb +12 -0
  47. data/spec/support/responses/guest_account_response.rb +21 -0
  48. data/spec/support/responses/movie_collection_resource_response.rb +36 -0
  49. data/spec/support/responses/movie_collection_response.rb +20 -0
  50. data/spec/support/responses/movie_response.rb +67 -0
  51. data/spec/support/responses/request_token_response.rb +21 -0
  52. data/spec/support/responses/session_response.rb +19 -0
  53. metadata +239 -0
@@ -0,0 +1,36 @@
1
+ class MovieCollectionResourceResponse
2
+
3
+ attr_accessor :adult, :backdrop_path, :id, :original_title, :release_date, :poster_path, :popularity, :title, :vote_average, :vote_count
4
+
5
+ def initialize
6
+ self.adult = false
7
+ self.backdrop_path = "/tori_black.jpg"
8
+ self.id = 550
9
+ self.original_title = "Original Title"
10
+ self.release_date = "1999-10-14"
11
+ self.poster_path = "belladonna.jpeg"
12
+ self.popularity = 4.5
13
+ self.title = "Title goes here"
14
+ self.vote_average = 5.5
15
+ self.vote_count = 1234
16
+ end
17
+
18
+ def to_hash
19
+ {
20
+ adult: adult,
21
+ backdrop_path: backdrop_path,
22
+ id: id,
23
+ original_title: original_title,
24
+ release_date: release_date,
25
+ poster_path: poster_path,
26
+ popularity: popularity,
27
+ title: title,
28
+ vote_average: vote_average,
29
+ vote_count: vote_count
30
+ }
31
+ end
32
+
33
+ def to_json
34
+ to_hash.to_json
35
+ end
36
+ end
@@ -0,0 +1,20 @@
1
+ class MovieCollectionResponse
2
+
3
+ attr_accessor :results, :page, :total_pages, :total_results
4
+
5
+ def initialize
6
+ self.results = [MovieCollectionResourceResponse.new]
7
+ self.page = 1
8
+ self.total_pages = 1
9
+ self.total_results = results.size
10
+ end
11
+
12
+ def to_json
13
+ {
14
+ page: page,
15
+ results: results.map(&:to_hash),
16
+ total_pages: total_pages,
17
+ total_results: total_results
18
+ }.to_json
19
+ end
20
+ end
@@ -0,0 +1,67 @@
1
+ class MovieResponse
2
+ attr_accessor :adult, :backdrop_path, :belongs_to_collection, :budget, :genres, :homepage, :id, :imdb_id, :original_title,
3
+ :overview, :popularity, :poster_path, :production_companies, :production_countries, :release_date,
4
+ :revenue, :runtime, :spoken_languages, :status, :tagline, :title, :vote_average, :vote_count, :releases, :trailers
5
+
6
+ def initialize
7
+ self.adult = false
8
+ self.backdrop_path = "/tori_black.jpg"
9
+ self.belongs_to_collection = nil
10
+ self.budget = 63000000
11
+ self.genres = [ { id: 28, name: "Action" } ]
12
+ self.homepage = "http://www.google.com"
13
+ self.id = 550
14
+ self.imdb_id = "tt0137523"
15
+ self.original_title = "Original Title"
16
+ self.overview = "The overview goes here..."
17
+ self.popularity = 4.5
18
+ self.poster_path = "belladonna.jpeg"
19
+ self.production_companies = [ { name: "19th Century Foxxx", id: 25 } ]
20
+ self.production_countries = [ { iso_3166_1: "DE", name: "Germany" } ]
21
+ self.release_date = "1999-10-14"
22
+ self.revenue = 100853753
23
+ self.runtime = 139
24
+ self.spoken_languages = [ { iso_639_1: "en", name: "English" } ]
25
+ self.status = "Released"
26
+ self.tagline = "Aqui tem um bando de louco...."
27
+ self.title = "Title goes here"
28
+ self.vote_average = 5.5
29
+ self.vote_count = 1234
30
+ self.releases = { countries: [ { iso_3166_1: "US", certification: "R", release_date: "1999-10-14" } ] }
31
+ self.trailers = { quicktime: [], youtube: [ { name: "Trailer 1", size: "HD", source: "SUXWAEX2jlg", type: "Trailer" } ] }
32
+ end
33
+
34
+ def to_hash
35
+ {
36
+ adult: adult,
37
+ backdrop_path: backdrop_path,
38
+ belongs_to_collection: belongs_to_collection,
39
+ budget: budget,
40
+ genres: genres,
41
+ homepage: homepage,
42
+ id: id,
43
+ imdb_id: imdb_id,
44
+ original_title: original_title,
45
+ overview: overview,
46
+ popularity: popularity,
47
+ poster_path: poster_path,
48
+ production_companies: production_companies,
49
+ production_countries: production_countries,
50
+ release_date: release_date,
51
+ revenue: revenue,
52
+ runtime: runtime,
53
+ spoken_languages: spoken_languages,
54
+ status: status,
55
+ tagline: tagline,
56
+ title: title,
57
+ vote_average: vote_average,
58
+ vote_count: vote_count,
59
+ releases: releases,
60
+ trailers: trailers
61
+ }
62
+ end
63
+
64
+ def to_json
65
+ to_hash.to_json
66
+ end
67
+ end
@@ -0,0 +1,21 @@
1
+ class RequestTokenResponse
2
+ attr_accessor :expires_at, :request_token, :success
3
+
4
+ def initialize
5
+ self.expires_at = "2012-02-09 19:50:25 UTC"
6
+ self.request_token = "641bf16c663db167c6cffcdff41126039d4445bf"
7
+ self.success = true
8
+ end
9
+
10
+ def to_hash
11
+ {
12
+ expires_at: expires_at,
13
+ request_token: request_token,
14
+ success: success
15
+ }
16
+ end
17
+
18
+ def to_json
19
+ to_hash.to_json
20
+ end
21
+ end
@@ -0,0 +1,19 @@
1
+ class SessionResponse
2
+ attr_accessor :session_id, :success
3
+
4
+ def initialize
5
+ self.session_id = "80b2bf99520cd795ff54e31af97917bc9e3a7c8c"
6
+ self.success = true
7
+ end
8
+
9
+ def to_hash
10
+ {
11
+ session_id: session_id,
12
+ success: success
13
+ }
14
+ end
15
+
16
+ def to_json
17
+ to_hash.to_json
18
+ end
19
+ end
metadata ADDED
@@ -0,0 +1,239 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: enceladus
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Vinicius Osiro
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-08-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rest-client
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 1.7.2
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.7.2
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: 1.7.2
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 1.7.2
33
+ - !ruby/object:Gem::Dependency
34
+ name: bundler
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '1.6'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.6'
47
+ - !ruby/object:Gem::Dependency
48
+ name: rake
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '10.1'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '10.1'
61
+ - !ruby/object:Gem::Dependency
62
+ name: byebug
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.0'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '3.0'
75
+ - !ruby/object:Gem::Dependency
76
+ name: rspec
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '3.0'
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: 3.0.0
85
+ type: :development
86
+ prerelease: false
87
+ version_requirements: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '3.0'
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: 3.0.0
95
+ - !ruby/object:Gem::Dependency
96
+ name: webmock
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '1.18'
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 1.18.0
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '1.18'
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: 1.18.0
115
+ - !ruby/object:Gem::Dependency
116
+ name: coveralls
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: 0.7.1
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: 0.7.0
125
+ type: :development
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: 0.7.1
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: 0.7.0
135
+ description: Ruby wrapper for the The Movie Database API for all endpoints of v3
136
+ email:
137
+ - vinicius.osiro@gmail.com
138
+ executables: []
139
+ extensions: []
140
+ extra_rdoc_files: []
141
+ files:
142
+ - ".gitignore"
143
+ - ".rspec"
144
+ - ".ruby-gemset"
145
+ - ".ruby-version"
146
+ - ".travis.yml"
147
+ - Gemfile
148
+ - LICENSE.txt
149
+ - README.md
150
+ - Rakefile
151
+ - enceladus.gemspec
152
+ - lib/enceladus.rb
153
+ - lib/enceladus/configuration/api.rb
154
+ - lib/enceladus/configuration/image.rb
155
+ - lib/enceladus/exceptions.rb
156
+ - lib/enceladus/models/account.rb
157
+ - lib/enceladus/models/api_paginated_collection.rb
158
+ - lib/enceladus/models/api_resource.rb
159
+ - lib/enceladus/models/cast.rb
160
+ - lib/enceladus/models/genre.rb
161
+ - lib/enceladus/models/guest_account.rb
162
+ - lib/enceladus/models/movie.rb
163
+ - lib/enceladus/models/movie_collection.rb
164
+ - lib/enceladus/models/production_company.rb
165
+ - lib/enceladus/models/production_country.rb
166
+ - lib/enceladus/models/release.rb
167
+ - lib/enceladus/models/spoken_language.rb
168
+ - lib/enceladus/models/you_tube_trailer.rb
169
+ - lib/enceladus/requester.rb
170
+ - lib/enceladus/version.rb
171
+ - spec/enceladus/configuration/api_spec.rb
172
+ - spec/enceladus/configuration/image_spec.rb
173
+ - spec/enceladus/enceladus_spec.rb
174
+ - spec/enceladus/models/account_spec.rb
175
+ - spec/enceladus/models/cast_spec.rb
176
+ - spec/enceladus/models/guest_account_spec.rb
177
+ - spec/enceladus/models/movie_collection_spec.rb
178
+ - spec/enceladus/models/movie_spec.rb
179
+ - spec/enceladus/models/you_tube_trailer_spec.rb
180
+ - spec/spec_helper.rb
181
+ - spec/support/responses/account_response.rb
182
+ - spec/support/responses/authentication_response.rb
183
+ - spec/support/responses/configuration_response.rb
184
+ - spec/support/responses/credits_collection_response.rb
185
+ - spec/support/responses/credits_response.rb
186
+ - spec/support/responses/error_response.rb
187
+ - spec/support/responses/guest_account_response.rb
188
+ - spec/support/responses/movie_collection_resource_response.rb
189
+ - spec/support/responses/movie_collection_response.rb
190
+ - spec/support/responses/movie_response.rb
191
+ - spec/support/responses/request_token_response.rb
192
+ - spec/support/responses/session_response.rb
193
+ homepage: https://github.com/osiro/enceladus
194
+ licenses:
195
+ - MIT
196
+ metadata: {}
197
+ post_install_message:
198
+ rdoc_options: []
199
+ require_paths:
200
+ - lib
201
+ required_ruby_version: !ruby/object:Gem::Requirement
202
+ requirements:
203
+ - - ">="
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
206
+ required_rubygems_version: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - ">="
209
+ - !ruby/object:Gem::Version
210
+ version: '0'
211
+ requirements: []
212
+ rubyforge_project:
213
+ rubygems_version: 2.2.2
214
+ signing_key:
215
+ specification_version: 4
216
+ summary: Ruby wrapper for the The Movie Database API v3
217
+ test_files:
218
+ - spec/enceladus/configuration/api_spec.rb
219
+ - spec/enceladus/configuration/image_spec.rb
220
+ - spec/enceladus/enceladus_spec.rb
221
+ - spec/enceladus/models/account_spec.rb
222
+ - spec/enceladus/models/cast_spec.rb
223
+ - spec/enceladus/models/guest_account_spec.rb
224
+ - spec/enceladus/models/movie_collection_spec.rb
225
+ - spec/enceladus/models/movie_spec.rb
226
+ - spec/enceladus/models/you_tube_trailer_spec.rb
227
+ - spec/spec_helper.rb
228
+ - spec/support/responses/account_response.rb
229
+ - spec/support/responses/authentication_response.rb
230
+ - spec/support/responses/configuration_response.rb
231
+ - spec/support/responses/credits_collection_response.rb
232
+ - spec/support/responses/credits_response.rb
233
+ - spec/support/responses/error_response.rb
234
+ - spec/support/responses/guest_account_response.rb
235
+ - spec/support/responses/movie_collection_resource_response.rb
236
+ - spec/support/responses/movie_collection_response.rb
237
+ - spec/support/responses/movie_response.rb
238
+ - spec/support/responses/request_token_response.rb
239
+ - spec/support/responses/session_response.rb