walmart_open 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +3 -0
- data/lib/walmart_open/item.rb +4 -1
- data/lib/walmart_open/version.rb +1 -1
- data/spec/spec_helper.rb +2 -0
- data/spec/walmart_open/item_spec.rb +3 -3
- data/spec/walmart_open/requests/place_order_spec.rb +3 -1
- data/spec/walmart_open/requests/search_spec.rb +2 -1
- data/spec/walmart_open/requests/taxonomy_spec.rb +1 -0
- data/spec/walmart_open/requests/token_spec.rb +1 -1
- metadata +46 -14
- checksums.yaml +0 -15
data/README.md
CHANGED
@@ -87,6 +87,9 @@ item = client.lookup(15076191)
|
|
87
87
|
# item.model_number = ?
|
88
88
|
# item.url = "http://www.walmart.com/ip/Apple-iPod-Touch-8GB-32GB-and-64GB-newest-model/15076191"
|
89
89
|
# item.raw_attributes = {"itemId" => 15076191, .....}
|
90
|
+
# item.large_image = "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_500X500.jpg"
|
91
|
+
# item.thumbnail_image = "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_100X100.jpg"
|
92
|
+
# item.medium_image = "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_180X180.jpg"
|
90
93
|
|
91
94
|
# when fail: example of item
|
92
95
|
# item.error? == true
|
data/lib/walmart_open/item.rb
CHANGED
@@ -14,7 +14,10 @@ module WalmartOpen
|
|
14
14
|
"color" => "color",
|
15
15
|
"modelNumber" => "model_number",
|
16
16
|
"productUrl" => "url",
|
17
|
-
"availableOnline" => "available_online"
|
17
|
+
"availableOnline" => "available_online",
|
18
|
+
"largeImage" => "large_image",
|
19
|
+
"thumbnailImage" => "thumbnail_image",
|
20
|
+
"mediumImage" => "medium_image"
|
18
21
|
}
|
19
22
|
|
20
23
|
API_ATTRIBUTES_MAPPING.each_value do |attr_name|
|
data/lib/walmart_open/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -13,7 +13,8 @@ describe WalmartOpen::Item do
|
|
13
13
|
"shortDescription" => "Cuddle up in bed, on the couch, or even on a sandy beach with this super-soft and thick microfiber blanket. It's luxuriously crafted to provide sumptuous warmth and comfort, even in the coldest environment. Constructed from 100% microfiber, the blanket yarns feel plush and cozy against your skin. This lavish microplush blanket is available in 7 beautiful colors, and can be elegantly matched to any home decor. It works well as an outdoor blanket too — it's perfect for picnics, long car rides, and trips to the ballpark. Plus, this microplush blanket is easy to take care of without hassle, and saves valuable energy over electric blankets. Now you can bundle up and stay warm anywhere, indoors or out. <p>Soft microplush blanket is available in Twin, Full, Queen and King Sizes.</p>", "longDescription"=>"<p><b>Microplush Blanket, 7 Colors:</b></p><ul><li>Super-soft, thick and plush</li><li>100% microfiber blanket yarns are soft and plush to the touch</li><li>Microplush blanket is suitable for all-year use, and can be used indoors or outdoors without hassle</li><li>Luxurious microplush blanket is easy to clean just machine wash and tumble dry</li><li>Twin: 90" x 66"</li><li>Full: 90" x 80"</li><li>Queen: 90" x 90"</li><li>King: 90" x 102"</li></ul>",
|
14
14
|
"brandName" => "Sun Yin",
|
15
15
|
"thumbnailImage" => "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_100X100.jpg",
|
16
|
-
"mediumImage" => "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_180X180.jpg",
|
16
|
+
"mediumImage" => "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_180X180.jpg",
|
17
|
+
"largeImage" => "http://i.walmartimages.com/i/p/00/80/14/18/71/0080141871195_Color_Burgundy_SW_500X500.jpg",
|
17
18
|
"productTrackingUrl" => "http://linksynergy.walmart.com/fs-bin/click?id=|LSNID|&offerid=223073.7200&type=14&catid=8&subid=0&hid=7200&tmpid=1081&RD_PARM1=http%253A%252F%252Fwww.walmart.com%252Fip%252FMicroplush-Blanket%252F10371356%253Faffilsrc%253Dapi",
|
18
19
|
"ninetySevenCentShipping" => false,
|
19
20
|
"standardShipRate" => 4.97,
|
@@ -42,9 +43,8 @@ describe WalmartOpen::Item do
|
|
42
43
|
context ".new" do
|
43
44
|
it "sets attributes" do
|
44
45
|
item = WalmartOpen::Item.new(item_attrs)
|
45
|
-
|
46
46
|
WalmartOpen::Item::API_ATTRIBUTES_MAPPING.each do |key, value|
|
47
|
-
expect(item.
|
47
|
+
expect(item.public_send(value)).to eq(item_attrs[key])
|
48
48
|
end
|
49
49
|
expect(item.raw_attributes).to eq(item_attrs)
|
50
50
|
end
|
@@ -123,7 +123,9 @@ describe WalmartOpen::Requests::PlaceOrder do
|
|
123
123
|
end
|
124
124
|
|
125
125
|
it "raises order error" do
|
126
|
-
expect{
|
126
|
+
expect{
|
127
|
+
order_req.submit(client)
|
128
|
+
}.to raise_error(WalmartOpen::OrderError)
|
127
129
|
end
|
128
130
|
end
|
129
131
|
|
@@ -52,7 +52,7 @@ describe WalmartOpen::Requests::Search do
|
|
52
52
|
end
|
53
53
|
context "get success response" do
|
54
54
|
before do
|
55
|
-
|
55
|
+
allow(HTTParty).to receive(:get).and_return(success_response)
|
56
56
|
allow(success_response).to receive(:parsed_response).and_return(search_response)
|
57
57
|
end
|
58
58
|
|
@@ -68,6 +68,7 @@ describe WalmartOpen::Requests::Search do
|
|
68
68
|
|
69
69
|
context "get fail response" do
|
70
70
|
before do
|
71
|
+
allow(HTTParty).to receive(:get).and_return(fail_response)
|
71
72
|
allow(fail_response).to receive(:parsed_response).and_return({
|
72
73
|
"errors" => [{
|
73
74
|
"code" => 403,
|
@@ -51,6 +51,7 @@ describe WalmartOpen::Requests::Taxonomy do
|
|
51
51
|
|
52
52
|
context "when response is not success" do
|
53
53
|
before do
|
54
|
+
allow(HTTParty).to receive(:get).and_return(fail_response)
|
54
55
|
allow(fail_response).to receive(:parsed_response).and_return({
|
55
56
|
"errors"=>[{
|
56
57
|
"code"=>403,
|
@@ -35,7 +35,7 @@ describe WalmartOpen::Requests::Token do
|
|
35
35
|
|
36
36
|
context "when response is not success" do
|
37
37
|
before do
|
38
|
-
allow(HTTParty).to receive(:
|
38
|
+
allow(HTTParty).to receive(:post).and_return(fail_response)
|
39
39
|
allow(fail_response).to receive(:parsed_response).and_return({"errors"=>[{"code"=>403, "message"=>"Account Inactive"}]})
|
40
40
|
end
|
41
41
|
|
metadata
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: walmart_open
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease:
|
5
|
+
version: 0.0.2
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Ngan Pham
|
@@ -9,106 +10,136 @@ authors:
|
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date: 2013-12-
|
13
|
+
date: 2013-12-12 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
|
-
type: :runtime
|
16
|
-
prerelease: false
|
17
16
|
name: httparty
|
18
17
|
version_requirements: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
19
|
requirements:
|
20
20
|
- - ~>
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: '0.10'
|
23
23
|
requirement: !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
24
25
|
requirements:
|
25
26
|
- - ~>
|
26
27
|
- !ruby/object:Gem::Version
|
27
28
|
version: '0.10'
|
28
|
-
- !ruby/object:Gem::Dependency
|
29
29
|
type: :runtime
|
30
30
|
prerelease: false
|
31
|
+
- !ruby/object:Gem::Dependency
|
31
32
|
name: builder
|
32
33
|
version_requirements: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
33
35
|
requirements:
|
34
36
|
- - ! '>='
|
35
37
|
- !ruby/object:Gem::Version
|
36
38
|
version: 3.0.0
|
37
39
|
requirement: !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
38
41
|
requirements:
|
39
42
|
- - ! '>='
|
40
43
|
- !ruby/object:Gem::Version
|
41
44
|
version: 3.0.0
|
42
|
-
|
43
|
-
type: :development
|
45
|
+
type: :runtime
|
44
46
|
prerelease: false
|
47
|
+
- !ruby/object:Gem::Dependency
|
45
48
|
name: bundler
|
46
49
|
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
47
51
|
requirements:
|
48
52
|
- - ~>
|
49
53
|
- !ruby/object:Gem::Version
|
50
54
|
version: '1.3'
|
51
55
|
requirement: !ruby/object:Gem::Requirement
|
56
|
+
none: false
|
52
57
|
requirements:
|
53
58
|
- - ~>
|
54
59
|
- !ruby/object:Gem::Version
|
55
60
|
version: '1.3'
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
61
|
type: :development
|
58
62
|
prerelease: false
|
63
|
+
- !ruby/object:Gem::Dependency
|
59
64
|
name: rake
|
60
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
61
67
|
requirements:
|
62
68
|
- - ! '>='
|
63
69
|
- !ruby/object:Gem::Version
|
64
70
|
version: '0'
|
65
71
|
requirement: !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
66
73
|
requirements:
|
67
74
|
- - ! '>='
|
68
75
|
- !ruby/object:Gem::Version
|
69
76
|
version: '0'
|
70
|
-
- !ruby/object:Gem::Dependency
|
71
77
|
type: :development
|
72
78
|
prerelease: false
|
79
|
+
- !ruby/object:Gem::Dependency
|
73
80
|
name: rspec
|
74
81
|
version_requirements: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
75
83
|
requirements:
|
76
84
|
- - ~>
|
77
85
|
- !ruby/object:Gem::Version
|
78
86
|
version: 3.0.0.beta1
|
79
87
|
requirement: !ruby/object:Gem::Requirement
|
88
|
+
none: false
|
80
89
|
requirements:
|
81
90
|
- - ~>
|
82
91
|
- !ruby/object:Gem::Version
|
83
92
|
version: 3.0.0.beta1
|
84
|
-
- !ruby/object:Gem::Dependency
|
85
93
|
type: :development
|
86
94
|
prerelease: false
|
95
|
+
- !ruby/object:Gem::Dependency
|
87
96
|
name: debugger
|
88
97
|
version_requirements: !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
89
99
|
requirements:
|
90
100
|
- - ~>
|
91
101
|
- !ruby/object:Gem::Version
|
92
102
|
version: '1.6'
|
93
103
|
requirement: !ruby/object:Gem::Requirement
|
104
|
+
none: false
|
94
105
|
requirements:
|
95
106
|
- - ~>
|
96
107
|
- !ruby/object:Gem::Version
|
97
108
|
version: '1.6'
|
98
|
-
- !ruby/object:Gem::Dependency
|
99
109
|
type: :development
|
100
110
|
prerelease: false
|
111
|
+
- !ruby/object:Gem::Dependency
|
101
112
|
name: timecop
|
102
113
|
version_requirements: !ruby/object:Gem::Requirement
|
114
|
+
none: false
|
103
115
|
requirements:
|
104
116
|
- - ~>
|
105
117
|
- !ruby/object:Gem::Version
|
106
118
|
version: '0.7'
|
107
119
|
requirement: !ruby/object:Gem::Requirement
|
120
|
+
none: false
|
108
121
|
requirements:
|
109
122
|
- - ~>
|
110
123
|
- !ruby/object:Gem::Version
|
111
124
|
version: '0.7'
|
125
|
+
type: :development
|
126
|
+
prerelease: false
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: webmock
|
129
|
+
version_requirements: !ruby/object:Gem::Requirement
|
130
|
+
none: false
|
131
|
+
requirements:
|
132
|
+
- - ~>
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: 1.16.0
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
136
|
+
none: false
|
137
|
+
requirements:
|
138
|
+
- - ~>
|
139
|
+
- !ruby/object:Gem::Version
|
140
|
+
version: 1.16.0
|
141
|
+
type: :development
|
142
|
+
prerelease: false
|
112
143
|
description: Ruby implementation for Walmart Open API.
|
113
144
|
email:
|
114
145
|
- ngan@listia.com
|
@@ -163,26 +194,27 @@ files:
|
|
163
194
|
homepage: https://github.com/listia/walmart_open
|
164
195
|
licenses:
|
165
196
|
- MIT
|
166
|
-
metadata: {}
|
167
197
|
post_install_message:
|
168
198
|
rdoc_options: []
|
169
199
|
require_paths:
|
170
200
|
- lib
|
171
201
|
required_ruby_version: !ruby/object:Gem::Requirement
|
202
|
+
none: false
|
172
203
|
requirements:
|
173
204
|
- - ! '>='
|
174
205
|
- !ruby/object:Gem::Version
|
175
206
|
version: '0'
|
176
207
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
208
|
+
none: false
|
177
209
|
requirements:
|
178
210
|
- - ! '>='
|
179
211
|
- !ruby/object:Gem::Version
|
180
212
|
version: '0'
|
181
213
|
requirements: []
|
182
214
|
rubyforge_project:
|
183
|
-
rubygems_version:
|
215
|
+
rubygems_version: 1.8.25
|
184
216
|
signing_key:
|
185
|
-
specification_version:
|
217
|
+
specification_version: 3
|
186
218
|
summary: Ruby implementation for Walmart Open API
|
187
219
|
test_files:
|
188
220
|
- spec/spec_helper.rb
|
checksums.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
---
|
2
|
-
!binary "U0hBMQ==":
|
3
|
-
metadata.gz: !binary |-
|
4
|
-
MGFiOWIwMDA1YjYxYjY3Yjc4OWM2OTlhZmU3ZjlkNDA2MDIwZmQ0Mw==
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
NTMzNWFhODAxZDRkNWRmNTE4MzNkYTVlYTI4NjdmNjc1YTAxY2U5Yg==
|
7
|
-
SHA512:
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
NzNlNDhmYzg0YTgzOGY0ZTE5MTJiYmM3YzQwMDk1YzQxNTZhNWJiMmQ3MDNh
|
10
|
-
MjFkMTI1ZTExYjI4ZWQzZGI3MjYxMWE4MmQ2NmJiMWFmY2JjNTdmYTBkOTkz
|
11
|
-
YWNmMjU3ODAyN2I0M2FlMTYzYTY4ODA4MDQxMmNhMDA2ZGVkMGY=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NmMzZDZkZjQ5ODZlZTFmN2FiNWM0NWI2MTdmODI5YzA0YWJjZGRhOTg0Nzlm
|
14
|
-
YWEyODBmYThlNmM1NTY1ZTkxZjM4MmY3NTFlODIzZDUwZDkzYzRlMTEzZjc1
|
15
|
-
Y2QxNjA2ODgwOTExNmFmZGY1ZWI2NjViZTFiN2FjMDQ5NjkxOTk=
|