rebay 1.1.1 → 1.1.2

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.1
1
+ 1.1.2
data/lib/rebay/finding.rb CHANGED
@@ -8,6 +8,7 @@ module Rebay
8
8
  raise ArgumentError unless params[:keywords] or params[:categoryId]
9
9
  response = get_json_response(build_request_url('findItemsAdvanced', params))
10
10
  response.trim(:findItemsAdvancedResponse)
11
+
11
12
  if response.response.has_key?('searchResult') && response.response['searchResult'].has_key?('item')
12
13
  response.results = response.response['searchResult']['item']
13
14
  end
@@ -31,6 +31,16 @@ module Rebay
31
31
  end
32
32
  end
33
33
 
34
+ def size
35
+ if @results.nil?
36
+ return 0
37
+ elsif @results.class == Array
38
+ return @results.size
39
+ else
40
+ return 1
41
+ end
42
+ end
43
+
34
44
  protected
35
45
  def transform_json_response(response)
36
46
  if response.class == Hash
data/rebay.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rebay}
8
- s.version = "1.1.1"
8
+ s.version = "1.1.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Chuck Collins"]
12
- s.date = %q{2010-10-05}
12
+ s.date = %q{2010-11-06}
13
13
  s.email = %q{chuck.collins@gmail.com}
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE",
data/spec/finding_spec.rb CHANGED
@@ -63,7 +63,7 @@ module Rebay
63
63
  end
64
64
 
65
65
  it "should iterate over results" do
66
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_advanced.json"))
66
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_advanced"))
67
67
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
68
68
  response = @finder.find_items_advanced({:keywords => 'whatevs'})
69
69
 
@@ -71,6 +71,16 @@ module Rebay
71
71
  response.each { |r| count = count + 1 }
72
72
  count.should eq(2)
73
73
  end
74
+
75
+ it "should work with 1 result" do
76
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_advanced_one_item"))
77
+ @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
78
+ response = @finder.find_items_advanced({:categoryId => 1})
79
+ count = 0
80
+
81
+ response.each { |r| count = count + 1 }
82
+ count.should eq(1)
83
+ end
74
84
  end
75
85
 
76
86
  context "when calling find_items_by_category" do
@@ -87,7 +97,7 @@ module Rebay
87
97
  end
88
98
 
89
99
  it "should iterate over results" do
90
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_category.json"))
100
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_category"))
91
101
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
92
102
  response = @finder.find_items_by_category({:categoryId => 1})
93
103
 
@@ -111,7 +121,7 @@ module Rebay
111
121
  end
112
122
 
113
123
  it "should iterate over results" do
114
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_product.json"))
124
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_product"))
115
125
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
116
126
  response = @finder.find_items_by_product({:productId => 1})
117
127
 
@@ -135,7 +145,7 @@ module Rebay
135
145
  end
136
146
 
137
147
  it "should iterate over results" do
138
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_keywords.json"))
148
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_by_keywords"))
139
149
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
140
150
  response = @finder.find_items_by_keywords({:keywords => 'whatevs'})
141
151
 
@@ -191,7 +201,7 @@ module Rebay
191
201
  end
192
202
 
193
203
  it "should iterate over results" do
194
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation.json"))
204
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation"))
195
205
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
196
206
  response = @finder.get_search_keywords_recommendation({:keywords => 'whatevs'})
197
207
 
@@ -213,7 +223,7 @@ module Rebay
213
223
  end
214
224
 
215
225
  it "should iterate over results" do
216
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_version.json"))
226
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_version"))
217
227
  @finder.stub!(:get_json_response).and_return(Rebay::Response.new(json))
218
228
  response = @finder.get_version
219
229
 
@@ -4,14 +4,14 @@ module Rebay
4
4
  describe Response do
5
5
  context "on creation" do
6
6
  it "should transform the happy json" do
7
- json_happy = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation_happy.json"))
7
+ json_happy = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation_happy"))
8
8
  response = Response.new(json_happy)
9
9
  response.response.should eq({"getSearchKeywordsRecommendationResponse" => {"ack" => "Success", "version" => "1.5.0",
10
10
  "timestamp" => "2010-08-13T21:11:02.539Z", "keywords" => "accordion"}})
11
11
  end
12
12
 
13
13
  it "should transform the sad json" do
14
- json_sad = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation_sad.json"))
14
+ json_sad = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/get_search_keywords_recommendation_sad"))
15
15
  response = Response.new(json_sad)
16
16
  response.response.should eq({"getSearchKeywordsRecommendationResponse" =>
17
17
  {"ack" => "Warning",
@@ -68,7 +68,7 @@ module Rebay
68
68
 
69
69
  context "using find items advanced json" do
70
70
  before(:each) do
71
- @json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_advanced.json"))
71
+ @json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/finding/find_items_advanced"))
72
72
  @response = Response.new(@json)
73
73
  @response.trim(:findItemsAdvancedResponse)
74
74
  @proper = {"ack"=>"Success", "version"=>"1.7.0", "timestamp"=>"2010-09-29T01:53:58.039Z",
@@ -111,6 +111,10 @@ module Rebay
111
111
  it "should trim format response correctly" do
112
112
  @response.response.should eq(@proper)
113
113
  end
114
+
115
+ it "should show correct size" do
116
+ @response.size.should eq(2)
117
+ end
114
118
  end
115
119
  end
116
120
  end
@@ -79,7 +79,7 @@ module Rebay
79
79
  end
80
80
 
81
81
  it "should iterate over results" do
82
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/get_category_info.json"))
82
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/get_category_info"))
83
83
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
84
84
  response = @shopper.get_category_info({:categoryId => 1})
85
85
 
@@ -103,7 +103,7 @@ module Rebay
103
103
  end
104
104
 
105
105
  it "should iterate over results" do
106
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_products.json"))
106
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_products"))
107
107
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
108
108
  response = @shopper.find_products({:queryKeywords => 'whatevs'})
109
109
 
@@ -127,7 +127,7 @@ module Rebay
127
127
  end
128
128
 
129
129
  it "should iterate over results" do
130
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_half_products.json"))
130
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_half_products"))
131
131
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
132
132
  response = @shopper.find_half_products({:queryKeywords => 'whatevs'})
133
133
 
@@ -221,7 +221,7 @@ module Rebay
221
221
  end
222
222
 
223
223
  it "should iterate over results" do
224
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_popular_searches.json"))
224
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_popular_searches"))
225
225
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
226
226
  response = @shopper.find_popular_searches({:categoryId => 1})
227
227
 
@@ -241,7 +241,7 @@ module Rebay
241
241
  end
242
242
 
243
243
  it "should iterate over results" do
244
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_popular_items.json"))
244
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_popular_items"))
245
245
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
246
246
  response = @shopper.find_popular_items({:categoryId => 1})
247
247
 
@@ -261,7 +261,7 @@ module Rebay
261
261
  end
262
262
 
263
263
  it "should iterate over results" do
264
- json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_reviews_and_guides.json"))
264
+ json = JSON.parse(File.read(File.dirname(__FILE__) + "/json_responses/shopping/find_reviews_and_guides"))
265
265
  @shopper.stub!(:get_json_response).and_return(Rebay::Response.new(json))
266
266
  response = @shopper.find_reviews_and_guides
267
267
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 1
7
7
  - 1
8
- - 1
9
- version: 1.1.1
8
+ - 2
9
+ version: 1.1.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - Chuck Collins
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-10-05 00:00:00 -05:00
17
+ date: 2010-11-06 00:00:00 -05:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency