thanos 0.0.1 → 0.5.0

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 (76) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +15 -0
  3. data/.hound.yml +64 -0
  4. data/.rspec +2 -0
  5. data/.rubocop.yml +2 -0
  6. data/.travis.yml +4 -0
  7. data/CODE_OF_CONDUCT.md +13 -0
  8. data/Gemfile +4 -0
  9. data/LICENSE.txt +17 -18
  10. data/README.md +93 -16
  11. data/Rakefile +16 -0
  12. data/bin/console +13 -0
  13. data/bin/setup +7 -0
  14. data/lib/thanos.rb +9 -4
  15. data/lib/thanos/api/authentication.rb +19 -0
  16. data/lib/thanos/api/client.rb +26 -0
  17. data/lib/thanos/api/response.rb +16 -0
  18. data/lib/thanos/authentication.rb +5 -0
  19. data/lib/thanos/client.rb +21 -0
  20. data/lib/thanos/factories/character.rb +17 -0
  21. data/lib/thanos/factories/comic.rb +17 -0
  22. data/lib/thanos/factories/creator.rb +17 -0
  23. data/lib/thanos/factories/date.rb +17 -0
  24. data/lib/thanos/factories/event.rb +17 -0
  25. data/lib/thanos/factories/image.rb +17 -0
  26. data/lib/thanos/factories/item/character.rb +19 -0
  27. data/lib/thanos/factories/item/comic.rb +19 -0
  28. data/lib/thanos/factories/item/creator.rb +19 -0
  29. data/lib/thanos/factories/item/event.rb +23 -0
  30. data/lib/thanos/factories/item/series.rb +23 -0
  31. data/lib/thanos/factories/item/story.rb +19 -0
  32. data/lib/thanos/factories/price.rb +17 -0
  33. data/lib/thanos/factories/series.rb +17 -0
  34. data/lib/thanos/factories/story.rb +17 -0
  35. data/lib/thanos/factories/text_object.rb +17 -0
  36. data/lib/thanos/factories/thumbnail.rb +22 -0
  37. data/lib/thanos/factories/url.rb +17 -0
  38. data/lib/thanos/finders/character_finder.rb +28 -0
  39. data/lib/thanos/finders/comic_finder.rb +30 -0
  40. data/lib/thanos/finders/creator_finder.rb +31 -0
  41. data/lib/thanos/finders/event_finder.rb +26 -0
  42. data/lib/thanos/finders/finder_validator.rb +15 -0
  43. data/lib/thanos/finders/series_finder.rb +24 -0
  44. data/lib/thanos/finders/story_finder.rb +24 -0
  45. data/lib/thanos/mappers/character_data_mapper.rb +26 -0
  46. data/lib/thanos/mappers/comic_data_mapper.rb +41 -0
  47. data/lib/thanos/mappers/creator_data_mapper.rb +30 -0
  48. data/lib/thanos/mappers/event_data_mapper.rb +31 -0
  49. data/lib/thanos/mappers/mappable.rb +100 -0
  50. data/lib/thanos/mappers/series_data_mapper.rb +33 -0
  51. data/lib/thanos/mappers/story_data_mapper.rb +25 -0
  52. data/lib/thanos/resources/character.rb +19 -0
  53. data/lib/thanos/resources/comic.rb +27 -0
  54. data/lib/thanos/resources/creator.rb +13 -0
  55. data/lib/thanos/resources/date.rb +10 -0
  56. data/lib/thanos/resources/event.rb +26 -0
  57. data/lib/thanos/resources/image.rb +9 -0
  58. data/lib/thanos/resources/item/character.rb +20 -0
  59. data/lib/thanos/resources/item/comic.rb +20 -0
  60. data/lib/thanos/resources/item/creator.rb +19 -0
  61. data/lib/thanos/resources/item/event.rb +20 -0
  62. data/lib/thanos/resources/item/series.rb +18 -0
  63. data/lib/thanos/resources/item/story.rb +20 -0
  64. data/lib/thanos/resources/price.rb +10 -0
  65. data/lib/thanos/resources/series.rb +23 -0
  66. data/lib/thanos/resources/story.rb +18 -0
  67. data/lib/thanos/resources/text_object.rb +11 -0
  68. data/lib/thanos/resources/thumbnail.rb +11 -0
  69. data/lib/thanos/resources/url.rb +10 -0
  70. data/lib/thanos/response_holder.rb +10 -0
  71. data/lib/thanos/string_actions.rb +7 -0
  72. data/lib/thanos/version.rb +1 -1
  73. data/spikes/call_marvel_api.rb +50 -0
  74. data/spikes/call_marvel_via_thanos.rb +28 -0
  75. data/thanos.gemspec +44 -0
  76. metadata +171 -26
