peddler 0.6.5 → 0.7.0

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.
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