rasin 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. data/.document +3 -0
  2. data/.gitignore +6 -0
  3. data/.travis.yml +13 -0
  4. data/CHANGELOG.rdoc +49 -0
  5. data/Gemfile +4 -0
  6. data/Gemfile.lock +54 -0
  7. data/README.rdoc +166 -0
  8. data/asin.gemspec +36 -0
  9. data/lib/asin.rb +8 -0
  10. data/lib/asin/client.rb +398 -0
  11. data/lib/asin/configuration.rb +105 -0
  12. data/lib/asin/simple_cart.rb +54 -0
  13. data/lib/asin/simple_item.rb +44 -0
  14. data/lib/asin/simple_node.rb +44 -0
  15. data/lib/asin/version.rb +3 -0
  16. data/rakefile.rb +11 -0
  17. data/spec/asin.yml +4 -0
  18. data/spec/browse_node_spec.rb +17 -0
  19. data/spec/cart_spec.rb +150 -0
  20. data/spec/cassettes/asin/asin_cart_with_an_existing_cart_should_add_items_to_a_cart.yml +68 -0
  21. data/spec/cassettes/asin/asin_cart_with_an_existing_cart_should_clear_a_cart.yml +66 -0
  22. data/spec/cassettes/asin/asin_cart_with_an_existing_cart_should_get_a_cart.yml +67 -0
  23. data/spec/cassettes/asin/asin_cart_with_an_existing_cart_should_update_a_cart.yml +70 -0
  24. data/spec/cassettes/asin/browse_node_should_lookup_a_browse_node.yml +38 -0
  25. data/spec/cassettes/asin/cart_should_create_a_cart.yml +36 -0
  26. data/spec/cassettes/asin/lookup_and_search_should_have_metadata.yml +81 -0
  27. data/spec/cassettes/asin/lookup_and_search_should_lookup_a_book.yml +81 -0
  28. data/spec/cassettes/asin/lookup_and_search_should_lookup_multiple_books.yml +131 -0
  29. data/spec/cassettes/asin/lookup_and_search_should_lookup_multiple_response_groups.yml +43 -0
  30. data/spec/cassettes/asin/lookup_and_search_should_return_a_custom_item_class.yml +81 -0
  31. data/spec/cassettes/asin/lookup_and_search_should_return_a_mash_value.yml +81 -0
  32. data/spec/cassettes/asin/lookup_and_search_should_return_a_rash_value.yml +81 -0
  33. data/spec/cassettes/asin/lookup_and_search_should_return_a_raw_value.yml +81 -0
  34. data/spec/cassettes/asin/lookup_and_search_should_search_keywords_a_book_with_fulltext.yml +538 -0
  35. data/spec/cassettes/asin/lookup_and_search_should_search_keywords_and_handle_a_single_result.yml +72 -0
  36. data/spec/cassettes/asin/lookup_and_search_should_search_keywords_never_mind_music.yml +119 -0
  37. data/spec/cassettes/asin/lookup_and_search_should_search_music.yml +37 -0
  38. data/spec/cassettes/asin/lookup_and_search_should_search_never_mind_music.yml +122 -0
  39. data/spec/config_spec.rb +53 -0
  40. data/spec/search_spec.rb +101 -0
  41. data/spec/spec_helper.rb +47 -0
  42. metadata +197 -0