@@ -0,0 +1,10 @@
1
+ module Thanos
2
+ class Date
3
+ attr_reader :type, :date
4
+
5
+ def initialize(data)
6
+ @type = data['type']
7
+ @date = ::Date.parse(data['date'])
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,26 @@
1
+ module Thanos
2
+ class Event
3
+ attr_reader :id, :title, :description, :resource_uri, :start, :end,
4
+ :urls, :thumbnail, :series, :stories, :events, :comics, :characters,
5
+ :creators, :next, :previous
6
+
7
+ def initialize(args)
8
+ @creators = args[:creators]
9
+ @characters = args[:characters]
10
+ @series = args[:series]
11
+ @stories = args[:stories]
12
+ @events = args[:events]
13
+ @comics = args[:comics]
14
+ @urls = args[:urls]
15
+ @thumbnail = args[:thumbnail]
16
+ @start = args[:start]
17
+ @end = args[:_end]
18
+ @next = args[:next]
19
+ @previous = args[:previous]
20
+
21
+ args[:attributes].each do |attribute, value|
22
+ instance_variable_set("@#{attribute}", value)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,9 @@
1
+ module Thanos
2
+ class Image
3
+ attr_reader :full_path
4
+
5
+ def initialize(data)
6
+ @full_path = data['path'] + '.' + data['extension']
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,20 @@
1
+ module Thanos
2
+ module Item
3
+ class Character
4
+ attr_reader :id, :name, :resource_uri, :type
5
+
6
+ def initialize(data)
7
+ @id = data['id'].to_i
8
+ @name = data['name']
9
+ @resource_uri = data['resourceURI']
10
+ @type = data['type'] || nil
11
+ end
12
+
13
+ def complete
14
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
15
+ results = Thanos::ResponseHolder.new(response).results
16
+ Thanos::Factory::Character.new(results).build
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ module Thanos
2
+ module Item
3
+ class Comic
4
+ attr_reader :id, :name, :resource_uri, :type
5
+
6
+ def initialize(data)
7
+ @id = data['id'].to_i
8
+ @name = data['name']
9
+ @resource_uri = data['resourceURI']
10
+ @type = data['type'] || nil
11
+ end
12
+
13
+ def complete
14
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
15
+ results = Thanos::ResponseHolder.new(response).results
16
+ Thanos::Factory::Comic.new(results).build
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,19 @@
1
+ module Thanos
2
+ module Item
3
+ class Creator
4
+ attr_reader :name, :resource_uri, :role
5
+
6
+ def initialize(data)
7
+ @name = data['name']
8
+ @resource_uri = data['resourceURI']
9
+ @role = data['role']
10
+ end
11
+
12
+ def complete
13
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
14
+ results = Thanos::ResponseHolder.new(response).results
15
+ Thanos::Factory::Creator.new(results).build
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,20 @@
1
+ module Thanos
2
+ module Item
3
+ class Event
4
+ attr_reader :id, :name, :resource_uri, :type
5
+
6
+ def initialize(data)
7
+ @id = data['id'].to_i
8
+ @name = data['name']
9
+ @resource_uri = data['resourceURI']
10
+ @type = data['type'] || nil
11
+ end
12
+
13
+ def complete
14
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
15
+ results = Thanos::ResponseHolder.new(response).results
16
+ Thanos::Factory::Event.new(results).build
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,18 @@
1
+ module Thanos
2
+ module Item
3
+ class Series
4
+ attr_reader :name, :resource_uri
5
+
6
+ def initialize(data)
7
+ @name = data['name']
8
+ @resource_uri = data['resourceURI']
9
+ end
10
+
11
+ def complete
12
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
13
+ results = Thanos::ResponseHolder.new(response).results
14
+ Thanos::Factory::Series.new(results).build
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,20 @@
1
+ module Thanos
2
+ module Item
3
+ class Story
4
+ attr_reader :id, :name, :resource_uri, :type
5
+
6
+ def initialize(data)
7
+ @id = data['id'].to_i
8
+ @name = data['name']
9
+ @resource_uri = data['resourceURI']
10
+ @type = data['type'] || nil
11
+ end
12
+
13
+ def complete
14
+ response = Thanos::API::Response.new(RestClient.get(@resource_uri))
15
+ results = Thanos::ResponseHolder.new(response).results
16
+ Thanos::Factory::Story.new(results).build
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,10 @@
1
+ module Thanos
2
+ class Price
3
+ attr_reader :type, :price
4
+
5
+ def initialize(data)
6
+ @type = data['type']
7
+ @price = data['price']
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,23 @@
1
+ module Thanos
2
+ class Series
3
+ attr_reader :id, :title, :description, :resource_uri, :start_year,
4
+ :end_year, :rating, :type, :urls, :thumbnail, :comics, :stories,
5
+ :events, :creators, :characters, :next, :previous
6
+
7
+ def initialize(args)
8
+ @stories = args[:stories]
9
+ @events = args[:events]
10
+ @creators = args[:creators]
11
+ @characters = args[:characters]
12
+ @comics = args[:comics]
13
+ @urls = args[:urls]
14
+ @thumbnail = args[:thumbnail]
15
+ @next = args[:next_series]
16
+ @previous = args[:previous_series]
17
+
18
+ args[:attributes].each do |attribute, value|
19
+ instance_variable_set("@#{attribute}", value)
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,18 @@
1
+ module Thanos
2
+ class Story
3
+ attr_reader :title, :description, :type, :resource_uri, :thumbnail,
4
+ :creators, :characters, :events, :series, :comics
5
+
6
+ def initialize(args)
7
+ @characters = args[:characters]
8
+ @creators = args[:creators]
9
+ @events = args[:events]
10
+ @series = args[:series]
11
+ @comics = args[:comics]
12
+
13
+ args[:attributes].each do |attribute, value|
14
+ instance_variable_set("@#{attribute}", value)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,11 @@
1
+ module Thanos
2
+ class TextObject
3
+ attr_reader :type, :language, :text
4
+
5
+ def initialize(data)
6
+ @type = data['type']
7
+ @language = data['language']
8
+ @text = data['text']
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ module Thanos
2
+ class Thumbnail
3
+ attr_reader :path, :extension, :full_path
4
+
5
+ def initialize(data)
6
+ @path = data['path']
7
+ @extension = data['extension']
8
+ @full_path = @path + '.' + @extension
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,10 @@
1
+ module Thanos
2
+ class Url
3
+ attr_reader :type, :url
4
+
5
+ def initialize(data)
6
+ @type = data['type']
7
+ @url = data['url']
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module Thanos
2
+ class ResponseHolder
3
+ attr_reader :results
4
+
5
+ def initialize(response)
6
+ data = response.data
7
+ @results = data['results'].first
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,7 @@
1
+ module Thanos
2
+ class StringActions
3
+ def self.parameterize(string)
4
+ string.split(/(?=[A-Z])/).join('_').downcase
5
+ end
6
+ end
7
+ end
@@ -1,3 +1,3 @@
1
1
  module Thanos
