yotpo 0.0.2
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.
- checksums.yaml +15 -0
- data/.gitignore +20 -0
- data/.rspec +3 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +4 -0
- data/Gemfile +16 -0
- data/LICENSE.txt +22 -0
- data/README.md +51 -0
- data/Rakefile +11 -0
- data/lib/yotpo/api/account.rb +45 -0
- data/lib/yotpo/api/account_platform.rb +20 -0
- data/lib/yotpo/api/product.rb +25 -0
- data/lib/yotpo/api/purchase.rb +38 -0
- data/lib/yotpo/api/reminder.rb +14 -0
- data/lib/yotpo/api/review.rb +67 -0
- data/lib/yotpo/api/user.rb +64 -0
- data/lib/yotpo/client.rb +134 -0
- data/lib/yotpo/core/response_parser.rb +84 -0
- data/lib/yotpo/version.rb +3 -0
- data/lib/yotpo.rb +58 -0
- data/spec/api/account_platform_spec.rb +33 -0
- data/spec/api/account_spec.rb +45 -0
- data/spec/api/product_spec.rb +44 -0
- data/spec/api/purchase_spec.rb +100 -0
- data/spec/api/reminder_spec.rb +22 -0
- data/spec/api/review_spec.rb +55 -0
- data/spec/api/user_spec.rb +63 -0
- data/spec/fixtures/bearer_token.json +4 -0
- data/spec/fixtures/check_subdomain.json +12 -0
- data/spec/fixtures/get_all_bottom_lines.json +29 -0
- data/spec/fixtures/get_list_of_purchases.json +39 -0
- data/spec/fixtures/get_login_url.json +10 -0
- data/spec/fixtures/get_product_bottom_line.json +12 -0
- data/spec/fixtures/get_product_reviews.json +356 -0
- data/spec/fixtures/new_account_platform.json +23 -0
- data/spec/fixtures/new_purchase.json +4 -0
- data/spec/fixtures/new_review.json +64 -0
- data/spec/fixtures/new_user.json +12 -0
- data/spec/fixtures/send_test_email.json +6 -0
- data/spec/fixtures/update_account.json +53 -0
- data/spec/helper.rb +65 -0
- data/spec/yotpo_spec.rb +4 -0
- data/yotpo.gemspec +29 -0
- metadata +193 -0
@@ -0,0 +1,356 @@
|
|
1
|
+
{
|
2
|
+
"status":{
|
3
|
+
"code":200,
|
4
|
+
"message":"OK"
|
5
|
+
},
|
6
|
+
"response":{
|
7
|
+
"total_reviews":10,
|
8
|
+
"reviews":[
|
9
|
+
{
|
10
|
+
"id":72714,
|
11
|
+
"content":"I got it for my boyfriend and he loves it! We just wish the lens cap was removable so that he could keep it on all week and use it for work, instead he takes it off during the week and puts it on during the weekend. But we love the cool/fun pictures it's able to take and the fact that you can just take a regular picture too. ",
|
12
|
+
"title":"So fun!",
|
13
|
+
"score":5,
|
14
|
+
"user":{
|
15
|
+
"id":45416,
|
16
|
+
"display_name":"Taylor R.",
|
17
|
+
"slug":"taylor-r--3",
|
18
|
+
"social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
19
|
+
"bio":null,
|
20
|
+
"score":16,
|
21
|
+
"badges":[
|
22
|
+
{
|
23
|
+
"id":1,
|
24
|
+
"name":"Newbie",
|
25
|
+
"description":"Hooray, you wrote your first review with Yotpo! Now you have this cool profile page, and you can earn Yotpo score and have even more badges.",
|
26
|
+
"image_100":"http://s3.amazonaws.com/yotpo-static-images/badges/100/1.png",
|
27
|
+
"image_300":"http://s3.amazonaws.com/yotpo-static-images/badges/300/1.png"
|
28
|
+
}
|
29
|
+
]
|
30
|
+
},
|
31
|
+
"user_type":"User",
|
32
|
+
"users":[],
|
33
|
+
"products":[
|
34
|
+
{
|
35
|
+
"Location_idx":[
|
36
|
+
0,
|
37
|
+
0
|
38
|
+
],
|
39
|
+
"Product":{
|
40
|
+
"product_url":"http://shop.holgadirect.com/products/holga-iphone-5-lens-filter-case-kit-slft-ip5",
|
41
|
+
"id":1314,
|
42
|
+
"name":"Holga iPhone 5 Lens Filter and Case Kit SLFT-IP5",
|
43
|
+
"slug":"holga-iphone-5-lens-filter-and-case-kit-slft-ip5",
|
44
|
+
"shorten_url":"https://yotpo.com/go/41is",
|
45
|
+
"images":[
|
46
|
+
{
|
47
|
+
"id":1136,
|
48
|
+
"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/1314/1136/square.jpg_3F1144?1351608907"
|
49
|
+
}
|
50
|
+
],
|
51
|
+
"social_network_links":{
|
52
|
+
"facebook":"https://yotpo.com/go/j5a8",
|
53
|
+
"twitter":"https://yotpo.com/go/j5a9",
|
54
|
+
"linkedin":"https://yotpo.com/go/j5aa",
|
55
|
+
"google_oauth2":"https://yotpo.com/go/j5ab"
|
56
|
+
},
|
57
|
+
"facebook_testemonials_page_product_url":"https://yotpo.com/go/108w0"
|
58
|
+
}
|
59
|
+
}
|
60
|
+
],
|
61
|
+
"votes_up":0,
|
62
|
+
"votes_down":0,
|
63
|
+
"user_vote":0,
|
64
|
+
"created_at":"2013-04-28T13:46:42Z",
|
65
|
+
"deleted":false,
|
66
|
+
"new":true,
|
67
|
+
"distance":999,
|
68
|
+
"verified_buyer":true,
|
69
|
+
"archived":false,
|
70
|
+
"facebook_pushed":true,
|
71
|
+
"twitter_pushed":false,
|
72
|
+
"social_pushed":true,
|
73
|
+
"account":{
|
74
|
+
"id":1176,
|
75
|
+
"domain":"http://shop.holgadirect.com"
|
76
|
+
}
|
77
|
+
},
|
78
|
+
{
|
79
|
+
"id":57701,
|
80
|
+
"content":"A really fun purchase. Would definitely recommend it to others! My only concern is that the lens cap is easily misplaced.",
|
81
|
+
"title":"Great fun lenses for my phone",
|
82
|
+
"score":4,
|
83
|
+
"user":{
|
84
|
+
"id":38702,
|
85
|
+
"display_name":"Kate F.",
|
86
|
+
"slug":"kate-f",
|
87
|
+
"social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
88
|
+
"bio":null,
|
89
|
+
"score":16,
|
90
|
+
"badges":[
|
91
|
+
{
|
92
|
+
"id":1,
|
93
|
+
"name":"Newbie",
|
94
|
+
"description":"Hooray, you wrote your first review with Yotpo! Now you have this cool profile page, and you can earn Yotpo score and have even more badges.",
|
95
|
+
"image_100":"http://s3.amazonaws.com/yotpo-static-images/badges/100/1.png",
|
96
|
+
"image_300":"http://s3.amazonaws.com/yotpo-static-images/badges/300/1.png"
|
97
|
+
}
|
98
|
+
]
|
99
|
+
},
|
100
|
+
"user_type":"User",
|
101
|
+
"users":[ ],
|
102
|
+
"products":[
|
103
|
+
{
|
104
|
+
"Location_idx":[
|
105
|
+
0,
|
106
|
+
0
|
107
|
+
],
|
108
|
+
"Product":{
|
109
|
+
"product_url":"http://shop.holgadirect.com/products/holga-iphone-5-lens-filter-case-kit-slft-ip5",
|
110
|
+
"id":1314,
|
111
|
+
"name":"Holga iPhone 5 Lens Filter and Case Kit SLFT-IP5",
|
112
|
+
"slug":"holga-iphone-5-lens-filter-and-case-kit-slft-ip5",
|
113
|
+
"shorten_url":"https://yotpo.com/go/41is",
|
114
|
+
"images":[
|
115
|
+
{
|
116
|
+
"id":1136,
|
117
|
+
"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/1314/1136/square.jpg_3F1144?1351608907"
|
118
|
+
}
|
119
|
+
],
|
120
|
+
"social_network_links":{
|
121
|
+
"facebook":"https://yotpo.com/go/j5a8",
|
122
|
+
"twitter":"https://yotpo.com/go/j5a9",
|
123
|
+
"linkedin":"https://yotpo.com/go/j5aa",
|
124
|
+
"google_oauth2":"https://yotpo.com/go/j5ab"
|
125
|
+
},
|
126
|
+
"facebook_testemonials_page_product_url":"https://yotpo.com/go/108w0"
|
127
|
+
}
|
128
|
+
}
|
129
|
+
],
|
130
|
+
"votes_up":0,
|
131
|
+
"votes_down":0,
|
132
|
+
"user_vote":0,
|
133
|
+
"created_at":"2013-04-17T14:24:12Z",
|
134
|
+
"deleted":false,
|
135
|
+
"new":true,
|
136
|
+
"distance":999,
|
137
|
+
"verified_buyer":true,
|
138
|
+
"archived":false,
|
139
|
+
"facebook_pushed":false,
|
140
|
+
"twitter_pushed":false,
|
141
|
+
"social_pushed":false,
|
142
|
+
"account":{
|
143
|
+
"id":1176,
|
144
|
+
"domain":"http://shop.holgadirect.com"
|
145
|
+
}
|
146
|
+
},
|
147
|
+
{
|
148
|
+
"id":50617,
|
149
|
+
"content":"Very quick delivery !",
|
150
|
+
"title":"Very quick delivery !",
|
151
|
+
"score":5,
|
152
|
+
"user":{
|
153
|
+
"id":34889,
|
154
|
+
"display_name":"Chiaohsi T.",
|
155
|
+
"slug":"chiaohsi-t",
|
156
|
+
"social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
157
|
+
"bio":null,
|
158
|
+
"score":16,
|
159
|
+
"badges":[
|
160
|
+
{
|
161
|
+
"id":1,
|
162
|
+
"name":"Newbie",
|
163
|
+
"description":"Hooray, you wrote your first review with Yotpo! Now you have this cool profile page, and you can earn Yotpo score and have even more badges.",
|
164
|
+
"image_100":"http://s3.amazonaws.com/yotpo-static-images/badges/100/1.png",
|
165
|
+
"image_300":"http://s3.amazonaws.com/yotpo-static-images/badges/300/1.png"
|
166
|
+
}
|
167
|
+
]
|
168
|
+
},
|
169
|
+
"user_type":"User",
|
170
|
+
"users":[ ],
|
171
|
+
"products":[
|
172
|
+
{
|
173
|
+
"Location_idx":[
|
174
|
+
0,
|
175
|
+
0
|
176
|
+
],
|
177
|
+
"Product":{
|
178
|
+
"product_url":"http://shop.holgadirect.com/products/holga-iphone-5-lens-filter-case-kit-slft-ip5",
|
179
|
+
"id":1314,
|
180
|
+
"name":"Holga iPhone 5 Lens Filter and Case Kit SLFT-IP5",
|
181
|
+
"slug":"holga-iphone-5-lens-filter-and-case-kit-slft-ip5",
|
182
|
+
"shorten_url":"https://yotpo.com/go/41is",
|
183
|
+
"images":[
|
184
|
+
{
|
185
|
+
"id":1136,
|
186
|
+
"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/1314/1136/square.jpg_3F1144?1351608907"
|
187
|
+
}
|
188
|
+
],
|
189
|
+
"social_network_links":{
|
190
|
+
"facebook":"https://yotpo.com/go/j5a8",
|
191
|
+
"twitter":"https://yotpo.com/go/j5a9",
|
192
|
+
"linkedin":"https://yotpo.com/go/j5aa",
|
193
|
+
"google_oauth2":"https://yotpo.com/go/j5ab"
|
194
|
+
},
|
195
|
+
"facebook_testemonials_page_product_url":"https://yotpo.com/go/108w0"
|
196
|
+
}
|
197
|
+
}
|
198
|
+
],
|
199
|
+
"votes_up":0,
|
200
|
+
"votes_down":0,
|
201
|
+
"user_vote":0,
|
202
|
+
"created_at":"2013-04-11T05:09:50Z",
|
203
|
+
"deleted":false,
|
204
|
+
"new":true,
|
205
|
+
"distance":999,
|
206
|
+
"verified_buyer":true,
|
207
|
+
"archived":false,
|
208
|
+
"facebook_pushed":false,
|
209
|
+
"twitter_pushed":false,
|
210
|
+
"social_pushed":false,
|
211
|
+
"account":{
|
212
|
+
"id":1176,
|
213
|
+
"domain":"http://shop.holgadirect.com"
|
214
|
+
}
|
215
|
+
},
|
216
|
+
{
|
217
|
+
"id":48162,
|
218
|
+
"content":"A great little gadget to catch those special moments. It is easy to use and brings your pictures to life. The only fault that I have is that it blocks the flash, other than that I am really happy with my purchase.",
|
219
|
+
"title":"A great little gadget to",
|
220
|
+
"score":5,
|
221
|
+
"user":{
|
222
|
+
"id":32922,
|
223
|
+
"display_name":"Janine P.",
|
224
|
+
"slug":"janine-p",
|
225
|
+
"social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
226
|
+
"bio":null,
|
227
|
+
"score":16,
|
228
|
+
"badges":[
|
229
|
+
{
|
230
|
+
"id":1,
|
231
|
+
"name":"Newbie",
|
232
|
+
"description":"Hooray, you wrote your first review with Yotpo! Now you have this cool profile page, and you can earn Yotpo score and have even more badges.",
|
233
|
+
"image_100":"http://s3.amazonaws.com/yotpo-static-images/badges/100/1.png",
|
234
|
+
"image_300":"http://s3.amazonaws.com/yotpo-static-images/badges/300/1.png"
|
235
|
+
}
|
236
|
+
]
|
237
|
+
},
|
238
|
+
"user_type":"User",
|
239
|
+
"users":[ ],
|
240
|
+
"products":[
|
241
|
+
{
|
242
|
+
"Location_idx":[
|
243
|
+
0,
|
244
|
+
0
|
245
|
+
],
|
246
|
+
"Product":{
|
247
|
+
"product_url":"http://shop.holgadirect.com/products/holga-iphone-5-lens-filter-case-kit-slft-ip5",
|
248
|
+
"id":1314,
|
249
|
+
"name":"Holga iPhone 5 Lens Filter and Case Kit SLFT-IP5",
|
250
|
+
"slug":"holga-iphone-5-lens-filter-and-case-kit-slft-ip5",
|
251
|
+
"shorten_url":"https://yotpo.com/go/41is",
|
252
|
+
"images":[
|
253
|
+
{
|
254
|
+
"id":1136,
|
255
|
+
"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/1314/1136/square.jpg_3F1144?1351608907"
|
256
|
+
}
|
257
|
+
],
|
258
|
+
"social_network_links":{
|
259
|
+
"facebook":"https://yotpo.com/go/j5a8",
|
260
|
+
"twitter":"https://yotpo.com/go/j5a9",
|
261
|
+
"linkedin":"https://yotpo.com/go/j5aa",
|
262
|
+
"google_oauth2":"https://yotpo.com/go/j5ab"
|
263
|
+
},
|
264
|
+
"facebook_testemonials_page_product_url":"https://yotpo.com/go/108w0"
|
265
|
+
}
|
266
|
+
}
|
267
|
+
],
|
268
|
+
"votes_up":0,
|
269
|
+
"votes_down":0,
|
270
|
+
"user_vote":0,
|
271
|
+
"created_at":"2013-04-07T11:05:47Z",
|
272
|
+
"deleted":false,
|
273
|
+
"new":true,
|
274
|
+
"distance":999,
|
275
|
+
"verified_buyer":true,
|
276
|
+
"archived":false,
|
277
|
+
"facebook_pushed":false,
|
278
|
+
"twitter_pushed":false,
|
279
|
+
"social_pushed":false,
|
280
|
+
"account":{
|
281
|
+
"id":1176,
|
282
|
+
"domain":"http://shop.holgadirect.com"
|
283
|
+
}
|
284
|
+
},
|
285
|
+
{
|
286
|
+
"id":18540,
|
287
|
+
"content":"Everything goes right. Beautiful product, beautiful service! ",
|
288
|
+
"title":"Perfect!",
|
289
|
+
"score":5,
|
290
|
+
"user":{
|
291
|
+
"id":13291,
|
292
|
+
"display_name":"Claudia Manusardi",
|
293
|
+
"slug":"claudia-manusardi",
|
294
|
+
"social_image":"https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
295
|
+
"bio":null,
|
296
|
+
"score":16,
|
297
|
+
"badges":[
|
298
|
+
{
|
299
|
+
"id":1,
|
300
|
+
"name":"Newbie",
|
301
|
+
"description":"Hooray, you wrote your first review with Yotpo! Now you have this cool profile page, and you can earn Yotpo score and have even more badges.",
|
302
|
+
"image_100":"http://s3.amazonaws.com/yotpo-static-images/badges/100/1.png",
|
303
|
+
"image_300":"http://s3.amazonaws.com/yotpo-static-images/badges/300/1.png"
|
304
|
+
}
|
305
|
+
]
|
306
|
+
},
|
307
|
+
"user_type":"User",
|
308
|
+
"users":[ ],
|
309
|
+
"products":[
|
310
|
+
{
|
311
|
+
"Location_idx":[
|
312
|
+
0,
|
313
|
+
0
|
314
|
+
],
|
315
|
+
"Product":{
|
316
|
+
"product_url":"http://shop.holgadirect.com/products/holga-iphone-5-lens-filter-case-kit-slft-ip5",
|
317
|
+
"id":1314,
|
318
|
+
"name":"Holga iPhone 5 Lens Filter and Case Kit SLFT-IP5",
|
319
|
+
"slug":"holga-iphone-5-lens-filter-and-case-kit-slft-ip5",
|
320
|
+
"shorten_url":"https://yotpo.com/go/41is",
|
321
|
+
"images":[
|
322
|
+
{
|
323
|
+
"id":1136,
|
324
|
+
"image_url":"http://ddcfq0gxiontw.cloudfront.net/Product/1314/1136/square.jpg_3F1144?1351608907"
|
325
|
+
}
|
326
|
+
],
|
327
|
+
"social_network_links":{
|
328
|
+
"facebook":"https://yotpo.com/go/j5a8",
|
329
|
+
"twitter":"https://yotpo.com/go/j5a9",
|
330
|
+
"linkedin":"https://yotpo.com/go/j5aa",
|
331
|
+
"google_oauth2":"https://yotpo.com/go/j5ab"
|
332
|
+
},
|
333
|
+
"facebook_testemonials_page_product_url":"https://yotpo.com/go/108w0"
|
334
|
+
}
|
335
|
+
}
|
336
|
+
],
|
337
|
+
"votes_up":0,
|
338
|
+
"votes_down":0,
|
339
|
+
"user_vote":0,
|
340
|
+
"created_at":"2013-02-09T11:54:53Z",
|
341
|
+
"deleted":false,
|
342
|
+
"new":true,
|
343
|
+
"distance":999,
|
344
|
+
"verified_buyer":true,
|
345
|
+
"archived":false,
|
346
|
+
"facebook_pushed":true,
|
347
|
+
"twitter_pushed":true,
|
348
|
+
"social_pushed":true,
|
349
|
+
"account":{
|
350
|
+
"id":1176,
|
351
|
+
"domain":"http://shop.holgadirect.com"
|
352
|
+
}
|
353
|
+
}
|
354
|
+
]
|
355
|
+
}
|
356
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
{
|
2
|
+
"status" : {
|
3
|
+
"code" : 200,
|
4
|
+
"message" : "OK"
|
5
|
+
},
|
6
|
+
"response" : {
|
7
|
+
"account_platform" : {
|
8
|
+
"id" : 8,
|
9
|
+
"shop_token" : "",
|
10
|
+
"shop_domain" : "http://omricohen.me",
|
11
|
+
"shop_api_url" : null,
|
12
|
+
"plan_name" : "",
|
13
|
+
"platform_type" : {
|
14
|
+
"id" : 4,
|
15
|
+
"name" : "3dcart",
|
16
|
+
"description" : null,
|
17
|
+
"billable" : false
|
18
|
+
},
|
19
|
+
"deleted" : false,
|
20
|
+
"shop_user_name" : null
|
21
|
+
}
|
22
|
+
}
|
23
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
{
|
2
|
+
"status": {
|
3
|
+
"code": 200,
|
4
|
+
"message": "OK"
|
5
|
+
},
|
6
|
+
"response": {
|
7
|
+
"reviews": [
|
8
|
+
{
|
9
|
+
"id": 57707,
|
10
|
+
"content": "Another trial",
|
11
|
+
"title": "Trial Review",
|
12
|
+
"score": 4,
|
13
|
+
"user": {
|
14
|
+
"id": 24489,
|
15
|
+
"display_name": "Omi",
|
16
|
+
"slug": null,
|
17
|
+
"social_image": "https://ddcfq0gxiontw.cloudfront.net/images/anonymous_user.png",
|
18
|
+
"bio": null,
|
19
|
+
"score": null,
|
20
|
+
"badges": null
|
21
|
+
},
|
22
|
+
"user_type": "AnonymousUser",
|
23
|
+
"users": [],
|
24
|
+
"products": [
|
25
|
+
{
|
26
|
+
"Location_idx": [
|
27
|
+
0,
|
28
|
+
0
|
29
|
+
],
|
30
|
+
"Product": {
|
31
|
+
"product_url": "http://shop.yotpo.com/products/amazing-yotpo-poster",
|
32
|
+
"id": 239,
|
33
|
+
"name": "Amazing Yotpo poster",
|
34
|
+
"slug": "amazing-yotpo-poster",
|
35
|
+
"shorten_url": "https://yotpo.com/go/3urd",
|
36
|
+
"images": [
|
37
|
+
{
|
38
|
+
"id": 200,
|
39
|
+
"image_url": "http://ddcfq0gxiontw.cloudfront.net/Product/239/200/square.png_3F848?1336834622"
|
40
|
+
}
|
41
|
+
],
|
42
|
+
"social_network_links": {
|
43
|
+
"facebook": "https://yotpo.com/go/hxp2",
|
44
|
+
"twitter": "https://yotpo.com/go/hxp3",
|
45
|
+
"linkedin": "https://yotpo.com/go/hxp4",
|
46
|
+
"google_oauth2": "https://yotpo.com/go/hxp5"
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
],
|
51
|
+
"votes_up": 0,
|
52
|
+
"votes_down": 0,
|
53
|
+
"user_vote": 0,
|
54
|
+
"created_at": "2013-04-17T14:33:04Z",
|
55
|
+
"deleted": false,
|
56
|
+
"new": true,
|
57
|
+
"distance": 999,
|
58
|
+
"verified_buyer": false,
|
59
|
+
"archived": false,
|
60
|
+
"social_pushed": false
|
61
|
+
}
|
62
|
+
]
|
63
|
+
}
|
64
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
{
|
2
|
+
"status": {
|
3
|
+
"code": 200,
|
4
|
+
"message": "OK"
|
5
|
+
},
|
6
|
+
"response": {
|
7
|
+
"user_id": 11,
|
8
|
+
"token": "NkLHMUYXnkIRrb3UUVpCtI0EIHconaoFEMzgpYXt",
|
9
|
+
"app_key": "a3lmMnC3u4SNmz0ZcHf3lODeIYM9LEQwtTWXRdDP",
|
10
|
+
"secret": "NumuadvlCGOTwnCCvY5BRAhGib1LTCFptYxfvebm"
|
11
|
+
}
|
12
|
+
}
|
@@ -0,0 +1,53 @@
|
|
1
|
+
{
|
2
|
+
"status" : {
|
3
|
+
"code" : 200,
|
4
|
+
"message" : "OK"
|
5
|
+
},
|
6
|
+
"response" : {
|
7
|
+
"app" : {
|
8
|
+
"app_key" : "1sYGo0GzHi8vG7JYja14tpgMQw4CWbcyg9xEjlVX",
|
9
|
+
"domain" : "http://omricohen.me",
|
10
|
+
"minisite_subdomain" : "shalom1",
|
11
|
+
"minisite_cname" : "reviews.mydomain.com",
|
12
|
+
"minisite_website" : "http://www.mydomain.com",
|
13
|
+
"minisite_website_name" : "My Domain Awesome Shop!",
|
14
|
+
"referal" : "",
|
15
|
+
"active" : true,
|
16
|
+
"auto_publish" : true,
|
17
|
+
"minisite_subdomain_active" : false,
|
18
|
+
"account_type" : {
|
19
|
+
"id" : 1,
|
20
|
+
"name" : "small",
|
21
|
+
"description" : "dummy description",
|
22
|
+
"price" : 14.9
|
23
|
+
},
|
24
|
+
"account_socials" : [ ],
|
25
|
+
"account_platform" : {
|
26
|
+
"id" : 7,
|
27
|
+
"shop_token" : "",
|
28
|
+
"shop_domain" : "http://omricohen.me",
|
29
|
+
"shop_api_url" : null,
|
30
|
+
"plan_name" : "",
|
31
|
+
"platform_type" : {
|
32
|
+
"id" : 4,
|
33
|
+
"name" : "3dcart",
|
34
|
+
"description" : null,
|
35
|
+
"billable" : false
|
36
|
+
},
|
37
|
+
"deleted" : false,
|
38
|
+
"shop_user_name" : null
|
39
|
+
},
|
40
|
+
"bills" : [ ],
|
41
|
+
"users" : [ {
|
42
|
+
"id" : 15,
|
43
|
+
"display_name" : "Omri Cohen",
|
44
|
+
"slug" : "omri-cohen--9"
|
45
|
+
} ],
|
46
|
+
"reminders" : [ ],
|
47
|
+
"custom_design" : false,
|
48
|
+
"created_at" : "2012-12-11T10:54:31Z",
|
49
|
+
"updated_at" : "2012-12-11T11:21:25Z",
|
50
|
+
"auto_login_popup" : false
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
data/spec/helper.rb
ADDED
@@ -0,0 +1,65 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
require 'coveralls'
|
3
|
+
require 'rspec'
|
4
|
+
require 'webmock/rspec'
|
5
|
+
require 'ffaker'
|
6
|
+
require 'yotpo'
|
7
|
+
|
8
|
+
|
9
|
+
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
|
10
|
+
SimpleCov::Formatter::HTMLFormatter,
|
11
|
+
Coveralls::SimpleCov::Formatter
|
12
|
+
]
|
13
|
+
SimpleCov.start
|
14
|
+
|
15
|
+
WebMock.disable_net_connect!(:allow => 'coveralls.io')
|
16
|
+
|
17
|
+
RSpec.configure do |config|
|
18
|
+
config.expect_with :rspec do |c|
|
19
|
+
c.syntax = :expect
|
20
|
+
end
|
21
|
+
|
22
|
+
config.before(:all) do
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def a_delete(path)
|
28
|
+
a_request(:delete, 'https://api.yotpo.com' + path)
|
29
|
+
end
|
30
|
+
|
31
|
+
def a_get(path)
|
32
|
+
a_request(:get, 'https://api.yotpo.com' + path)
|
33
|
+
end
|
34
|
+
|
35
|
+
def a_post(path)
|
36
|
+
a_request(:post, 'https://api.yotpo.com' + path)
|
37
|
+
end
|
38
|
+
|
39
|
+
def a_put(path)
|
40
|
+
a_request(:put, 'https://api.yotpo.com' + path)
|
41
|
+
end
|
42
|
+
|
43
|
+
def stub_delete(path)
|
44
|
+
stub_request(:delete, 'https://api.yotpo.com' + path)
|
45
|
+
end
|
46
|
+
|
47
|
+
def stub_get(path)
|
48
|
+
stub_request(:get, 'https://api.yotpo.com' + path)
|
49
|
+
end
|
50
|
+
|
51
|
+
def stub_post(path)
|
52
|
+
stub_request(:post, 'https://api.yotpo.com' + path)
|
53
|
+
end
|
54
|
+
|
55
|
+
def stub_put(path)
|
56
|
+
stub_request(:put, 'https://api.yotpo.com' + path)
|
57
|
+
end
|
58
|
+
|
59
|
+
def fixture_path
|
60
|
+
File.expand_path('../fixtures', __FILE__)
|
61
|
+
end
|
62
|
+
|
63
|
+
def fixture(file)
|
64
|
+
File.new(fixture_path + '/' + file)
|
65
|
+
end
|
data/spec/yotpo_spec.rb
ADDED
data/yotpo.gemspec
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require File.expand_path('yotpo/version', lib)
|
5
|
+
|
6
|
+
Gem::Specification.new do |gem|
|
7
|
+
gem.name = 'yotpo'
|
8
|
+
gem.version = Yotpo::VERSION
|
9
|
+
gem.authors = ['Vladislav Shub']
|
10
|
+
gem.email = %w(vlad@yotpo.com)
|
11
|
+
gem.description = %q{A Ruby interface to the YOTPO API}
|
12
|
+
gem.summary = %q{A Ruby interface to the YOTPO API}
|
13
|
+
gem.homepage = 'https://github.com/YotpoLtd/yotpo-ruby'
|
14
|
+
|
15
|
+
gem.files = `git ls-files`.split($/)
|
16
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
|
+
gem.require_paths = %w(lib)
|
19
|
+
|
20
|
+
gem.add_dependency 'faraday'
|
21
|
+
gem.add_dependency 'typhoeus'
|
22
|
+
gem.add_dependency 'faraday_middleware'
|
23
|
+
gem.add_dependency 'rash'
|
24
|
+
gem.add_dependency 'oj'
|
25
|
+
gem.add_dependency 'activesupport'
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
end
|