@@ -0,0 +1,47 @@
1
+ $:.unshift File.join(File.dirname(__FILE__),'..','..','lib')
2
+
3
+ require 'rspec'
4
+ require 'asin'
5
+ require 'asin/client' # is somehow needed for jruby
6
+ require 'pp'
7
+ require 'httpclient'
8
+ require 'vcr'
9
+ require 'httpi'
10
+
11
+ VCR.config do |c|
12
+ c.cassette_library_dir = 'spec/cassettes'
13
+ c.stub_with :webmock
14
+ # c.default_cassette_options = { :record => :new_episodes }
15
+ end
16
+
17
+ ANY_ASIN = '1430218150'
18
+ ANY_OTHER_ASIN = '1430216263'
19
+ ANY_BROWSE_NODE_ID = '599826'
20
+
21
+ RSpec.configure do |config|
22
+ config.mock_with :rspec
23
+
24
+ # https://gist.github.com/1212530
25
+ config.treat_symbols_as_metadata_keys_with_true_values = true
26
+ config.around(:each, :vcr => true) do |example|
27
+ name = example.metadata[:full_description].downcase.gsub(/\W+/, "_").split("_", 2).join("/")
28
+ VCR.use_cassette(name, :record => :new_episodes, :match_requests_on => [:host, :path]) do
29
+ example.call
30
+ end
31
+ end
32
+
33
+ config.before :each do
34
+ HTTPI.log = false
35
+
36
+ ASIN::Configuration.reset
37
+ @helper = ASIN::Client.instance
38
+ @helper.configure :logger => nil
39
+
40
+ @secret = ENV['ASIN_SECRET']
41
+ @key = ENV['ASIN_KEY']
42
+ end
43
+ end
44
+
45
+ # setup for travis-ci
46
+ ENV['ASIN_SECRET'] ||= 'any_secret'
47
+ ENV['ASIN_KEY'] ||= 'any_key'
metadata ADDED
@@ -0,0 +1,197 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rasin
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Peter Schröder
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-02-07 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: crack
16
+ requirement: &80125230 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '0.3'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *80125230
25
+ - !ruby/object:Gem::Dependency
26
+ name: hashie
27
+ requirement: &80124920 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '1.1'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *80124920
36
+ - !ruby/object:Gem::Dependency
37
+ name: httpi
38
+ requirement: &80124690 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '0.9'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *80124690
47
+ - !ruby/object:Gem::Dependency
48
+ name: httpclient
49
+ requirement: &80124370 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.2.3
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *80124370
58
+ - !ruby/object:Gem::Dependency
59
+ name: rash
60
+ requirement: &80124120 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 0.3.1
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *80124120
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: &80123810 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 0.9.2.2
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *80123810
80
+ - !ruby/object:Gem::Dependency
81
+ name: vcr
82
+ requirement: &80123580 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: 1.11.3
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *80123580
91
+ - !ruby/object:Gem::Dependency
92
+ name: webmock
93
+ requirement: &80123340 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ~>
97
+ - !ruby/object:Gem::Version
98
+ version: 1.7.7
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: *80123340
102
+ - !ruby/object:Gem::Dependency
103
+ name: rspec
104
+ requirement: &80123110 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 2.7.0
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: *80123110
113
+ - !ruby/object:Gem::Dependency
114
+ name: fuubar
115
+ requirement: &80122800 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: 0.0.5
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: *80122800
124
+ description: Amazon Simple INterface.
125
+ email:
126
+ - phoetmail@googlemail.com
127
+ executables: []
128
+ extensions: []
129
+ extra_rdoc_files: []
130
+ files:
131
+ - .document
132
+ - .gitignore
133
+ - .rvmrc
134
+ - .travis.yml
135
+ - CHANGELOG.rdoc
136
+ - Gemfile
137
+ - Gemfile.lock
138
+ - README.rdoc
139
+ - asin.gemspec
140
+ - lib/asin.rb
141
+ - lib/asin/client.rb
142
+ - lib/asin/configuration.rb
143
+ - lib/asin/simple_cart.rb
144
+ - lib/asin/simple_item.rb
145
+ - lib/asin/simple_node.rb
146
+ - lib/asin/version.rb
147
+ - rakefile.rb
148
+ - spec/asin.yml
149
+ - spec/browse_node_spec.rb
150
+ - spec/cart_spec.rb
151
+ - spec/cassettes/asin/asin_cart_with_an_existing_cart_should_add_items_to_a_cart.yml
152
+ - spec/cassettes/asin/asin_cart_with_an_existing_cart_should_clear_a_cart.yml
153
+ - spec/cassettes/asin/asin_cart_with_an_existing_cart_should_get_a_cart.yml
154
+ - spec/cassettes/asin/asin_cart_with_an_existing_cart_should_update_a_cart.yml
155
+ - spec/cassettes/asin/browse_node_should_lookup_a_browse_node.yml
156
+ - spec/cassettes/asin/cart_should_create_a_cart.yml
157
+ - spec/cassettes/asin/lookup_and_search_should_have_metadata.yml
158
+ - spec/cassettes/asin/lookup_and_search_should_lookup_a_book.yml
159
+ - spec/cassettes/asin/lookup_and_search_should_lookup_multiple_books.yml
160
+ - spec/cassettes/asin/lookup_and_search_should_lookup_multiple_response_groups.yml
161
+ - spec/cassettes/asin/lookup_and_search_should_return_a_custom_item_class.yml
162
+ - spec/cassettes/asin/lookup_and_search_should_return_a_mash_value.yml
163
+ - spec/cassettes/asin/lookup_and_search_should_return_a_rash_value.yml
164
+ - spec/cassettes/asin/lookup_and_search_should_return_a_raw_value.yml
165
+ - spec/cassettes/asin/lookup_and_search_should_search_keywords_a_book_with_fulltext.yml
166
+ - spec/cassettes/asin/lookup_and_search_should_search_keywords_and_handle_a_single_result.yml
167
+ - spec/cassettes/asin/lookup_and_search_should_search_keywords_never_mind_music.yml
168
+ - spec/cassettes/asin/lookup_and_search_should_search_music.yml
169
+ - spec/cassettes/asin/lookup_and_search_should_search_never_mind_music.yml
170
+ - spec/config_spec.rb
171
+ - spec/search_spec.rb
172
+ - spec/spec_helper.rb
173
+ homepage: http://github.com/phoet/asin
174
+ licenses: []
175
+ post_install_message:
176
+ rdoc_options: []
177
+ require_paths:
178
+ - lib
179
+ required_ruby_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - ! '>='
183
+ - !ruby/object:Gem::Version
184
+ version: '0'
185
+ required_rubygems_version: !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ! '>='
189
+ - !ruby/object:Gem::Version
190
+ version: '0'
191
+ requirements: []
192
+ rubyforge_project: asin
193
+ rubygems_version: 1.8.15
194
+ signing_key:
195
+ specification_version: 3
196
+ summary: Simple interface to AWS Lookup, Search and Cart operations.
197
+ test_files: []