2
- VERSION = '0.0.1'
2
+ VERSION = '0.5.0'
3
3
  end
@@ -0,0 +1,50 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ require 'yaml'
4
+ require 'net/http'
5
+ require 'digest/md5'
6
+
7
+ # http://developer.marvel.com/documentation/authorization
8
+ # Requests on the server side must be of the form:
9
+ # http://gateway.marvel.com/v1/comics/?ts=1&apikey=1234&hash=ffd275c5130566a2916217b101f26150
10
+
11
+ # `ts` is a timestamp, but it can apparently just be some string which can
12
+ # change on a request-by-request basis.
13
+ # `apikey` is the public API key
14
+ # `hash` is an md5 digest of the timestamp parameter, the private key and
15
+ # the public key.
16
+
17
+ # This test file requires an api_key.yml file with the following:
18
+ # public_api_key: value
19
+ # private_api_key: value
20
+ # This file will not be placed in version control since it will contain the
21
+ # private key.
22
+
23
+ api_key_file = "#{File.dirname(__FILE__)}/api_keys.yml"
24
+
25
+ marvel_public_key = YAML.load_file(api_key_file)['public_api_key']
26
+ marvel_private_key = YAML.load_file(api_key_file)['private_api_key']
27
+
28
+ endpoint = 'http://gateway.marvel.com/v1/public/'
29
+
30
+ timestamp = '1'
31
+
32
+ ts_param = '&ts='
33
+ hash_param = '&hash='
34
+ api_param = '&apikey='
35
+
36
+ search_term = 'characters?name=Spider-Man'
37
+
38
+ url = endpoint + search_term + ts_param + timestamp + api_param + marvel_public_key + hash_param
39
+
40
+ hash = timestamp + marvel_private_key + marvel_public_key
41
+ digest = Digest::MD5.hexdigest(hash)
42
+
43
+ url += digest
44
+
45
+ puts url
46
+
47
+ response = Net::HTTP.get_response(URI.parse(url))
48
+ response_text = response.body
49
+
50
+ puts response_text
@@ -0,0 +1,28 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
4
+
5
+ require 'yaml'
6
+ require 'thanos'
7
+
8
+ api_key_file = "#{File.dirname(__FILE__)}/api_keys.yml"
9
+
10
+ public_key = YAML.load_file(api_key_file)['public_api_key']
11
+ private_key = YAML.load_file(api_key_file)['private_api_key']
12
+
13
+ Thanos.authenticate do |key|
14
+ key.public_api_key = public_key
15
+ key.private_api_key = private_key
16
+ end
17
+
18
+ client = Thanos::Client.new
19
+
20
+ hulk = client.characters.find_by_name 'Hulk'
21
+ puts hulk.id
22
+ puts hulk.name
23
+ puts hulk.description
24
+ puts hulk.resource_uri
25
+ puts hulk.urls.first.url
26
+ puts hulk.thumbnail.full_path
27
+
28
+ avengers = client.series.find_by_name 'The Avengers'
@@ -0,0 +1,44 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'thanos/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'thanos'
8
+ spec.version = Thanos::VERSION
9
+ spec.authors = ['Jeff Nyman']
10
+ spec.email = ['jeffnyman@gmail.com']
11
+
12
+ spec.summary = 'Marvel Comics API Entity Wrapper'
13
+ spec.description = '
14
+ The Thanos gem allows you to consume the API provided by the Marvel
15
+ development team, querying on various aspects of the entire Marvel
16
+ universe.'
17
+ spec.homepage = 'https://github.com/jnyman/thanos'
18
+ spec.license = 'MIT'
19
+
20
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
21
+ spec.bindir = 'exe'
22
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
+ spec.require_paths = ['lib']
24
+
25
+ spec.required_ruby_version = '>= 2.0.0'
26
+
27
+ spec.add_development_dependency 'bundler', '~> 1.10'
28
+ spec.add_development_dependency 'rake', '~> 10.0'
29
+ spec.add_development_dependency 'rspec'
30
+ spec.add_development_dependency 'pry'
31
+ spec.add_development_dependency 'rubocop'
32
+ spec.add_development_dependency 'simplecov'
33
+ spec.add_development_dependency 'webmock'
34
+
35
+ spec.add_runtime_dependency 'rest-client'
36
+
37
+ spec.post_install_message = %{
38
+ (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
39
+
40
+ Thanos #{Thanos::VERSION} has been installed.
41
+
42
+ (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
43
+ }
44
+ end
metadata CHANGED
@@ -1,91 +1,236 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thanos
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Nyman
8
8
  autorequire:
9
- bindir: bin
9
+ bindir: exe
10
10
  cert_chain: []
11
- date: 2013-11-27 00:00:00.000000000 Z
11
+ date: 2015-08-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.3'
19
+ version: '1.10'
20
20
  type: :development
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: '1.3'
26
+ version: '1.10'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
32
46
  - !ruby/object:Gem::Version
33
47
  version: '0'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - '>='
52
+ - - ">="
39
53
  - !ruby/object:Gem::Version
40
54
  version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
- name: rspec
56
+ name: pry
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: simplecov
43
85
  requirement: !ruby/object:Gem::Requirement
44
86
  requirements:
45
- - - ~>
87
+ - - ">="
46
88
  - !ruby/object:Gem::Version
47
- version: '2.0'
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: webmock
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
48
104
  type: :development
49
105
  prerelease: false
50
106
  version_requirements: !ruby/object:Gem::Requirement
51
107
  requirements:
52
- - - ~>
108
+ - - ">="
53
109
  - !ruby/object:Gem::Version
54
- version: '2.0'
55
- description: Provides a semantic DSL to construct a fluent interface for test execution
56
- libraries based on the Capybara API.
57
- email: jeffnyman@gmail.com
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rest-client
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ description: |2-
126
+
127
+ The Thanos gem allows you to consume the API provided by the Marvel
128
+ development team, querying on various aspects of the entire Marvel
129
+ universe.
130
+ email:
131
+ - jeffnyman@gmail.com
58
132
  executables: []
59
133
  extensions: []
60
134
  extra_rdoc_files: []
61
135
  files:
62
- - lib/thanos/version.rb
63
- - lib/thanos.rb
136
+ - ".gitignore"
137
+ - ".hound.yml"
138
+ - ".rspec"
139
+ - ".rubocop.yml"
140
+ - ".travis.yml"
141
+ - CODE_OF_CONDUCT.md
142
+ - Gemfile
64
143
  - LICENSE.txt
65
144
  - README.md
145
+ - Rakefile
146
+ - bin/console
147
+ - bin/setup
148
+ - lib/thanos.rb
149
+ - lib/thanos/api/authentication.rb
150
+ - lib/thanos/api/client.rb
151
+ - lib/thanos/api/response.rb
152
+ - lib/thanos/authentication.rb
153
+ - lib/thanos/client.rb
154
+ - lib/thanos/factories/character.rb
155
+ - lib/thanos/factories/comic.rb
156
+ - lib/thanos/factories/creator.rb
157
+ - lib/thanos/factories/date.rb
158
+ - lib/thanos/factories/event.rb
159
+ - lib/thanos/factories/image.rb
160
+ - lib/thanos/factories/item/character.rb
161
+ - lib/thanos/factories/item/comic.rb
162
+ - lib/thanos/factories/item/creator.rb
163
+ - lib/thanos/factories/item/event.rb
164
+ - lib/thanos/factories/item/series.rb
165
+ - lib/thanos/factories/item/story.rb
166
+ - lib/thanos/factories/price.rb
167
+ - lib/thanos/factories/series.rb
168
+ - lib/thanos/factories/story.rb
169
+ - lib/thanos/factories/text_object.rb
170
+ - lib/thanos/factories/thumbnail.rb
171
+ - lib/thanos/factories/url.rb
172
+ - lib/thanos/finders/character_finder.rb
173
+ - lib/thanos/finders/comic_finder.rb
174
+ - lib/thanos/finders/creator_finder.rb
175
+ - lib/thanos/finders/event_finder.rb
176
+ - lib/thanos/finders/finder_validator.rb
177
+ - lib/thanos/finders/series_finder.rb
178
+ - lib/thanos/finders/story_finder.rb
179
+ - lib/thanos/mappers/character_data_mapper.rb
180
+ - lib/thanos/mappers/comic_data_mapper.rb
181
+ - lib/thanos/mappers/creator_data_mapper.rb
182
+ - lib/thanos/mappers/event_data_mapper.rb
183
+ - lib/thanos/mappers/mappable.rb
184
+ - lib/thanos/mappers/series_data_mapper.rb
185
+ - lib/thanos/mappers/story_data_mapper.rb
186
+ - lib/thanos/resources/character.rb
187
+ - lib/thanos/resources/comic.rb
188
+ - lib/thanos/resources/creator.rb
189
+ - lib/thanos/resources/date.rb
190
+ - lib/thanos/resources/event.rb
191
+ - lib/thanos/resources/image.rb
192
+ - lib/thanos/resources/item/character.rb
193
+ - lib/thanos/resources/item/comic.rb
194
+ - lib/thanos/resources/item/creator.rb
195
+ - lib/thanos/resources/item/event.rb
196
+ - lib/thanos/resources/item/series.rb
197
+ - lib/thanos/resources/item/story.rb
198
+ - lib/thanos/resources/price.rb
199
+ - lib/thanos/resources/series.rb
200
+ - lib/thanos/resources/story.rb
201
+ - lib/thanos/resources/text_object.rb
202
+ - lib/thanos/resources/thumbnail.rb
203
+ - lib/thanos/resources/url.rb
204
+ - lib/thanos/response_holder.rb
205
+ - lib/thanos/string_actions.rb
206
+ - lib/thanos/version.rb
207
+ - spikes/call_marvel_api.rb
208
+ - spikes/call_marvel_via_thanos.rb
209
+ - thanos.gemspec
66
210
  homepage: https://github.com/jnyman/thanos
67
211
  licenses:
68
212
  - MIT
69
213
  metadata: {}
70
- post_install_message:
214
+ post_install_message: "\n(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)\n\n
215
+ \ Thanos 0.5.0 has been installed.\n\n(::) (::) (::) (::) (::) (::) (::) (::) (::)
216
+ (::) (::) (::)\n "
71
217
  rdoc_options: []
72
218
  require_paths:
73
219
  - lib
74
220
  required_ruby_version: !ruby/object:Gem::Requirement
75
221
  requirements:
76
- - - '>='
222
+ - - ">="
77
223
  - !ruby/object:Gem::Version
78
- version: 1.9.3
224
+ version: 2.0.0
79
225
  required_rubygems_version: !ruby/object:Gem::Requirement
80
226
  requirements:
81
- - - '>='
227
+ - - ">="
82
228
  - !ruby/object:Gem::Version
83
229
  version: '0'
84
230
  requirements: []
85
231
  rubyforge_project:
86
- rubygems_version: 2.0.3
232
+ rubygems_version: 2.4.8
87
233
  signing_key:
88
234
  specification_version: 4
89
- summary: A Semantically Clean Fluent Interface Test Framework
235
+ summary: Marvel Comics API Entity Wrapper
90
236
  test_files: []
91
- has_rdoc: