peddler 0.6.5 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (220) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +62 -81
  4. data/lib/mws/cart_information.rb +13 -0
  5. data/lib/mws/customer_information.rb +16 -0
  6. data/lib/mws/feeds.rb +110 -1
  7. data/lib/mws/fulfillment_inbound_shipment.rb +13 -1
  8. data/lib/mws/fulfillment_inventory.rb +15 -1
  9. data/lib/mws/fulfillment_outbound_shipment.rb +17 -1
  10. data/lib/mws/off_amazon_payments.rb +15 -1
  11. data/lib/mws/orders.rb +100 -1
  12. data/lib/mws/products.rb +238 -1
  13. data/lib/mws/recommendations.rb +13 -1
  14. data/lib/mws/reports.rb +221 -1
  15. data/lib/mws/sellers.rb +40 -1
  16. data/lib/mws/subscriptions.rb +175 -1
  17. data/lib/peddler/client.rb +77 -37
  18. data/lib/peddler/csv_parser.rb +42 -0
  19. data/lib/peddler/operation.rb +44 -0
  20. data/lib/peddler/parser.rb +21 -0
  21. data/lib/peddler/structured_list.rb +22 -0
  22. data/lib/peddler/version.rb +1 -1
  23. data/lib/peddler/xml_parser.rb +25 -0
  24. data/lib/peddler.rb +2 -0
  25. data/test/helper.rb +1 -1
  26. data/test/integration/test_feeds.rb +18 -0
  27. data/test/integration/test_orders.rb +22 -0
  28. data/test/integration/test_products.rb +53 -0
  29. data/test/integration/test_reports.rb +47 -0
  30. data/test/integration/test_sellers.rb +18 -0
  31. data/test/integration/test_subscriptions.rb +26 -0
  32. data/test/integration_helper.rb +41 -8
  33. data/test/mws.yml +32 -0
  34. data/test/mws.yml.example +4 -0
  35. data/test/unit/peddler/test_client.rb +97 -0
  36. data/test/unit/peddler/test_csv_parser.rb +24 -0
  37. data/test/unit/peddler/test_operation.rb +34 -0
  38. data/test/{peddler/request → unit/peddler}/test_structured_list.rb +5 -5
  39. data/test/unit/peddler/test_xml_parser.rb +19 -0
  40. data/test/{test_peddler.rb → unit/test_peddler.rb} +2 -2
  41. data/test/vcr_cassettes/Feeds.yml +695 -0
  42. data/test/vcr_cassettes/Orders.yml +29855 -0
  43. data/test/vcr_cassettes/Products.yml +8597 -0
  44. data/test/vcr_cassettes/Reports.yml +1881 -0
  45. data/test/vcr_cassettes/Sellers.yml +697 -0
  46. data/test/vcr_cassettes/Subscriptions.yml +1369 -0
  47. metadata +91 -297
  48. data/lib/mws/feeds/client.rb +0 -116
  49. data/lib/mws/feeds/parsers/feed.rb +0 -14
  50. data/lib/mws/feeds/parsers/feed_submission_count.rb +0 -10
  51. data/lib/mws/feeds/parsers/feed_submission_info.rb +0 -25
  52. data/lib/mws/feeds/parsers/feed_submission_list.rb +0 -23
  53. data/lib/mws/feeds/parsers/feed_submission_result.rb +0 -10
  54. data/lib/mws/feeds/parsers/feed_submissions.rb +0 -18
  55. data/lib/mws/feeds/requests/feed.rb +0 -38
  56. data/lib/mws/feeds/requests/feed_submission_count.rb +0 -20
  57. data/lib/mws/feeds/requests/feed_submission_list.rb +0 -30
  58. data/lib/mws/feeds/requests/feed_submission_result.rb +0 -18
  59. data/lib/mws/feeds/requests/feed_submissions.rb +0 -20
  60. data/lib/mws/fulfillment_inbound_shipment/client.rb +0 -7
  61. data/lib/mws/fulfillment_inventory/client.rb +0 -7
  62. data/lib/mws/fulfillment_outbound_shipment/client.rb +0 -7
  63. data/lib/mws/off_amazon_payments/client.rb +0 -7
  64. data/lib/mws/orders/client.rb +0 -98
  65. data/lib/mws/orders/parsers/invoice_data.rb +0 -25
  66. data/lib/mws/orders/parsers/order.rb +0 -113
  67. data/lib/mws/orders/parsers/order_item.rb +0 -110
  68. data/lib/mws/orders/parsers/order_items.rb +0 -23
  69. data/lib/mws/orders/parsers/orders.rb +0 -23
  70. data/lib/mws/orders/parsers/payment_execution_detail.rb +0 -20
  71. data/lib/mws/orders/parsers/payment_execution_detail_item.rb +0 -17
  72. data/lib/mws/orders/parsers/service_status.rb +0 -36
  73. data/lib/mws/orders/parsers/service_status_message.rb +0 -17
  74. data/lib/mws/orders/parsers/shipping_address.rb +0 -37
  75. data/lib/mws/orders/requests/order_items.rb +0 -28
  76. data/lib/mws/orders/requests/orders.rb +0 -41
  77. data/lib/mws/orders/requests/service_status.rb +0 -15
  78. data/lib/mws/products/client.rb +0 -7
  79. data/lib/mws/recommendations/client.rb +0 -7
  80. data/lib/mws/reports/client.rb +0 -249
  81. data/lib/mws/reports/parsers/report.rb +0 -10
  82. data/lib/mws/reports/parsers/report_acknowledgements.rb +0 -20
  83. data/lib/mws/reports/parsers/report_count.rb +0 -10
  84. data/lib/mws/reports/parsers/report_info.rb +0 -29
  85. data/lib/mws/reports/parsers/report_list.rb +0 -23
  86. data/lib/mws/reports/parsers/report_request.rb +0 -14
  87. data/lib/mws/reports/parsers/report_request_count.rb +0 -10
  88. data/lib/mws/reports/parsers/report_request_info.rb +0 -49
  89. data/lib/mws/reports/parsers/report_request_list.rb +0 -23
  90. data/lib/mws/reports/parsers/report_requests.rb +0 -18
  91. data/lib/mws/reports/parsers/report_schedule.rb +0 -21
  92. data/lib/mws/reports/parsers/report_schedule_count.rb +0 -10
  93. data/lib/mws/reports/parsers/report_schedule_list.rb +0 -23
  94. data/lib/mws/reports/parsers/report_scheduler.rb +0 -19
  95. data/lib/mws/reports/requests/report.rb +0 -18
  96. data/lib/mws/reports/requests/report_acknowledgements.rb +0 -27
  97. data/lib/mws/reports/requests/report_count.rb +0 -20
  98. data/lib/mws/reports/requests/report_list.rb +0 -30
  99. data/lib/mws/reports/requests/report_request.rb +0 -21
  100. data/lib/mws/reports/requests/report_request_count.rb +0 -20
  101. data/lib/mws/reports/requests/report_request_list.rb +0 -30
  102. data/lib/mws/reports/requests/report_requests.rb +0 -20
  103. data/lib/mws/reports/requests/report_schedule_count.rb +0 -19
  104. data/lib/mws/reports/requests/report_schedule_list.rb +0 -23
  105. data/lib/mws/reports/requests/report_scheduler.rb +0 -29
  106. data/lib/mws/sellers/client.rb +0 -53
  107. data/lib/mws/sellers/parsers/marketplace.rb +0 -33
  108. data/lib/mws/sellers/parsers/marketplace_participations.rb +0 -32
  109. data/lib/mws/sellers/parsers/participation.rb +0 -21
  110. data/lib/mws/sellers/parsers/service_status.rb +0 -36
  111. data/lib/mws/sellers/parsers/service_status_message.rb +0 -17
  112. data/lib/mws/sellers/requests/marketplace_participations.rb +0 -27
  113. data/lib/mws/sellers/requests/service_status.rb +0 -15
  114. data/lib/mws/subscriptions/client.rb +0 -7
  115. data/lib/peddler/parsers/base.rb +0 -15
  116. data/lib/peddler/parsers/collection.rb +0 -23
  117. data/lib/peddler/parsers/counter.rb +0 -13
  118. data/lib/peddler/parsers/model.rb +0 -42
  119. data/lib/peddler/parsers/text.rb +0 -8
  120. data/lib/peddler/parsers/tokenable.rb +0 -13
  121. data/lib/peddler/parsers/xml.rb +0 -30
  122. data/lib/peddler/request/parameters.rb +0 -57
  123. data/lib/peddler/request/structured_list.rb +0 -48
  124. data/lib/peddler/request.rb +0 -52
  125. data/lib/peddler/response/base.rb +0 -0
  126. data/lib/peddler/response/payload/base.rb +0 -0
  127. data/lib/peddler/response/payload/csv.rb +0 -0
  128. data/lib/peddler/response/payload/xml.rb +0 -0
  129. data/lib/peddler/response.rb +0 -27
  130. data/test/fixtures/feeds/feed_submission.xml +0 -14
  131. data/test/fixtures/feeds/feed_submission_count.xml +0 -9
  132. data/test/fixtures/feeds/feed_submission_list.xml +0 -17
  133. data/test/fixtures/feeds/feed_submissions.xml +0 -15
  134. data/test/fixtures/mws.yml +0 -12
  135. data/test/fixtures/mws.yml.example +0 -4
  136. data/test/fixtures/orders/order_items.xml +0 -83
  137. data/test/fixtures/orders/orders.xml +0 -109
  138. data/test/fixtures/orders/service_status.xml +0 -19
  139. data/test/fixtures/reports/report.xml +0 -8
  140. data/test/fixtures/reports/report_acknowledgements.xml +0 -18
  141. data/test/fixtures/reports/report_count.xml +0 -9
  142. data/test/fixtures/reports/report_list.xml +0 -17
  143. data/test/fixtures/reports/report_request_count.xml +0 -9
  144. data/test/fixtures/reports/report_request_list.xml +0 -24
  145. data/test/fixtures/reports/report_requests.xml +0 -19
  146. data/test/fixtures/reports/report_schedule_count.xml +0 -10
  147. data/test/fixtures/reports/report_schedule_list.xml +0 -16
  148. data/test/fixtures/reports/report_scheduler.xml +0 -15
  149. data/test/fixtures/sellers/market_participations.xml +0 -27
  150. data/test/fixtures/sellers/service_status.xml +0 -9
  151. data/test/integration/feeds/test_feed_submission_count.rb +0 -13
  152. data/test/integration/feeds/test_feed_submission_list.rb +0 -17
  153. data/test/integration/feeds/test_feed_submission_result.rb +0 -15
  154. data/test/integration/orders/test_order_items.rb +0 -19
  155. data/test/integration/orders/test_orders.rb +0 -23
  156. data/test/integration/orders/test_service_status.rb +0 -12
  157. data/test/integration/reports/test_report.rb +0 -15
  158. data/test/integration/reports/test_report_count.rb +0 -13
  159. data/test/integration/reports/test_report_list.rb +0 -17
  160. data/test/integration/reports/test_report_request_count.rb +0 -13
  161. data/test/integration/reports/test_report_request_list.rb +0 -17
  162. data/test/integration/reports/test_report_schedule_count.rb +0 -13
  163. data/test/integration/reports/test_report_schedule_list.rb +0 -13
  164. data/test/integration/reports/test_report_scheduler.rb +0 -16
  165. data/test/integration/sellers/test_marketplace_participations.rb +0 -13
  166. data/test/integration/sellers/test_service_status.rb +0 -12
  167. data/test/mws/feeds/parsers/test_feed.rb +0 -13
  168. data/test/mws/feeds/parsers/test_feed_submission_count.rb +0 -13
  169. data/test/mws/feeds/parsers/test_feed_submission_info.rb +0 -25
  170. data/test/mws/feeds/parsers/test_feed_submission_list.rb +0 -18
  171. data/test/mws/feeds/parsers/test_feed_submission_result.rb +0 -13
  172. data/test/mws/feeds/parsers/test_feed_submissions.rb +0 -17
  173. data/test/mws/feeds/requests/test_feed.rb +0 -63
  174. data/test/mws/feeds/requests/test_feed_submission_count.rb +0 -23
  175. data/test/mws/feeds/requests/test_feed_submission_list.rb +0 -37
  176. data/test/mws/feeds/requests/test_feed_submissions.rb +0 -29
  177. data/test/mws/orders/parsers/test_order.rb +0 -86
  178. data/test/mws/orders/parsers/test_order_item.rb +0 -69
  179. data/test/mws/orders/parsers/test_order_items.rb +0 -18
  180. data/test/mws/orders/parsers/test_orders.rb +0 -18
  181. data/test/mws/orders/parsers/test_payment_execution_detail.rb +0 -14
  182. data/test/mws/orders/parsers/test_payment_execution_detail_item.rb +0 -17
  183. data/test/mws/orders/parsers/test_service_status.rb +0 -39
  184. data/test/mws/orders/parsers/test_service_status_message.rb +0 -17
  185. data/test/mws/orders/parsers/test_shipping_address.rb +0 -36
  186. data/test/mws/orders/requests/test_order_items.rb +0 -36
  187. data/test/mws/orders/requests/test_orders.rb +0 -46
  188. data/test/mws/orders/requests/test_service_status.rb +0 -25
  189. data/test/mws/reports/parsers/test_report_acknowledgments.rb +0 -14
  190. data/test/mws/reports/parsers/test_report_count.rb +0 -13
  191. data/test/mws/reports/parsers/test_report_info.rb +0 -29
  192. data/test/mws/reports/parsers/test_report_list.rb +0 -18
  193. data/test/mws/reports/parsers/test_report_request.rb +0 -13
  194. data/test/mws/reports/parsers/test_report_request_count.rb +0 -13
  195. data/test/mws/reports/parsers/test_report_request_info.rb +0 -49
  196. data/test/mws/reports/parsers/test_report_request_list.rb +0 -18
  197. data/test/mws/reports/parsers/test_report_requests.rb +0 -17
  198. data/test/mws/reports/parsers/test_report_schedule_count.rb +0 -13
  199. data/test/mws/reports/parsers/test_report_schedule_list.rb +0 -18
  200. data/test/mws/reports/parsers/test_report_scheduler.rb +0 -17
  201. data/test/mws/reports/requests/test_acknowledgements.rb +0 -36
  202. data/test/mws/reports/requests/test_report_count.rb +0 -23
  203. data/test/mws/reports/requests/test_report_list.rb +0 -39
  204. data/test/mws/reports/requests/test_report_request.rb +0 -31
  205. data/test/mws/reports/requests/test_report_request_count.rb +0 -23
  206. data/test/mws/reports/requests/test_report_request_list.rb +0 -44
  207. data/test/mws/reports/requests/test_report_requests.rb +0 -29
  208. data/test/mws/reports/requests/test_report_schedule_count.rb +0 -22
  209. data/test/mws/reports/requests/test_report_schedule_list.rb +0 -36
  210. data/test/mws/reports/requests/test_report_scheduler.rb +0 -33
  211. data/test/mws/sellers/parsers/test_market_participations.rb +0 -19
  212. data/test/mws/sellers/parsers/test_service_status.rb +0 -35
  213. data/test/mws/sellers/requests/test_marketplace_participation_list.rb +0 -39
  214. data/test/mws/sellers/requests/test_service_status.rb +0 -25
  215. data/test/parser_helper.rb +0 -11
  216. data/test/peddler/parsers/test_collection.rb +0 -8
  217. data/test/peddler/parsers/test_model.rb +0 -70
  218. data/test/peddler/request/test_parameters.rb +0 -35
  219. data/test/peddler/test_client.rb +0 -42
  220. data/test/request_helper.rb +0 -20
@@ -1,69 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/order_item'
3
-
4
- class OrderItemParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/order_items').xpath('//xmlns:OrderItem').first
7
- @order_item = MWS::Orders::Parsers::OrderItem.new(node)
8
- end
9
-
10
- def test_asin
11
- assert_kind_of String, @order_item.asin
12
- end
13
-
14
- def test_order_item_id
15
- assert_kind_of String, @order_item.order_item_id
16
- end
17
-
18
- def test_seller_sku
19
- assert_kind_of String, @order_item.seller_sku
20
- end
21
-
22
- def test_title
23
- assert_kind_of String, @order_item.title
24
- end
25
-
26
- def test_quantity_ordered
27
- assert_kind_of Integer, @order_item.quantity_ordered
28
- end
29
-
30
- def test_quantity_shipped
31
- assert_kind_of Integer, @order_item.quantity_shipped
32
- end
33
-
34
- def test_item_price
35
- assert_kind_of Money, @order_item.item_price
36
- end
37
-
38
- def test_shipping_price
39
- assert_kind_of Money, @order_item.shipping_price
40
- end
41
-
42
- def test_scheduled_delivery_ends_at
43
- assert_kind_of Time, @order_item.scheduled_delivery_ends_at
44
- end
45
-
46
- def test_scheduled_delivery_starts_at
47
- assert_kind_of Time, @order_item.scheduled_delivery_starts_at
48
- end
49
-
50
- def test_cod_fee
51
- assert_kind_of Money, @order_item.cod_fee
52
- end
53
-
54
- def test_cod_fee_discount
55
- assert_kind_of Money, @order_item.cod_fee_discount
56
- end
57
-
58
- def test_gift_message_text
59
- assert_kind_of String, @order_item.gift_message_text
60
- end
61
-
62
- def test_gift_wrap_price
63
- assert_kind_of Money, @order_item.gift_wrap_price
64
- end
65
-
66
- def test_gift_wrap_level
67
- assert_kind_of String, @order_item.gift_wrap_level
68
- end
69
- end
@@ -1,18 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/order_items'
3
-
4
- class OrderItemsParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/order_items').xpath('//xmlns:ListOrderItemsResult')
7
- @order_items = MWS::Orders::Parsers::OrderItems.new(node)
8
- end
9
-
10
- def test_has_order_items
11
- refute_empty @order_items.to_a
12
- @order_items.each { |order_item| assert_kind_of MWS::Orders::Parsers::OrderItem, order_item }
13
- end
14
-
15
- def test_has_token
16
- assert @order_items.has_next_token?
17
- end
18
- end
@@ -1,18 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/orders'
3
-
4
- class OrdersParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/orders').xpath('//xmlns:ListOrdersResult')
7
- @orders = MWS::Orders::Parsers::Orders.new(node)
8
- end
9
-
10
- def test_has_orders
11
- refute_empty @orders.to_a
12
- @orders.each { |order| assert_kind_of MWS::Orders::Parsers::Order, order }
13
- end
14
-
15
- def test_has_token
16
- assert @orders.has_next_token?
17
- end
18
- end
@@ -1,14 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/payment_execution_detail'
3
-
4
- class PaymentExecutionDetailParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/orders').xpath('//xmlns:PaymentExecutionDetail').first
7
- @ped = MWS::Orders::Parsers::PaymentExecutionDetail.new(node)
8
- end
9
-
10
- def test_has_payment_execution_detail_items
11
- refute_empty @ped.to_a
12
- @ped.each { |pedi| assert_kind_of MWS::Orders::Parsers::PaymentExecutionDetailItem, pedi }
13
- end
14
- end
@@ -1,17 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/payment_execution_detail_item'
3
-
4
- class PaymentExecutionDetailItemParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/orders').xpath('//xmlns:PaymentExecutionDetailItem').first
7
- @pedi = MWS::Orders::Parsers::PaymentExecutionDetailItem.new(node)
8
- end
9
-
10
- def test_payment
11
- assert_kind_of Money, @pedi.payment
12
- end
13
-
14
- def test_payment_method
15
- assert_kind_of String, @pedi.payment_method
16
- end
17
- end
@@ -1,39 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/service_status'
3
-
4
- class OrdersServiceStatusParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/service_status').xpath('//xmlns:GetServiceStatusResult').first
7
- @service_status = MWS::Orders::Parsers::ServiceStatus.new(node)
8
- end
9
-
10
- def test_status
11
- assert_kind_of String, @service_status.status
12
- end
13
-
14
- def test_timestamp
15
- assert_kind_of Time, @service_status.timestamp
16
- end
17
-
18
- def test_message_id
19
- assert_kind_of String, @service_status.message_id
20
- end
21
-
22
- def test_messages
23
- assert_kind_of Array, @service_status.messages
24
- end
25
-
26
- def test_ok?
27
- @service_status.stub(:status, 'GREEN') do
28
- assert @service_status.ok?
29
- end
30
-
31
- @service_status.stub(:status, 'RED') do
32
- refute @service_status.ok?
33
- end
34
- end
35
-
36
- def test_inspect
37
- assert_equal @service_status.status, @service_status.to_s
38
- end
39
- end
@@ -1,17 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/service_status_message'
3
-
4
- class ServiceStatusMessageParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/service_status').xpath('//xmlns:Message').first
7
- @message = MWS::Orders::Parsers::ServiceStatusMessage.new(node)
8
- end
9
-
10
- def test_locale
11
- assert_kind_of String, @message.locale
12
- end
13
-
14
- def test_text
15
- assert_kind_of String, @message.text
16
- end
17
- end
@@ -1,36 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/orders/parsers/shipping_address'
3
-
4
- class ShippingAddressParserTest < ParserTest
5
- def setup
6
- node = fixture('orders/orders').xpath('//xmlns:ShippingAddress').first
7
- @address = MWS::Orders::Parsers::ShippingAddress.new(node)
8
- end
9
-
10
- def test_name
11
- assert_kind_of String, @address.name
12
- end
13
-
14
- def test_address_lines
15
- assert_kind_of Array, @address.address_lines
16
- @address.address_lines.each do |line|
17
- assert_kind_of String, line
18
- end
19
- end
20
-
21
- def test_city
22
- assert_kind_of String, @address.city
23
- end
24
-
25
- def test_state_or_region
26
- assert_kind_of String, @address.state_or_region
27
- end
28
-
29
- def test_postal_code
30
- assert_kind_of String, @address.postal_code
31
- end
32
-
33
- def test_country_code
34
- assert_kind_of String, @address.country_code
35
- end
36
- end
@@ -1,36 +0,0 @@
1
- require 'request_helper'
2
- require 'mws/orders/requests/order_items'
3
-
4
- class MWSOrdersOrderItemsRequestTest < RequestTest
5
- def mock_response_body
6
- <<-EOF
7
- <Response xmlns="ns">
8
- <Result>
9
- <NextToken>123</NextToken>
10
- <OrderItems>
11
- <OrderItem>
12
- <Id>123</Id>
13
- </OrderItem>
14
- </OrderItems>
15
- </Result>
16
- </Response>
17
- EOF
18
- end
19
-
20
- def setup
21
- @order_items = MWS::Orders::Requests::OrderItems.new(mock_client)
22
- end
23
-
24
- def test_lists_order_items
25
- res = @order_items.list('123-1234567-1234567')
26
- assert_kind_of MWS::Orders::Parsers::OrderItems, res
27
- end
28
-
29
- def test_lists_order_items_by_next_token
30
- mock_parsed_response = MiniTest::Mock.new
31
- mock_parsed_response.expect(:next_token, '123')
32
- @order_items.last_parsed_response = mock_parsed_response
33
- res = @order_items.list_by_next_token
34
- assert_kind_of MWS::Orders::Parsers::OrderItems, res
35
- end
36
- end
@@ -1,46 +0,0 @@
1
- require 'request_helper'
2
- require 'mws/orders/requests/orders'
3
-
4
- class MWSOrdersOrdersRequestTest < RequestTest
5
- def mock_response_body
6
- <<-EOF
7
- <Response xmlns="ns">
8
- <Result>
9
- <NextToken>123</NextToken>
10
- <Orders>
11
- <Order>
12
- <Id>123</Id>
13
- </Order>
14
- </Orders>
15
- </Result>
16
- </Response>
17
- EOF
18
- end
19
-
20
- def setup
21
- @orders = MWS::Orders::Requests::Orders.new(mock_client)
22
- end
23
-
24
- def test_lists_orders
25
- res = @orders.list(created_after: 0)
26
- assert_kind_of MWS::Orders::Parsers::Orders, res
27
- end
28
-
29
- def test_lists_orders_by_next_token
30
- mock_parsed_response = MiniTest::Mock.new
31
- mock_parsed_response.expect(:next_token, '123')
32
- @orders.last_parsed_response = mock_parsed_response
33
- res = @orders.list_by_next_token
34
- assert_kind_of MWS::Orders::Parsers::Orders, res
35
- end
36
-
37
- def test_gets_order
38
- res = @orders.get('123')
39
- assert_kind_of MWS::Orders::Parsers::Orders, res
40
- end
41
-
42
- def test_gets_multiple_orders
43
- res = @orders.get('123', '321')
44
- assert_kind_of MWS::Orders::Parsers::Orders, res
45
- end
46
- end
@@ -1,25 +0,0 @@
1
- require 'request_helper'
2
- require 'mws/orders/requests/service_status'
3
-
4
- class MWSOrdersServiceStatusRequestTest < RequestTest
5
- def mock_response_body
6
- <<-EOF
7
- <Response xmlns="ns">
8
- <Result>
9
- <GetServiceStatusResult>
10
- <Status>GREEN</Status>
11
- </GetServiceStatusResult>
12
- </Result>
13
- </Response>
14
- EOF
15
- end
16
-
17
- def setup
18
- @status = MWS::Orders::Requests::ServiceStatus.new(mock_client)
19
- end
20
-
21
- def test_gets_status
22
- res = @status.get
23
- assert_kind_of MWS::Orders::Parsers::ServiceStatus, res
24
- end
25
- end
@@ -1,14 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_acknowledgements'
3
-
4
- class ReportAcknowledgementsParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_acknowledgements').xpath('//xmlns:UpdateReportAcknowledgementsResult')
7
- @acknowledgments = MWS::Reports::Parsers::ReportAcknowledgements.new(node)
8
- end
9
-
10
- def test_has_report_acknowledgements
11
- refute_empty @acknowledgments.to_a
12
- @acknowledgments.each { |ack| assert_kind_of MWS::Reports::Parsers::ReportInfo, ack }
13
- end
14
- end
@@ -1,13 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_count'
3
-
4
- class ReportCountParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_count').xpath('//xmlns:GetReportCountResult')
7
- @report = MWS::Reports::Parsers::ReportCount.new(node)
8
- end
9
-
10
- def test_report_count
11
- assert_kind_of Integer, @report.count
12
- end
13
- end
@@ -1,29 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_info'
3
-
4
- class ReportInfoParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_list').xpath('//xmlns:ReportInfo').first
7
- @report = MWS::Reports::Parsers::ReportInfo.new(node)
8
- end
9
-
10
- def test_id
11
- assert_kind_of String, @report.id
12
- end
13
-
14
- def test_type
15
- assert_kind_of String, @report.type
16
- end
17
-
18
- def test_request_id
19
- assert_kind_of String, @report.request_id
20
- end
21
-
22
- def test_available_at
23
- assert_kind_of Time, @report.available_at
24
- end
25
-
26
- def test_acknowledged
27
- assert [true, false].include?(@report.acknowledged?)
28
- end
29
- end
@@ -1,18 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_list'
3
-
4
- class ReportListParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_list').xpath('//xmlns:GetReportListResult')
7
- @list = MWS::Reports::Parsers::ReportList.new(node)
8
- end
9
-
10
- def test_has_report_list
11
- refute_empty @list.to_a
12
- @list.each { |report| assert_kind_of MWS::Reports::Parsers::ReportInfo, report }
13
- end
14
-
15
- def test_has_token
16
- assert @list.has_next_token?
17
- end
18
- end
@@ -1,13 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_request'
3
-
4
- class ReportRequestParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_request_list').xpath('//xmlns:GetReportRequestListResult')
7
- @request = MWS::Reports::Parsers::ReportRequest.new(node)
8
- end
9
-
10
- def test_report_request_info
11
- refute_nil @request.info
12
- end
13
- end
@@ -1,13 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_request_count'
3
-
4
- class ReportRequestCountParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_request_count').xpath('//xmlns:GetReportRequestCountResult')
7
- @request = MWS::Reports::Parsers::ReportRequestCount.new(node)
8
- end
9
-
10
- def test_report_request_count
11
- assert_kind_of Integer, @request.count
12
- end
13
- end
@@ -1,49 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_request_info'
3
-
4
- class ReportRequestInfoParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_request_list').xpath('//xmlns:ReportRequestInfo').first
7
- @request = MWS::Reports::Parsers::ReportRequestInfo.new(node)
8
- end
9
-
10
- def test_id
11
- assert_kind_of String, @request.id
12
- end
13
-
14
- def test_type
15
- assert_kind_of String, @request.type
16
- end
17
-
18
- def test_started_at
19
- assert_kind_of Time, @request.started_at
20
- end
21
-
22
- def test_ended_at
23
- assert_kind_of Time, @request.ended_at
24
- end
25
-
26
- def test_scheduled
27
- assert [true, false].include?(@request.scheduled?)
28
- end
29
-
30
- def test_submitted_at
31
- assert_kind_of Time, @request.submitted_at
32
- end
33
-
34
- def test_processing_status
35
- assert_kind_of String, @request.processing_status
36
- end
37
-
38
- def test_generated_report_id
39
- assert_kind_of String, @request.generated_report_id
40
- end
41
-
42
- def test_started_processing_at
43
- assert_kind_of Time, @request.started_processing_at
44
- end
45
-
46
- def test_completed_at
47
- assert_kind_of Time, @request.completed_at
48
- end
49
- end
@@ -1,18 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_request_list'
3
-
4
- class ReportRequestListParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_request_list').xpath('//xmlns:GetReportRequestListResult')
7
- @list = MWS::Reports::Parsers::ReportRequestList.new(node)
8
- end
9
-
10
- def test_has_report_requests
11
- refute_empty @list.to_a
12
- @list.each { |request| assert_kind_of MWS::Reports::Parsers::ReportRequestInfo, request }
13
- end
14
-
15
- def test_has_token
16
- assert @list.has_next_token?
17
- end
18
- end
@@ -1,17 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_requests'
3
-
4
- class ReportRequestsParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_requests').xpath('//xmlns:CancelReportRequestsResult')
7
- @cancelations = MWS::Reports::Parsers::ReportRequests.new(node)
8
- end
9
-
10
- def test_cancelation_count
11
- assert_kind_of Integer, @cancelations.count
12
- end
13
-
14
- def test_canceled_report_request_infos
15
- refute_empty @cancelations.report_request_infos
16
- end
17
- end
@@ -1,13 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_schedule_count'
3
-
4
- class ReportScheduleCountParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_schedule_count').xpath('//xmlns:GetReportScheduleCountResult')
7
- @counter = MWS::Reports::Parsers::ReportScheduleCount.new(node)
8
- end
9
-
10
- def test_report_schedule_count
11
- assert_kind_of Integer, @counter.to_i
12
- end
13
- end
@@ -1,18 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_schedule_list'
3
-
4
- class ReportScheduleListParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_schedule_list').xpath('//xmlns:GetReportScheduleListResult')
7
- @list = MWS::Reports::Parsers::ReportScheduleList.new(node)
8
- end
9
-
10
- def test_has_report_schedules
11
- refute_empty @list.to_a
12
- @list.each { |rs| assert_kind_of MWS::Reports::Parsers::ReportSchedule, rs }
13
- end
14
-
15
- def test_has_token
16
- assert @list.has_next_token?
17
- end
18
- end
@@ -1,17 +0,0 @@
1
- require 'parser_helper'
2
- require 'mws/reports/parsers/report_scheduler'
3
-
4
- class ReportSchedulerParserTest < ParserTest
5
- def setup
6
- node = fixture('reports/report_scheduler').xpath('//xmlns:ManageReportScheduleResult')
7
- @scheduler = MWS::Reports::Parsers::ReportScheduler.new(node)
8
- end
9
-
10
- def test_has_count
11
- assert_kind_of Integer, @scheduler.count
12
- end
13
-
14
- def test_has_report_schedule
15
- assert_kind_of MWS::Reports::Parsers::ReportSchedule, @scheduler.report_schedule
16
- end
17
- end
@@ -1,36 +0,0 @@
1
- require 'request_helper'
2
- require 'mws/reports/requests/report_acknowledgements'
3
-
4
- class ReportAcknowledgementsTest < RequestTest
5
- def mock_response_body
6
- <<-EOF
7
- <Response xmlns="ns">
8
- <Result>
9
- <Count>1</Count>
10
- <ReportInfo>
11
- <ReportId>841997483</ReportId>
12
- <ReportType>_GET_MERCHANT_LISTINGS_DATA_</ReportType>
13
- <ReportRequestId>2234038326</ReportRequestId>
14
- <AvailableDate>2009-01-06T03:48:36+00:00</AvailableDate>
15
- <Acknowledged>true</Acknowledged>
16
- <AcknowledgedDate>2009-02-20T02:10:41+00:00</AcknowledgedDate>
17
- </ReportInfo>
18
- </Result>
19
- </Response>
20
- EOF
21
- end
22
-
23
- def setup
24
- @report = MWS::Reports::Requests::ReportAcknowledgements.new(mock_client)
25
- end
26
-
27
- def test_acknowledges_reports
28
- res = @report.acknowledge('123')
29
- refute_empty res
30
- end
31
-
32
- def test_unacknowledges_reports
33
- res = @report.unacknowledge('123')
34
- refute_empty res
35
- end
36
- end
@@ -1,23 +0,0 @@
1
- require 'request_helper'
2
- require 'mws/reports/requests/report_count'
3
-
4
- class ReportCountRequestTest < RequestTest
5
- def mock_response_body
6
- <<-EOF
7
- <Response xmlns="ns">
8
- <Result>
9
- <Count>1</Count>
10
- </Result>
11
- </Response>
12
- EOF
13
- end
14
-
15
- def setup
16
- @count = MWS::Reports::Requests::ReportCount.new(mock_client)
17
- end
18
-
19
- def test_gets_report_count
20
- res = @count.get
21
- assert_equal 1, res.count
22
- end
23
- end