kosher 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -1,2 +1,9 @@
1
1
  require 'bundler'
2
+ require 'rspec/core/rake_task'
3
+
2
4
  Bundler::GemHelper.install_tasks
5
+
6
+ desc 'Run all specs in spec directory'
7
+ RSpec::Core::RakeTask.new(:spec) do |spec|
8
+ spec.pattern = 'spec/**/*_spec.rb'
9
+ end
data/lib/kosher/item.rb CHANGED
@@ -17,9 +17,8 @@ module Kosher
17
17
  [offers].flatten.compact.map do |offer|
18
18
 
19
19
  # Senify Yen because Ruby Money says so
20
- price = offer['OfferListing']['Price']
21
- if price['CurrencyCode'] == 'JPY'
22
- price['Amount'] = price['Amount'].to_i * 100
20
+ if offer['OfferListing']['Price']['CurrencyCode'] == 'JPY'
21
+ offer['OfferListing']['Price']['Amount'] = offer['OfferListing']['Price']['Amount'].to_i * 100
23
22
  end
24
23
 
25
24
  Offer.build(offer)
data/lib/kosher/seller.rb CHANGED
@@ -16,7 +16,7 @@ module Kosher
16
16
  end
17
17
 
18
18
  def blacklisted?
19
- blacklist.include? merchant_id rescue false
19
+ blacklist.include?(merchant_id) rescue false
20
20
  end
21
21
 
22
22
  def kosher?
@@ -1,3 +1,3 @@
1
1
  module Kosher
2
- VERSION = '0.1.5'
2
+ VERSION = '0.1.6'
3
3
  end
@@ -110,3 +110,130 @@
110
110
  tnT+E+jS5/89Q+XfeGWzi8lBAAA=
111
111
 
112
112
  http_version: "1.1"
113
+ - !ruby/struct:VCR::HTTPInteraction
114
+ request: !ruby/struct:VCR::Request
115
+ method: :get
116
+ uri: http://ecs.amazonaws.jp:80/onca/xml?AWSAccessKeyId=0ZVSQ33MDFPQS8H2PM02&AssociateTag=papecava-20&ItemLookup.1.ItemId=0143105825&ItemLookup.Shared.Condition=All&ItemLookup.Shared.IdType=ASIN&ItemLookup.Shared.MerchantId=All&ItemLookup.Shared.ResponseGroup=OfferFull,SalesRank&Operation=ItemLookup&Service=AWSECommerceService&Signature=flcrUr1hw/P5GEKAcwSH4xIHPjI+BTbMuxoTIkxJPgE=&Timestamp=2011-03-04T11:45:58Z&Version=2010-11-01
117
+ body:
118
+ headers:
119
+ accept-encoding:
120
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
121
+ response: !ruby/struct:VCR::Response
122
+ status: !ruby/struct:VCR::ResponseStatus
123
+ code: 200
124
+ message: OK
125
+ headers:
126
+ date:
127
+ - Fri, 04 Mar 2011 11:45:59 GMT
128
+ server:
129
+ - Server
130
+ content-type:
131
+ - text/xml;charset=UTF-8
132
+ vary:
133
+ - Accept-Encoding,User-Agent
134
+ content-encoding:
135
+ - gzip
136
+ content-length:
137
+ - "4354"
138
+ nncoection:
139
+ - close
140
+ body: !binary |
141
+ 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
238
+
239
+ http_version: "1.1"
@@ -7,21 +7,15 @@ module Kosher
7
7
 
8
8
  let(:asin) { '0143105825' }
9
9
 
10
- let(:response) do
10
+ it "should build an item" do
11
11
  request = Request.new(credentials)
12
12
  request.locale = :us
13
13
  request.batchify([asin])
14
14
  algorithm = request.get
15
-
16
- algorithm.instance_variable_get(:@response)
17
- end
18
-
19
- let(:item) do
15
+ response = algorithm.instance_variable_get(:@response)
20
16
  doc = response.find('Item').first
21
- Item.build(doc)
22
- end
17
+ item = Item.build(doc)
23
18
 
24
- it "should build an item" do
25
19
  item.should be_a Item
26
20
  item.asin.should eql asin
27
21
  item.offers_count.should be > 0
@@ -29,6 +23,24 @@ module Kosher
29
23
  item.offers.count.should > 0
30
24
  item.offers.first.should be_a Offer
31
25
  end
26
+
27
+ it "should senify Yen in Japanese requests" do
28
+ request = Request.new(credentials)
29
+ request.locale = :jp
30
+ request.batchify([asin])
31
+ algorithm = request.get
32
+ response = algorithm.instance_variable_get(:@response)
33
+ doc = response.find('Item').first
34
+
35
+ doc['Offers']['Offer'].each do |offer|
36
+ offer['OfferListing']['Price']['Amount'] = 1
37
+ end
38
+ item = Item.build(doc)
39
+
40
+ item.offers.each do |offer|
41
+ offer.cents.should eql 100
42
+ end
43
+ end
32
44
  end
33
45
  end
34
46
  end
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: kosher
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.1.5
5
+ version: 0.1.6
6
6
  platform: ruby
7
7
  authors:
8
8
  - Paper Cavalier
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-03-03 00:00:00 +00:00
13
+ date: 2011-03-04 00:00:00 +00:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency