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.
- data/README.md +11 -12
 - data/lib/sucker.rb +12 -9
 - data/lib/sucker/parameters.rb +5 -3
 - data/lib/sucker/request.rb +27 -27
 - data/lib/sucker/version.rb +1 -1
 - data/spec/sucker/request_spec.rb +10 -15
 - data/spec/sucker/response_spec.rb +2 -2
 - data/spec/support/amazon_credentials.rb +6 -2
 - metadata +62 -71
 - data/lib/sucker.rbc +0 -265
 - data/lib/sucker/hash.rbc +0 -914
 - data/lib/sucker/parameters.rbc +0 -843
 - data/lib/sucker/request.rbc +0 -2315
 - data/lib/sucker/response.rbc +0 -1229
 - data/lib/sucker/version.rbc +0 -130
 - data/spec/fixtures/cassette_library/cartcreate/e3e2f9b71afba67619a95c7178178595.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/4908294851a4df13269707e9f6507f91.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/5670727fa0cb9f30464e41aa1346c91c.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/6e6b1dc74378e2e1118713e254191fc0.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/76f548183c2804a74d0ed7e0bfbd6d4a.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/8286b763b726d3dc1fc992023e639b9b.yml +0 -151
 - data/spec/fixtures/cassette_library/itemlookup/9d82768fe80b09c4a3697c608e5edebe.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/d3d6ea869d31173526f48907bff752a3.yml +0 -26
 - data/spec/fixtures/cassette_library/itemlookup/d8ad346710c3b479febcf58e67fea7ef.yml +0 -26
 - data/spec/fixtures/cassette_library/itemsearch/295b9eadfb69d55e1c0acb06220e0b6e.yml +0 -26
 - data/spec/fixtures/cassette_library/itemsearch/4c1e50d070821f4eb9fe3961aba105ee.yml +0 -26
 - data/spec/fixtures/cassette_library/itemsearch/5a15430433ab94c70466eb61c919a028.yml +0 -26
 - data/spec/fixtures/cassette_library/itemsearch/8fd40b929a9ed46e2b38ac905c8ab53a.yml +0 -26
 - data/spec/fixtures/cassette_library/sellerlistingsearch/cb25caadce96ac3de70b69b76431d730.yml +0 -26
 - data/spec/fixtures/cassette_library/sellerlistingsearch/e1261838e1754870ffd309dd78eb7374.yml +0 -26
 - data/spec/spec_helper.rbc +0 -230
 - data/spec/sucker/hash_spec.rbc +0 -861
 - data/spec/sucker/parameters_spec.rbc +0 -1475
 - data/spec/sucker/request_spec.rbc +0 -2754
 - data/spec/sucker/response_spec.rbc +0 -3627
 - data/spec/sucker_spec.rbc +0 -287
 - data/spec/support/amazon.yml +0 -3
 - data/spec/support/amazon.yml.example +0 -3
 - data/spec/support/amazon_credentials.rbc +0 -154
 - data/spec/support/asins.rbc +0 -335
 - 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 
     | 
    
         
             
            
         
     | 
| 
       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 
     | 
    
         
            -
             
     | 
| 
      
 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 
     | 
| 
       18 
     | 
    
         
            -
                  :key 
     | 
| 
       19 
     | 
    
         
            -
                  :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 
     | 
| 
      
 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  
     | 
| 
      
 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  
     | 
| 
       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 
     | 
    
         
            -
               
     | 
| 
       10 
     | 
    
         
            -
             
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
             
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
     | 
    
         
            -
             
     | 
| 
       17 
     | 
    
         
            -
                 
     | 
| 
      
 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
         
     | 
    
        data/lib/sucker/parameters.rb
    CHANGED
    
    | 
         @@ -3,10 +3,10 @@ module Sucker 
     | 
|
| 
       3 
3 
     | 
    
         
             
                CURRENT_API_VERSION = '2010-11-01'
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
                def initialize
         
     | 
| 
       6 
     | 
    
         
            -
                   
     | 
