sucker 1.5.0.1 → 1.6.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 (41) hide show
  1. data/README.md +11 -12
  2. data/lib/sucker.rb +12 -9
  3. data/lib/sucker/parameters.rb +5 -3
  4. data/lib/sucker/request.rb +27 -27
  5. data/lib/sucker/version.rb +1 -1
  6. data/spec/sucker/request_spec.rb +10 -15
  7. data/spec/sucker/response_spec.rb +2 -2
  8. data/spec/support/amazon_credentials.rb +6 -2
  9. metadata +62 -71
  10. data/lib/sucker.rbc +0 -265
  11. data/lib/sucker/hash.rbc +0 -914
  12. data/lib/sucker/parameters.rbc +0 -843
  13. data/lib/sucker/request.rbc +0 -2315
  14. data/lib/sucker/response.rbc +0 -1229
  15. data/lib/sucker/version.rbc +0 -130
  16. data/spec/fixtures/cassette_library/cartcreate/e3e2f9b71afba67619a95c7178178595.yml +0 -26
  17. data/spec/fixtures/cassette_library/itemlookup/4908294851a4df13269707e9f6507f91.yml +0 -26
  18. data/spec/fixtures/cassette_library/itemlookup/5670727fa0cb9f30464e41aa1346c91c.yml +0 -26
  19. data/spec/fixtures/cassette_library/itemlookup/6e6b1dc74378e2e1118713e254191fc0.yml +0 -26
  20. data/spec/fixtures/cassette_library/itemlookup/76f548183c2804a74d0ed7e0bfbd6d4a.yml +0 -26
  21. data/spec/fixtures/cassette_library/itemlookup/8286b763b726d3dc1fc992023e639b9b.yml +0 -151
  22. data/spec/fixtures/cassette_library/itemlookup/9d82768fe80b09c4a3697c608e5edebe.yml +0 -26
  23. data/spec/fixtures/cassette_library/itemlookup/d3d6ea869d31173526f48907bff752a3.yml +0 -26
  24. data/spec/fixtures/cassette_library/itemlookup/d8ad346710c3b479febcf58e67fea7ef.yml +0 -26
  25. data/spec/fixtures/cassette_library/itemsearch/295b9eadfb69d55e1c0acb06220e0b6e.yml +0 -26
  26. data/spec/fixtures/cassette_library/itemsearch/4c1e50d070821f4eb9fe3961aba105ee.yml +0 -26
  27. data/spec/fixtures/cassette_library/itemsearch/5a15430433ab94c70466eb61c919a028.yml +0 -26
  28. data/spec/fixtures/cassette_library/itemsearch/8fd40b929a9ed46e2b38ac905c8ab53a.yml +0 -26
  29. data/spec/fixtures/cassette_library/sellerlistingsearch/cb25caadce96ac3de70b69b76431d730.yml +0 -26
  30. data/spec/fixtures/cassette_library/sellerlistingsearch/e1261838e1754870ffd309dd78eb7374.yml +0 -26
  31. data/spec/spec_helper.rbc +0 -230
  32. data/spec/sucker/hash_spec.rbc +0 -861
  33. data/spec/sucker/parameters_spec.rbc +0 -1475
  34. data/spec/sucker/request_spec.rbc +0 -2754
  35. data/spec/sucker/response_spec.rbc +0 -3627
  36. data/spec/sucker_spec.rbc +0 -287
  37. data/spec/support/amazon.yml +0 -3
  38. data/spec/support/amazon.yml.example +0 -3
  39. data/spec/support/amazon_credentials.rbc +0 -154
  40. data/spec/support/asins.rbc +0 -335
  41. data/spec/support/vcr.rbc +0 -356
data/README.md CHANGED
@@ -5,18 +5,20 @@ Sucker is a Nokogiri-based Ruby wrapper to the [Amazon Product Advertising API](
5
5
 
6
6
  ![Hoover](https://github.com/papercavalier/sucker/raw/master/hoover.jpg)
7
7
 
8
+ Caption: Workers queuing to download data from Amazon.
9
+
8
10
  Usage
9
11
  -----
10
12
 
11
13
  Read the [Amazon API](http://aws.amazon.com/archives/Product%20Advertising%20API).
12
- Skip to the __Operations__ section if in a hurry.
14
+ Check out [these examples](http://relishapp.com/papercavalier/sucker) if in a hurry.
13
15
 
14
16
  Set up.
15
17
 
16
18
  request = Sucker.new(
17
- :locale => :us,
18
- :key => a_key,
19
- :secret => a_secret)
19
+ :locale => :us,
20
+ :key => amazon_key,
21
+ :secret => amazon_secret)
20
22
 
21
23
  Build a request.
22
24
 
@@ -34,7 +36,7 @@ Fulfill a business value.
34
36
 
35
37
  if response.valid?
36
38
  response.each('Item') do |item|
37
- consume item
39
+ consume(item)
38
40
  end
39
41
  end
40
42
 
@@ -57,18 +59,15 @@ To dig further into the response object:
57
59
  response.to_hash,
58
60
  response.xml
59
61
 
60
- To use multiple local IPs on your server, configure the request object like so:
62
+ To use multiple local IPs on your server, configure the request adapter:
61
63
 
62
64
  adapter = request.adapter
63
65
  adapter.socket_local.host = '10.0.0.2'
64
66
 
65
- Browse the public interface of Sucker
66
- [here](http://rdoc.info/github/papercavalier/sucker/master/frames). To see more
67
- advanced usage examples such as twenty-item batch requests and remote cart
68
- manipulation, read [here](http://relishapp.com/papercavalier/sucker).
67
+ [Browse the public interface of Sucker.](http://rdoc.info/github/papercavalier/sucker/master/frames)
69
68
 
70
- Stubbing in Tests
71
- -----------------
69
+ Stubbing Tests
70
+ --------------
72
71
 
73
72
  Try [VCR](http://github.com/myronmarston/vcr).
74
73
 
data/lib/sucker.rb CHANGED
@@ -6,14 +6,17 @@ require 'sucker/response'
6
6
  # Sucker is a Ruby wrapper to the Amazon Product Advertising API.
7
7
  module Sucker
8
8
 
9
- # Initializes a request object.
10
- #
11
- # request = Sucker.new(
12
- # :locale => :us,
13
- # :key => api_key,
14
- # :secret => api_secret)
15
- #
16
- def self.new(args={})
17
- Request.new(args)
9
+ class << self
10
+
11
+ # Initializes a request object.
12
+ #
13
+ # request = Sucker.new(
14
+ # :locale => :us,
15
+ # :key => api_key,
16
+ # :secret => api_secret)
17
+ #
18
+ def new(args={})
19
+ Request.new(args)
20
+ end
18
21
  end
19
22
  end
@@ -3,10 +3,10 @@ module Sucker
3
3
  CURRENT_API_VERSION = '2010-11-01'
4
4
 
5
5
  def initialize
6
- set_up
6
+ populate
7
7
  end
8
8
 
9
- def set_up
9
+ def populate
10
10
  self.store 'Service', 'AWSECommerceService'
11
11
  self.store 'Version', CURRENT_API_VERSION
12
12
  self.store 'Timestamp', timestamp
@@ -17,7 +17,9 @@ module Sucker
17
17
  inject({}) do |hash, kv|
18
18
  k, v = kv
19
19
  v = v.is_a?(Array) ? v.join(',') : v.to_s
20
- hash[k.to_s.split('_').map {|w| w[0, 1] = w[0, 1].upcase; w }.join] = v
20
+ k = k.to_s.split('_').map {|w| w[0, 1] = w[0, 1].upcase; w }.join
21
+ hash[k] = v
22
+
21
23
  hash
22
24
  end
23
25
  end
@@ -14,9 +14,12 @@ module Sucker
14
14
  :fr => 'ecs.amazonaws.fr',
15
15
  :jp => 'ecs.amazonaws.jp' }
16
16
 
17
- # Available Amazon locales.
18
- def self.locales
19
- @locales ||= HOSTS.keys
17
+ class << self
18
+
19
+ # Available Amazon locales.
20
+ def locales
21
+ @locales ||= HOSTS.keys
22
+ end
20
23
  end
21
24
 
22
25
  # The Amazon associate tag.
@@ -37,9 +40,9 @@ module Sucker
37
40
  #
38
41
  # request = Sucker.new(
39
42
  # :locale => :us,
40
- # :key => a_key,
41
- # :secret => a_secret,
42
- # :associate_tag => a_tag)
43
+ # :key => amazon_key,
44
+ # :secret => amazon_secret)
45
+ # :associate_tag => amazon_tag)
43
46
  #
44
47
  def initialize(args={})
45
48
  args.each { |k, v| send("#{k}=", v) }
@@ -66,7 +69,7 @@ module Sucker
66
69
  # response = request.get
67
70
  #
68
71
  def get
69
- response = adapter.get(uri)
72
+ response = adapter.get(url)
70
73
  Response.new(response)
71
74
  end
72
75
 
@@ -75,25 +78,31 @@ module Sucker
75
78
  @parameters ||= Parameters.new
76
79
  end
77
80
 
78
- # Resets parameters and returns itself.
81
+ # Resets parameters and returns self.
79
82
  def reset
80
83
  parameters.clear
81
- parameters.set_up
84
+ parameters.populate
82
85
 
83
86
  self
84
87
  end
85
88
 
86
- # Sets the Amazon API version.
87
- #
88
- # request.version = '2010-06-01'
89
- #
89
+ # The request URL.
90
+ def url
91
+ URI::HTTP.build(
92
+ :host => host,
93
+ :path => '/onca/xml',
94
+ :query => sign(build_query_string)
95
+ )
96
+ end
97
+
98
+ # Sets the Amazon API version timestamp.
90
99
  def version=(version)
91
100
  parameters['Version'] = version
92
101
  end
93
102
 
94
103
  private
95
104
 
96
- def build_query
105
+ def build_query_string
97
106
  parameters.
98
107
  normalize.
99
108
  merge({ 'AWSAccessKeyId' => key,
@@ -103,15 +112,13 @@ module Sucker
103
112
  join('&')
104
113
  end
105
114
 
106
- def build_signed_query
107
- query = build_query
108
-
115
+ def sign(query_string)
109
116
  digest = OpenSSL::Digest::Digest.new('sha256')
110
- string = ['GET', host, '/onca/xml', query].join("\n")
111
- hmac = OpenSSL::HMAC.digest(digest, secret, string)
117
+ url_string = ['GET', host, '/onca/xml', query_string].join("\n")
118
+ hmac = OpenSSL::HMAC.digest(digest, secret, url_string)
112
119
  signature = escape([hmac].pack('m').chomp)
113
120
 
114
- query + '&Signature=' + signature
121
+ query_string + '&Signature=' + signature
115
122
  end
116
123
 
117
124
  def escape(value)
@@ -123,12 +130,5 @@ module Sucker
123
130
  def host
124
131
  HOSTS[locale.to_sym]
125
132
  end
126
-
127
- def uri
128
- URI::HTTP.build(
129
- :host => host,
130
- :path => '/onca/xml',
131
- :query => build_signed_query)
132
- end
133
133
  end
134
134
  end
@@ -1,3 +1,3 @@
1
1
  module Sucker
2
- VERSION = '1.5.0.1'
2
+ VERSION = '1.6.0'
3
3
  end
@@ -44,6 +44,12 @@ module Sucker
44
44
  end
45
45
  end
46
46
 
47
+ describe '#url' do
48
+ it 'builds a URL' do
49
+ request.url.should be_an URI::HTTP
50
+ end
51
+ end
52
+
47
53
  describe '#version=' do
48
54
  it 'sets the Amazon API version' do
49
55
  request.version = 'foo'
@@ -51,9 +57,9 @@ module Sucker
51
57
  end
52
58
  end
53
59
 
54
- describe '#build_query' do
60
+ describe '#build_query_string' do
55
61
  let(:query) do
56
- request.send(:build_query)
62
+ request.send(:build_query_string)
57
63
  end
58
64
 
59
65
  it 'canonicalizes query' do
@@ -70,21 +76,10 @@ module Sucker
70
76
  end
71
77
  end
72
78
 
73
- describe '#build_signed_query' do
74
- let(:query) { request.send(:build_signed_query) }
75
-
76
- it 'includes the key for the current locale' do
77
- request.key = 'foo'
78
- query.should include 'AWSAccessKeyId=foo'
79
- end
80
-
81
- it 'includes the associate tag for the current locale' do
82
- request.associate_tag = 'foo'
83
- query.should include 'AssociateTag=foo'
84
- end
79
+ describe '#sign' do
80
+ let(:query) { request.send(:sign, 'foo=bar') }
85
81
 
86
82
  it 'returns a signed query string' do
87
- query = request.send :build_signed_query
88
83
  query.should include 'Signature='
89
84
  end
90
85
  end
@@ -11,8 +11,8 @@ module Sucker
11
11
  let(:response) do
12
12
  request = Sucker.new(
13
13
  :locale => :us,
14
- :key => amazon['key'],
15
- :secret => amazon['secret'])
14
+ :key => amazon_key,
15
+ :secret => amazon_secret)
16
16
  request << {
17
17
  'Operation' => 'ItemLookup',
18
18
  'IdType' => 'ASIN',
@@ -1,3 +1,7 @@
1
- def amazon
2
- @amazon ||= YAML::load_file(File.dirname(__FILE__) + "/amazon.yml")
1
+ def amazon_key
2
+ ENV['AMAZON_KEY']
3
+ end
4
+
5
+ def amazon_secret
6
+ ENV['AMAZON_SECRET']
3
7
  end
metadata CHANGED
@@ -1,8 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sucker
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 1.5.0.1
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 6
8
+ - 0
9
+ version: 1.6.0
6
10
  platform: ruby
7
11
  authors:
8
12
  - Paper Cavalier
@@ -10,7 +14,7 @@ autorequire:
10
14
  bindir: bin
11
15
  cert_chain: []
12
16
 
13
- date: 2011-04-26 00:00:00 +01:00
17
+ date: 2011-05-31 00:00:00 +01:00
14
18
  default_executable:
15
19
  dependencies:
16
20
  - !ruby/object:Gem::Dependency
@@ -21,6 +25,11 @@ dependencies:
21
25
  requirements:
22
26
  - - ~>
23
27
  - !ruby/object:Gem::Version
28
+ segments:
29
+ - 2
30
+ - 2
31
+ - 0
32
+ - 2
24
33
  version: 2.2.0.2
25
34
  type: :runtime
26
35
  version_requirements: *id001
@@ -32,6 +41,10 @@ dependencies:
32
41
  requirements:
33
42
  - - ~>
34
43
  - !ruby/object:Gem::Version
44
+ segments:
45
+ - 1
46
+ - 4
47
+ - 0
35
48
  version: 1.4.0
36
49
  type: :runtime
37
50
  version_requirements: *id002
@@ -43,29 +56,41 @@ dependencies:
43
56
  requirements:
44
57
  - - ~>
45
58
  - !ruby/object:Gem::Version
59
+ segments:
60
+ - 1
61
+ - 0
62
+ - 0
46
63
  version: 1.0.0
47
64
  type: :development
48
65
  version_requirements: *id003
49
66
  - !ruby/object:Gem::Dependency
50
- name: addressable
67
+ name: cucumber
51
68
  prerelease: false
52
69
  requirement: &id004 !ruby/object:Gem::Requirement
53
70
  none: false
54
71
  requirements:
55
- - - "="
72
+ - - ~>
56
73
  - !ruby/object:Gem::Version
57
- version: 2.2.4
74
+ segments:
75
+ - 0
76
+ - 10
77
+ - 0
78
+ version: 0.10.0
58
79
  type: :development
59
80
  version_requirements: *id004
60
81
  - !ruby/object:Gem::Dependency
61
- name: cucumber
82
+ name: em-http-request
62
83
  prerelease: false
63
84
  requirement: &id005 !ruby/object:Gem::Requirement
64
85
  none: false
65
86
  requirements:
66
87
  - - ~>
67
88
  - !ruby/object:Gem::Version
68
- version: 0.10.0
89
+ segments:
90
+ - 0
91
+ - 3
92
+ - 0
93
+ version: 0.3.0
69
94
  type: :development
70
95
  version_requirements: *id005
71
96
  - !ruby/object:Gem::Dependency
@@ -76,6 +101,10 @@ dependencies:
76
101
  requirements:
77
102
  - - ~>
78
103
  - !ruby/object:Gem::Version
104
+ segments:
105
+ - 0
106
+ - 8
107
+ - 7
79
108
  version: 0.8.7
80
109
  type: :development
81
110
  version_requirements: *id006
@@ -87,7 +116,11 @@ dependencies:
87
116
  requirements:
88
117
  - - ~>
89
118
  - !ruby/object:Gem::Version
90
- version: 0.3.0.pre
119
+ segments:
120
+ - 0
121
+ - 3
122
+ - 0
123
+ version: 0.3.0
91
124
  type: :development
92
125
  version_requirements: *id007
93
126
  - !ruby/object:Gem::Dependency
@@ -98,7 +131,11 @@ dependencies:
98
131
  requirements:
99
132
  - - ~>
100
133
  - !ruby/object:Gem::Version
101
- version: 2.5.0
134
+ segments:
135
+ - 2
136
+ - 6
137
+ - 0
138
+ version: 2.6.0
102
139
  type: :development
103
140
  version_requirements: *id008
104
141
  - !ruby/object:Gem::Dependency
@@ -109,7 +146,11 @@ dependencies:
109
146
  requirements:
110
147
  - - ~>
111
148
  - !ruby/object:Gem::Version
112
- version: 1.9.0
149
+ segments:
150
+ - 1
151
+ - 10
152
+ - 0
153
+ version: 1.10.0
113
154
  type: :development
114
155
  version_requirements: *id009
115
156
  - !ruby/object:Gem::Dependency
@@ -120,7 +161,11 @@ dependencies:
120
161
  requirements:
121
162
  - - ~>
122
163
  - !ruby/object:Gem::Version
123
- version: 1.6.0
164
+ segments:
165
+ - 1
166
+ - 6
167
+ - 4
168
+ version: 1.6.4
124
169
  type: :development
125
170
  version_requirements: *id010
126
171
  description: A Ruby wrapper to the Amazon Product Advertising API
@@ -134,72 +179,40 @@ extra_rdoc_files: []
134
179
 
135
180
  files:
136
181
  - lib/sucker/hash.rb
137
- - lib/sucker/hash.rbc
138
182
  - lib/sucker/parameters.rb
139
- - lib/sucker/parameters.rbc
140
183
  - lib/sucker/request.rb
141
- - lib/sucker/request.rbc
142
184
  - lib/sucker/response.rb
143
- - lib/sucker/response.rbc
144
185
  - lib/sucker/version.rb
145
- - lib/sucker/version.rbc
146
186
  - lib/sucker.rb
147
- - lib/sucker.rbc
148
187
  - LICENSE
149
188
  - README.md
150
189
  - spec/fixtures/asins.txt
151
- - spec/fixtures/cassette_library/cartcreate/e3e2f9b71afba67619a95c7178178595.yml
152
190
  - spec/fixtures/cassette_library/cartcreate/f8fe45cc6b78ac1aac675a8f76d5f7d9.yml
153
191
  - spec/fixtures/cassette_library/itemlookup/0547439fa22ec1178508f61bc8fb1dfb.yml
154
192
  - spec/fixtures/cassette_library/itemlookup/2656b1813249aff0d4febb01044962ff.yml
155
- - spec/fixtures/cassette_library/itemlookup/4908294851a4df13269707e9f6507f91.yml
156
193
  - spec/fixtures/cassette_library/itemlookup/49690856d2b9cb358fc505dc52862acf.yml
157
- - spec/fixtures/cassette_library/itemlookup/5670727fa0cb9f30464e41aa1346c91c.yml
158
194
  - spec/fixtures/cassette_library/itemlookup/67b3c825b2902b511412057442db6e91.yml
159
- - spec/fixtures/cassette_library/itemlookup/6e6b1dc74378e2e1118713e254191fc0.yml
160
195
  - spec/fixtures/cassette_library/itemlookup/742f3458144935c0a3320be6e842a17c.yml
161
- - spec/fixtures/cassette_library/itemlookup/76f548183c2804a74d0ed7e0bfbd6d4a.yml
162
- - spec/fixtures/cassette_library/itemlookup/8286b763b726d3dc1fc992023e639b9b.yml
163
196
  - spec/fixtures/cassette_library/itemlookup/9853d1f8ae05d5501df4e4390c5abeae.yml
164
- - spec/fixtures/cassette_library/itemlookup/9d82768fe80b09c4a3697c608e5edebe.yml
165
197
  - spec/fixtures/cassette_library/itemlookup/b6c76ad93b17b86adb932b9b97c1f019.yml
166
- - spec/fixtures/cassette_library/itemlookup/d3d6ea869d31173526f48907bff752a3.yml
167
- - spec/fixtures/cassette_library/itemlookup/d8ad346710c3b479febcf58e67fea7ef.yml
168
198
  - spec/fixtures/cassette_library/itemlookup/e880c4cb3dd56cdfa2161a71fece15ac.yml
169
199
  - spec/fixtures/cassette_library/itemsearch/1c4db6b83580a7498b87d7502c249307.yml
170
- - spec/fixtures/cassette_library/itemsearch/295b9eadfb69d55e1c0acb06220e0b6e.yml
171
200
  - spec/fixtures/cassette_library/itemsearch/30d2bff757af125e31b82c47380b98ba.yml
172
201
  - spec/fixtures/cassette_library/itemsearch/34098006ffbbd9570b2c2f9ce23df9f3.yml
173
- - spec/fixtures/cassette_library/itemsearch/4c1e50d070821f4eb9fe3961aba105ee.yml
174
- - spec/fixtures/cassette_library/itemsearch/5a15430433ab94c70466eb61c919a028.yml
175
- - spec/fixtures/cassette_library/itemsearch/8fd40b929a9ed46e2b38ac905c8ab53a.yml
176
202
  - spec/fixtures/cassette_library/itemsearch/e9a6659c2b464d7388c3831c6425a526.yml
177
203
  - spec/fixtures/cassette_library/sellerlistingsearch/6b38af058d6a0bda696f49de13cfd343.yml
178
204
  - spec/fixtures/cassette_library/sellerlistingsearch/c92200a4bd3d6d9023fa6317a780589b.yml
179
- - spec/fixtures/cassette_library/sellerlistingsearch/cb25caadce96ac3de70b69b76431d730.yml
180
- - spec/fixtures/cassette_library/sellerlistingsearch/e1261838e1754870ffd309dd78eb7374.yml
181
205
  - spec/fixtures/cassette_library/spec/sucker/request.yml
182
206
  - spec/fixtures/cassette_library/spec/sucker/response.yml
183
207
  - spec/spec_helper.rb
184
- - spec/spec_helper.rbc
185
208
  - spec/sucker/hash_spec.rb
186
- - spec/sucker/hash_spec.rbc
187
209
  - spec/sucker/parameters_spec.rb
188
- - spec/sucker/parameters_spec.rbc
189
210
  - spec/sucker/request_spec.rb
190
- - spec/sucker/request_spec.rbc
191
211
  - spec/sucker/response_spec.rb
192
- - spec/sucker/response_spec.rbc
193
212
  - spec/sucker_spec.rb
194
- - spec/sucker_spec.rbc
195
- - spec/support/amazon.yml
196
- - spec/support/amazon.yml.example
197
213
  - spec/support/amazon_credentials.rb
198
- - spec/support/amazon_credentials.rbc
199
214
  - spec/support/asins.rb
200
- - spec/support/asins.rbc
201
215
  - spec/support/vcr.rb
202
- - spec/support/vcr.rbc
203
216
  has_rdoc: true
204
217
  homepage: https://rubygems.org/gems/sucker
205
218
  licenses: []
@@ -214,71 +227,49 @@ required_ruby_version: !ruby/object:Gem::Requirement
214
227
  requirements:
215
228
  - - ">="
216
229
  - !ruby/object:Gem::Version
230
+ segments:
231
+ - 0
217
232
  version: "0"
218
233
  required_rubygems_version: !ruby/object:Gem::Requirement
219
234
  none: false
220
235
  requirements:
221
236
  - - ">="
222
237
  - !ruby/object:Gem::Version
238
+ segments:
239
+ - 0
223
240
  version: "0"
224
241
  requirements: []
225
242
 
226
243
  rubyforge_project: sucker
227
- rubygems_version: 1.5.2
244
+ rubygems_version: 1.3.7
228
245
  signing_key:
229
246
  specification_version: 3
230
247
  summary: A Ruby wrapper to the Amazon Product Advertising API
231
248
  test_files:
232
249
  - spec/fixtures/asins.txt
233
- - spec/fixtures/cassette_library/cartcreate/e3e2f9b71afba67619a95c7178178595.yml
234
250
  - spec/fixtures/cassette_library/cartcreate/f8fe45cc6b78ac1aac675a8f76d5f7d9.yml
235
251
  - spec/fixtures/cassette_library/itemlookup/0547439fa22ec1178508f61bc8fb1dfb.yml
236
252
  - spec/fixtures/cassette_library/itemlookup/2656b1813249aff0d4febb01044962ff.yml
237
- - spec/fixtures/cassette_library/itemlookup/4908294851a4df13269707e9f6507f91.yml
238
253
  - spec/fixtures/cassette_library/itemlookup/49690856d2b9cb358fc505dc52862acf.yml
239
- - spec/fixtures/cassette_library/itemlookup/5670727fa0cb9f30464e41aa1346c91c.yml
240
254
  - spec/fixtures/cassette_library/itemlookup/67b3c825b2902b511412057442db6e91.yml
241
- - spec/fixtures/cassette_library/itemlookup/6e6b1dc74378e2e1118713e254191fc0.yml
242
255
  - spec/fixtures/cassette_library/itemlookup/742f3458144935c0a3320be6e842a17c.yml
243
- - spec/fixtures/cassette_library/itemlookup/76f548183c2804a74d0ed7e0bfbd6d4a.yml
244
- - spec/fixtures/cassette_library/itemlookup/8286b763b726d3dc1fc992023e639b9b.yml
245
256
  - spec/fixtures/cassette_library/itemlookup/9853d1f8ae05d5501df4e4390c5abeae.yml
246
- - spec/fixtures/cassette_library/itemlookup/9d82768fe80b09c4a3697c608e5edebe.yml
247
257
  - spec/fixtures/cassette_library/itemlookup/b6c76ad93b17b86adb932b9b97c1f019.yml
248
- - spec/fixtures/cassette_library/itemlookup/d3d6ea869d31173526f48907bff752a3.yml
249
- - spec/fixtures/cassette_library/itemlookup/d8ad346710c3b479febcf58e67fea7ef.yml
250
258
  - spec/fixtures/cassette_library/itemlookup/e880c4cb3dd56cdfa2161a71fece15ac.yml
251
259
  - spec/fixtures/cassette_library/itemsearch/1c4db6b83580a7498b87d7502c249307.yml
252
- - spec/fixtures/cassette_library/itemsearch/295b9eadfb69d55e1c0acb06220e0b6e.yml
253
260
  - spec/fixtures/cassette_library/itemsearch/30d2bff757af125e31b82c47380b98ba.yml
254
261
  - spec/fixtures/cassette_library/itemsearch/34098006ffbbd9570b2c2f9ce23df9f3.yml
255
- - spec/fixtures/cassette_library/itemsearch/4c1e50d070821f4eb9fe3961aba105ee.yml
256
- - spec/fixtures/cassette_library/itemsearch/5a15430433ab94c70466eb61c919a028.yml
257
- - spec/fixtures/cassette_library/itemsearch/8fd40b929a9ed46e2b38ac905c8ab53a.yml
258
262
  - spec/fixtures/cassette_library/itemsearch/e9a6659c2b464d7388c3831c6425a526.yml
259
263
  - spec/fixtures/cassette_library/sellerlistingsearch/6b38af058d6a0bda696f49de13cfd343.yml
260
264
  - spec/fixtures/cassette_library/sellerlistingsearch/c92200a4bd3d6d9023fa6317a780589b.yml
261
- - spec/fixtures/cassette_library/sellerlistingsearch/cb25caadce96ac3de70b69b76431d730.yml
262
- - spec/fixtures/cassette_library/sellerlistingsearch/e1261838e1754870ffd309dd78eb7374.yml
263
265
  - spec/fixtures/cassette_library/spec/sucker/request.yml
264
266
  - spec/fixtures/cassette_library/spec/sucker/response.yml
265
267
  - spec/spec_helper.rb
266
- - spec/spec_helper.rbc
267
268
  - spec/sucker/hash_spec.rb
268
- - spec/sucker/hash_spec.rbc
269
269
  - spec/sucker/parameters_spec.rb
270
- - spec/sucker/parameters_spec.rbc
271
270
  - spec/sucker/request_spec.rb
272
- - spec/sucker/request_spec.rbc
273
271
  - spec/sucker/response_spec.rb
274
- - spec/sucker/response_spec.rbc
275
272
  - spec/sucker_spec.rb
276
- - spec/sucker_spec.rbc
277
- - spec/support/amazon.yml
278
- - spec/support/amazon.yml.example
279
273
  - spec/support/amazon_credentials.rb
280
- - spec/support/amazon_credentials.rbc
281
274
  - spec/support/asins.rb
282
- - spec/support/asins.rbc
283
275
  - spec/support/vcr.rb
284
- - spec/support/vcr.rbc