| 
      
 6 
     | 
    
         
            +
                  populate
         
     | 
| 
       7 
7 
     | 
    
         
             
                end
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
       9 
     | 
    
         
            -
                def  
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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
         
     | 
    
        data/lib/sucker/request.rb
    CHANGED
    
    | 
         @@ -14,9 +14,12 @@ module Sucker 
     | 
|
| 
       14 
14 
     | 
    
         
             
                  :fr  => 'ecs.amazonaws.fr',
         
     | 
| 
       15 
15 
     | 
    
         
             
                  :jp  => 'ecs.amazonaws.jp' }
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
                 
     | 
| 
       18 
     | 
    
         
            -
             
     | 
| 
       19 
     | 
    
         
            -
                   
     | 
| 
      
 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           =>  
     | 
| 
       41 
     | 
    
         
            -
                #     :secret        =>  
     | 
| 
       42 
     | 
    
         
            -
                #     :associate_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( 
     | 
| 
      
 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  
     | 
| 
      
 81 
     | 
    
         
            +
                # Resets parameters and returns self.
         
     | 
| 
       79 
82 
     | 
    
         
             
                def reset
         
     | 
| 
       80 
83 
     | 
    
         
             
                  parameters.clear
         
     | 
| 
       81 
     | 
    
         
            -
                  parameters. 
     | 
| 
      
 84 
     | 
    
         
            +
                  parameters.populate
         
     | 
| 
       82 
85 
     | 
    
         | 
| 
       83 
86 
     | 
    
         
             
                  self
         
     | 
| 
       84 
87 
     | 
    
         
             
                end
         
     | 
| 
       85 
88 
     | 
    
         | 
| 
       86 
     | 
    
         
            -
                #  
     | 
| 
       87 
     | 
    
         
            -
                 
     | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
       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  
     | 
| 
      
 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  
     | 
| 
       107 
     | 
    
         
            -
                  query = build_query
         
     | 
| 
       108 
     | 
    
         
            -
             
     | 
| 
      
 115 
     | 
    
         
            +
                def sign(query_string)
         
     | 
| 
       109 
116 
     | 
    
         
             
                  digest = OpenSSL::Digest::Digest.new('sha256')
         
     | 
| 
       110 
     | 
    
         
            -
                   
     | 
| 
       111 
     | 
    
         
            -
                  hmac = OpenSSL::HMAC.digest(digest, secret,  
     | 
| 
      
 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 
     | 
    
         
            -
                   
     | 
| 
      
 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
         
     | 
    
        data/lib/sucker/version.rb
    CHANGED
    
    
    
        data/spec/sucker/request_spec.rb
    CHANGED
    
    | 
         @@ -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 '# 
     | 
| 
      
 60 
     | 
    
         
            +
                describe '#build_query_string' do
         
     | 
| 
       55 
61 
     | 
    
         
             
                  let(:query) do
         
     | 
| 
       56 
     | 
    
         
            -
                    request.send(: 
     | 
| 
      
 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 '# 
     | 
| 
       74 
     | 
    
         
            -
                  let(:query) { request.send(: 
     | 
| 
       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    =>  
     | 
| 
       15 
     | 
    
         
            -
                    :secret =>  
     | 
| 
      
 14 
     | 
    
         
            +
                    :key    => amazon_key,
         
     | 
| 
      
 15 
     | 
    
         
            +
                    :secret => amazon_secret)
         
     | 
| 
       16 
16 
     | 
    
         
             
                  request << {
         
     | 
| 
       17 
17 
     | 
    
         
             
                      'Operation' => 'ItemLookup',
         
     | 
| 
       18 
18 
     | 
    
         
             
                      'IdType'    => 'ASIN',
         
     | 
    
        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 
     | 
    
         
            -
               
     | 
| 
      
 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- 
     | 
| 
      
 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:  
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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:  
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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 
     | 
    
         
            -
                     
     | 
| 
      
 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. 
     | 
| 
      
 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
         
     |