ebayapi 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (856) hide show
  1. data/CHANGELOG +0 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README +0 -0
  4. data/examples/add_item.rb +50 -0
  5. data/examples/config.rb +10 -0
  6. data/examples/end_item.rb +18 -0
  7. data/examples/get_api_usage.rb +21 -0
  8. data/examples/get_attributes_xsl.rb +26 -0
  9. data/examples/get_ebay_details.rb +22 -0
  10. data/examples/get_ebay_time.rb +33 -0
  11. data/examples/get_ebay_time_raw.rb +31 -0
  12. data/examples/get_item.rb +25 -0
  13. data/examples/get_item_transactions.rb +36 -0
  14. data/examples/get_items_selling.rb +26 -0
  15. data/examples/get_my_messages.rb +21 -0
  16. data/examples/get_my_messages_folders.rb +20 -0
  17. data/examples/get_notification_preferences.rb +36 -0
  18. data/examples/get_notifications_usage.rb +23 -0
  19. data/examples/get_user.rb +26 -0
  20. data/examples/mark_my_messages_message_as_read.rb +22 -0
  21. data/examples/revise_item.rb +34 -0
  22. data/examples/set_notification_preferences.rb +27 -0
  23. data/examples/verify_add_item.rb +37 -0
  24. data/init.rb +2 -0
  25. data/lib/ebay/api.rb +179 -0
  26. data/lib/ebay/ebay.rb +26 -0
  27. data/lib/ebay/enumeration.rb +7 -0
  28. data/lib/ebay/initializer.rb +19 -0
  29. data/lib/ebay/notification.rb +109 -0
  30. data/lib/ebay/request/base.rb +18 -0
  31. data/lib/ebay/request/connection.rb +66 -0
  32. data/lib/ebay/request.rb +1 -0
  33. data/lib/ebay/requests/abstract.rb +28 -0
  34. data/lib/ebay/requests/add_dispute.rb +16 -0
  35. data/lib/ebay/requests/add_dispute_response.rb +18 -0
  36. data/lib/ebay/requests/add_item.rb +16 -0
  37. data/lib/ebay/requests/add_live_auction_item.rb +14 -0
  38. data/lib/ebay/requests/add_member_message.rb +15 -0
  39. data/lib/ebay/requests/add_member_message_aaq_to_partner.rb +15 -0
  40. data/lib/ebay/requests/add_member_message_rtq.rb +15 -0
  41. data/lib/ebay/requests/add_member_messages_aaq_to_bidder.rb +14 -0
  42. data/lib/ebay/requests/add_order.rb +14 -0
  43. data/lib/ebay/requests/add_second_chance_item.rb +19 -0
  44. data/lib/ebay/requests/add_to_item_description.rb +14 -0
  45. data/lib/ebay/requests/add_to_watch_list.rb +13 -0
  46. data/lib/ebay/requests/add_transaction_confirmation_item.rb +20 -0
  47. data/lib/ebay/requests/approve_live_auction_bidders.rb +17 -0
  48. data/lib/ebay/requests/complete_sale.rb +18 -0
  49. data/lib/ebay/requests/delete_my_messages.rb +14 -0
  50. data/lib/ebay/requests/end_item.rb +15 -0
  51. data/lib/ebay/requests/fetch_token.rb +13 -0
  52. data/lib/ebay/requests/get_account.rb +22 -0
  53. data/lib/ebay/requests/get_ad_format_leads.rb +13 -0
  54. data/lib/ebay/requests/get_all_bidders.rb +15 -0
  55. data/lib/ebay/requests/get_api_access_rules.rb +12 -0
  56. data/lib/ebay/requests/get_attributes_cs.rb +16 -0
  57. data/lib/ebay/requests/get_attributes_xsl.rb +14 -0
  58. data/lib/ebay/requests/get_best_offers.rb +15 -0
  59. data/lib/ebay/requests/get_bidder_list.rb +17 -0
  60. data/lib/ebay/requests/get_categories.rb +16 -0
  61. data/lib/ebay/requests/get_category2_cs.rb +14 -0
  62. data/lib/ebay/requests/get_category2_finance_offer.rb +14 -0
  63. data/lib/ebay/requests/get_category_features.rb +16 -0
  64. data/lib/ebay/requests/get_category_listings.rb +32 -0
  65. data/lib/ebay/requests/get_category_mappings.rb +13 -0
  66. data/lib/ebay/requests/get_challenge_token.rb +12 -0
  67. data/lib/ebay/requests/get_charities.rb +19 -0
  68. data/lib/ebay/requests/get_contextual_keywords.rb +15 -0
  69. data/lib/ebay/requests/get_cross_promotions.rb +15 -0
  70. data/lib/ebay/requests/get_description_templates.rb +15 -0
  71. data/lib/ebay/requests/get_dispute.rb +13 -0
  72. data/lib/ebay/requests/get_ebay_details.rb +13 -0
  73. data/lib/ebay/requests/get_ebay_official_time.rb +12 -0
  74. data/lib/ebay/requests/get_feedback.rb +16 -0
  75. data/lib/ebay/requests/get_finance_offers.rb +14 -0
  76. data/lib/ebay/requests/get_high_bidders.rb +13 -0
  77. data/lib/ebay/requests/get_item.rb +16 -0
  78. data/lib/ebay/requests/get_item_recommendations.rb +14 -0
  79. data/lib/ebay/requests/get_item_shipping.rb +16 -0
  80. data/lib/ebay/requests/get_item_transactions.rb +20 -0
  81. data/lib/ebay/requests/get_items_awaiting_feedback.rb +15 -0
  82. data/lib/ebay/requests/get_live_auction_bidders.rb +16 -0
  83. data/lib/ebay/requests/get_live_auction_catalog_details.rb +12 -0
  84. data/lib/ebay/requests/get_member_messages.rb +21 -0
  85. data/lib/ebay/requests/get_my_ebay.rb +22 -0
  86. data/lib/ebay/requests/get_my_ebay_buying.rb +22 -0
  87. data/lib/ebay/requests/get_my_ebay_reminders.rb +15 -0
  88. data/lib/ebay/requests/get_my_ebay_selling.rb +17 -0
  89. data/lib/ebay/requests/get_my_messages.rb +15 -0
  90. data/lib/ebay/requests/get_notification_preferences.rb +13 -0
  91. data/lib/ebay/requests/get_notifications_usage.rb +15 -0
  92. data/lib/ebay/requests/get_order_transactions.rb +15 -0
  93. data/lib/ebay/requests/get_orders.rb +20 -0
  94. data/lib/ebay/requests/get_picture_manager_details.rb +15 -0
  95. data/lib/ebay/requests/get_picture_manager_options.rb +12 -0
  96. data/lib/ebay/requests/get_popular_keywords.rb +17 -0
  97. data/lib/ebay/requests/get_product_family_members.rb +14 -0
  98. data/lib/ebay/requests/get_product_finder.rb +14 -0
  99. data/lib/ebay/requests/get_product_finder_xsl.rb +14 -0
  100. data/lib/ebay/requests/get_product_search_page.rb +14 -0
  101. data/lib/ebay/requests/get_product_search_results.rb +14 -0
  102. data/lib/ebay/requests/get_product_selling_pages.rb +15 -0
  103. data/lib/ebay/requests/get_promotion_rules.rb +15 -0
  104. data/lib/ebay/requests/get_recommendations.rb +21 -0
  105. data/lib/ebay/requests/get_return_url.rb +12 -0
  106. data/lib/ebay/requests/get_ru_name.rb +13 -0
  107. data/lib/ebay/requests/get_search_results.rb +58 -0
  108. data/lib/ebay/requests/get_search_results_express.rb +34 -0
  109. data/lib/ebay/requests/get_seller_events.rb +21 -0
  110. data/lib/ebay/requests/get_seller_list.rb +24 -0
  111. data/lib/ebay/requests/get_seller_payments.rb +17 -0
  112. data/lib/ebay/requests/get_seller_transactions.rb +19 -0
  113. data/lib/ebay/requests/get_store.rb +15 -0
  114. data/lib/ebay/requests/get_store_category_update_status.rb +13 -0
  115. data/lib/ebay/requests/get_store_custom_page.rb +13 -0
  116. data/lib/ebay/requests/get_store_options.rb +12 -0
  117. data/lib/ebay/requests/get_store_preferences.rb +12 -0
  118. data/lib/ebay/requests/get_suggested_categories.rb +13 -0
  119. data/lib/ebay/requests/get_tax_table.rb +12 -0
  120. data/lib/ebay/requests/get_user.rb +15 -0
  121. data/lib/ebay/requests/get_user_contact_details.rb +15 -0
  122. data/lib/ebay/requests/get_user_disputes.rb +18 -0
  123. data/lib/ebay/requests/get_user_preferences.rb +20 -0
  124. data/lib/ebay/requests/get_want_it_now_post.rb +13 -0
  125. data/lib/ebay/requests/get_want_it_now_search_results.rb +18 -0
  126. data/lib/ebay/requests/issue_refund.rb +18 -0
  127. data/lib/ebay/requests/leave_feedback.rb +17 -0
  128. data/lib/ebay/requests/place_offer.rb +16 -0
  129. data/lib/ebay/requests/relist_item.rb +17 -0
  130. data/lib/ebay/requests/remove_from_watch_list.rb +14 -0
  131. data/lib/ebay/requests/respond_to_best_offer.rb +18 -0
  132. data/lib/ebay/requests/respond_to_feedback.rb +18 -0
  133. data/lib/ebay/requests/respond_to_want_it_now_post.rb +14 -0
  134. data/lib/ebay/requests/revise_checkout_status.rb +34 -0
  135. data/lib/ebay/requests/revise_item.rb +17 -0
  136. data/lib/ebay/requests/revise_live_auction_item.rb +17 -0
  137. data/lib/ebay/requests/revise_my_messages.rb +17 -0
  138. data/lib/ebay/requests/revise_my_messages_folders.rb +15 -0
  139. data/lib/ebay/requests/seller_reverse_dispute.rb +14 -0
  140. data/lib/ebay/requests/send_invoice.rb +27 -0
  141. data/lib/ebay/requests/set_notification_preferences.rb +20 -0
  142. data/lib/ebay/requests/set_picture_manager_details.rb +15 -0
  143. data/lib/ebay/requests/set_promotion_rules.rb +15 -0
  144. data/lib/ebay/requests/set_return_url.rb +16 -0
  145. data/lib/ebay/requests/set_store.rb +14 -0
  146. data/lib/ebay/requests/set_store_categories.rb +17 -0
  147. data/lib/ebay/requests/set_store_custom_page.rb +14 -0
  148. data/lib/ebay/requests/set_store_preferences.rb +14 -0
  149. data/lib/ebay/requests/set_tax_table.rb +14 -0
  150. data/lib/ebay/requests/set_user_notes.rb +15 -0
  151. data/lib/ebay/requests/set_user_preferences.rb +28 -0
  152. data/lib/ebay/requests/validate_challenge_input.rb +15 -0
  153. data/lib/ebay/requests/validate_test_user_registration.rb +18 -0
  154. data/lib/ebay/requests/verify_add_item.rb +17 -0
  155. data/lib/ebay/requests/verify_add_second_chance_item.rb +19 -0
  156. data/lib/ebay/requests.rb +123 -0
  157. data/lib/ebay/response/base.rb +27 -0
  158. data/lib/ebay/responses/abstract.rb +27 -0
  159. data/lib/ebay/responses/add_dispute.rb +13 -0
  160. data/lib/ebay/responses/add_dispute_response.rb +12 -0
  161. data/lib/ebay/responses/add_item.rb +19 -0
  162. data/lib/ebay/responses/add_live_auction_item.rb +17 -0
  163. data/lib/ebay/responses/add_member_message.rb +12 -0
  164. data/lib/ebay/responses/add_member_message_aaq_to_partner.rb +12 -0
  165. data/lib/ebay/responses/add_member_message_rtq.rb +12 -0
  166. data/lib/ebay/responses/add_member_messages_aaq_to_bidder.rb +14 -0
  167. data/lib/ebay/responses/add_order.rb +14 -0
  168. data/lib/ebay/responses/add_second_chance_item.rb +17 -0
  169. data/lib/ebay/responses/add_to_item_description.rb +12 -0
  170. data/lib/ebay/responses/add_to_watch_list.rb +14 -0
  171. data/lib/ebay/responses/add_transaction_confirmation_item.rb +15 -0
  172. data/lib/ebay/responses/approve_live_auction_bidders.rb +14 -0
  173. data/lib/ebay/responses/complete_sale.rb +12 -0
  174. data/lib/ebay/responses/delete_my_messages.rb +12 -0
  175. data/lib/ebay/responses/end_item.rb +13 -0
  176. data/lib/ebay/responses/fetch_token.rb +14 -0
  177. data/lib/ebay/responses/get_account.rb +23 -0
  178. data/lib/ebay/responses/get_ad_format_leads.rb +15 -0
  179. data/lib/ebay/responses/get_all_bidders.rb +17 -0
  180. data/lib/ebay/responses/get_api_access_rules.rb +14 -0
  181. data/lib/ebay/responses/get_attributes_cs.rb +14 -0
  182. data/lib/ebay/responses/get_attributes_xsl.rb +14 -0
  183. data/lib/ebay/responses/get_best_offers.rb +16 -0
  184. data/lib/ebay/responses/get_bidder_list.rb +16 -0
  185. data/lib/ebay/responses/get_categories.rb +23 -0
  186. data/lib/ebay/responses/get_category2_cs.rb +18 -0
  187. data/lib/ebay/responses/get_category2_finance_offer.rb +15 -0
  188. data/lib/ebay/responses/get_category_features.rb +20 -0
  189. data/lib/ebay/responses/get_category_listings.rb +24 -0
  190. data/lib/ebay/responses/get_category_mappings.rb +15 -0
  191. data/lib/ebay/responses/get_challenge_token.rb +15 -0
  192. data/lib/ebay/responses/get_charities.rb +14 -0
  193. data/lib/ebay/responses/get_contextual_keywords.rb +14 -0
  194. data/lib/ebay/responses/get_cross_promotions.rb +14 -0
  195. data/lib/ebay/responses/get_description_templates.rb +20 -0
  196. data/lib/ebay/responses/get_dispute.rb +14 -0
  197. data/lib/ebay/responses/get_ebay_details.rb +32 -0
  198. data/lib/ebay/responses/get_ebay_official_time.rb +12 -0
  199. data/lib/ebay/responses/get_feedback.rb +18 -0
  200. data/lib/ebay/responses/get_finance_offers.rb +15 -0
  201. data/lib/ebay/responses/get_high_bidders.rb +15 -0
  202. data/lib/ebay/responses/get_item.rb +14 -0
  203. data/lib/ebay/responses/get_item_recommendations.rb +14 -0
  204. data/lib/ebay/responses/get_item_shipping.rb +14 -0
  205. data/lib/ebay/responses/get_item_transactions.rb +23 -0
  206. data/lib/ebay/responses/get_items_awaiting_feedback.rb +14 -0
  207. data/lib/ebay/responses/get_live_auction_bidders.rb +20 -0
  208. data/lib/ebay/responses/get_live_auction_catalog_details.rb +14 -0
  209. data/lib/ebay/responses/get_member_messages.rb +17 -0
  210. data/lib/ebay/responses/get_my_ebay.rb +23 -0
  211. data/lib/ebay/responses/get_my_ebay_buying.rb +27 -0
  212. data/lib/ebay/responses/get_my_ebay_reminders.rb +15 -0
  213. data/lib/ebay/responses/get_my_ebay_selling.rb +20 -0
  214. data/lib/ebay/responses/get_my_messages.rb +18 -0
  215. data/lib/ebay/responses/get_notification_preferences.rb +20 -0
  216. data/lib/ebay/responses/get_notifications_usage.rb +20 -0
  217. data/lib/ebay/responses/get_order_transactions.rb +14 -0
  218. data/lib/ebay/responses/get_orders.rb +20 -0
  219. data/lib/ebay/responses/get_picture_manager_details.rb +14 -0
  220. data/lib/ebay/responses/get_picture_manager_options.rb +16 -0
  221. data/lib/ebay/responses/get_popular_keywords.rb +17 -0
  222. data/lib/ebay/responses/get_product_family_members.rb +16 -0
  223. data/lib/ebay/responses/get_product_finder.rb +14 -0
  224. data/lib/ebay/responses/get_product_finder_xsl.rb +14 -0
  225. data/lib/ebay/responses/get_product_search_page.rb +15 -0
  226. data/lib/ebay/responses/get_product_search_results.rb +16 -0
  227. data/lib/ebay/responses/get_product_selling_pages.rb +13 -0
  228. data/lib/ebay/responses/get_promotion_rules.rb +14 -0
  229. data/lib/ebay/responses/get_recommendations.rb +22 -0
  230. data/lib/ebay/responses/get_return_url.rb +15 -0
  231. data/lib/ebay/responses/get_ru_name.rb +13 -0
  232. data/lib/ebay/responses/get_search_results.rb +30 -0
  233. data/lib/ebay/responses/get_search_results_express.rb +21 -0
  234. data/lib/ebay/responses/get_seller_events.rb +15 -0
  235. data/lib/ebay/responses/get_seller_list.rb +22 -0
  236. data/lib/ebay/responses/get_seller_payments.rb +20 -0
  237. data/lib/ebay/responses/get_seller_transactions.rb +23 -0
  238. data/lib/ebay/responses/get_store.rb +14 -0
  239. data/lib/ebay/responses/get_store_category_update_status.rb +13 -0
  240. data/lib/ebay/responses/get_store_custom_page.rb +14 -0
  241. data/lib/ebay/responses/get_store_options.rb +21 -0
  242. data/lib/ebay/responses/get_store_preferences.rb +14 -0
  243. data/lib/ebay/responses/get_suggested_categories.rb +15 -0
  244. data/lib/ebay/responses/get_tax_table.rb +15 -0
  245. data/lib/ebay/responses/get_user.rb +14 -0
  246. data/lib/ebay/responses/get_user_contact_details.rb +16 -0
  247. data/lib/ebay/responses/get_user_disputes.rb +22 -0
  248. data/lib/ebay/responses/get_user_preferences.rb +30 -0
  249. data/lib/ebay/responses/get_want_it_now_post.rb +14 -0
  250. data/lib/ebay/responses/get_want_it_now_search_results.rb +19 -0
  251. data/lib/ebay/responses/issue_refund.rb +14 -0
  252. data/lib/ebay/responses/leave_feedback.rb +13 -0
  253. data/lib/ebay/responses/notification_message.rb +14 -0
  254. data/lib/ebay/responses/place_offer.rb +14 -0
  255. data/lib/ebay/responses/relist_item.rb +19 -0
  256. data/lib/ebay/responses/remove_from_watch_list.rb +14 -0
  257. data/lib/ebay/responses/respond_to_best_offer.rb +14 -0
  258. data/lib/ebay/responses/respond_to_feedback.rb +12 -0
  259. data/lib/ebay/responses/respond_to_want_it_now_post.rb +12 -0
  260. data/lib/ebay/responses/revise_checkout_status.rb +12 -0
  261. data/lib/ebay/responses/revise_item.rb +19 -0
  262. data/lib/ebay/responses/revise_live_auction_item.rb +17 -0
  263. data/lib/ebay/responses/revise_my_messages.rb +12 -0
  264. data/lib/ebay/responses/revise_my_messages_folders.rb +12 -0
  265. data/lib/ebay/responses/seller_reverse_dispute.rb +12 -0
  266. data/lib/ebay/responses/send_invoice.rb +12 -0
  267. data/lib/ebay/responses/set_notification_preferences.rb +12 -0
  268. data/lib/ebay/responses/set_picture_manager_details.rb +12 -0
  269. data/lib/ebay/responses/set_promotion_rules.rb +12 -0
  270. data/lib/ebay/responses/set_return_url.rb +12 -0
  271. data/lib/ebay/responses/set_store.rb +12 -0
  272. data/lib/ebay/responses/set_store_categories.rb +14 -0
  273. data/lib/ebay/responses/set_store_custom_page.rb +14 -0
  274. data/lib/ebay/responses/set_store_preferences.rb +12 -0
  275. data/lib/ebay/responses/set_tax_table.rb +12 -0
  276. data/lib/ebay/responses/set_user_notes.rb +12 -0
  277. data/lib/ebay/responses/set_user_preferences.rb +12 -0
  278. data/lib/ebay/responses/validate_challenge_input.rb +13 -0
  279. data/lib/ebay/responses/validate_test_user_registration.rb +12 -0
  280. data/lib/ebay/responses/verify_add_item.rb +20 -0
  281. data/lib/ebay/responses/verify_add_second_chance_item.rb +16 -0
  282. data/lib/ebay/responses.rb +123 -0
  283. data/lib/ebay/schema/mapper/class_definition.rb +48 -0
  284. data/lib/ebay/schema/mapper/class_template.rb +46 -0
  285. data/lib/ebay/schema/mapper/ebay_schema_importer.rb +108 -0
  286. data/lib/ebay/schema/mapper/enumeration.rb +30 -0
  287. data/lib/ebay/schema/mapper/enumeration_validation.rb +17 -0
  288. data/lib/ebay/schema/mapper/node.rb +153 -0
  289. data/lib/ebay/schema/mapper/parser.rb +16 -0
  290. data/lib/ebay/schema/mapper/ruby_class_generator.rb +273 -0
  291. data/lib/ebay/schema/mapper/ruby_class_generator_helper.rb +52 -0
  292. data/lib/ebay/schema/mapper/schema.rb +15 -0
  293. data/lib/ebay/schema/mapper/templates/abstract_request.erb +7 -0
  294. data/lib/ebay/schema/mapper/templates/application_delivery_preferences.erb +7 -0
  295. data/lib/ebay/schema/mapper/templates/base.erb +21 -0
  296. data/lib/ebay/schema/mapper/templates/value.erb +12 -0
  297. data/lib/ebay/schema/mapper/templates/xsl_file.erb +11 -0
  298. data/lib/ebay/schema/mapper/xsd2ebay.rb +13 -0
  299. data/lib/ebay/schema/mapper.rb +9 -0
  300. data/lib/ebay/schema/version.rb +5 -0
  301. data/lib/ebay/types/access_rule_current_status_code.rb +16 -0
  302. data/lib/ebay/types/access_rule_status_code.rb +12 -0
  303. data/lib/ebay/types/account_detail_entry_code.rb +256 -0
  304. data/lib/ebay/types/account_entry.rb +25 -0
  305. data/lib/ebay/types/account_entry_sort_type_code.rb +16 -0
  306. data/lib/ebay/types/account_history_selection_code.rb +12 -0
  307. data/lib/ebay/types/account_state_code.rb +12 -0
  308. data/lib/ebay/types/account_summary.rb +33 -0
  309. data/lib/ebay/types/ack_code.rb +13 -0
  310. data/lib/ebay/types/ad_format_enabled_code.rb +14 -0
  311. data/lib/ebay/types/ad_format_enabled_definition.rb +12 -0
  312. data/lib/ebay/types/ad_format_lead.rb +21 -0
  313. data/lib/ebay/types/add_member_messages_aaq_to_bidder_request_container.rb +16 -0
  314. data/lib/ebay/types/add_member_messages_aaq_to_bidder_response_container.rb +14 -0
  315. data/lib/ebay/types/additional_account.rb +15 -0
  316. data/lib/ebay/types/address.rb +40 -0
  317. data/lib/ebay/types/address_owner_code.rb +11 -0
  318. data/lib/ebay/types/address_record_type_code.rb +11 -0
  319. data/lib/ebay/types/address_status_code.rb +12 -0
  320. data/lib/ebay/types/affiliate_tracking_details.rb +16 -0
  321. data/lib/ebay/types/amount.rb +14 -0
  322. data/lib/ebay/types/api_access_rule.rb +28 -0
  323. data/lib/ebay/types/api_subscription_type_code.rb +29 -0
  324. data/lib/ebay/types/application_delivery_preferences.rb +25 -0
  325. data/lib/ebay/types/application_device_type_code.rb +13 -0
  326. data/lib/ebay/types/attribute.rb +16 -0
  327. data/lib/ebay/types/attribute_recommendations.rb +14 -0
  328. data/lib/ebay/types/attribute_set.rb +16 -0
  329. data/lib/ebay/types/authentication_entry.rb +17 -0
  330. data/lib/ebay/types/balance_code.rb +10 -0
  331. data/lib/ebay/types/basic_amount.rb +14 -0
  332. data/lib/ebay/types/basic_upgrade_pack_enabled_definition.rb +12 -0
  333. data/lib/ebay/types/best_offer.rb +23 -0
  334. data/lib/ebay/types/best_offer_action_code.rb +12 -0
  335. data/lib/ebay/types/best_offer_auto_decline_enabled_definition.rb +12 -0
  336. data/lib/ebay/types/best_offer_counter_enabled_definition.rb +12 -0
  337. data/lib/ebay/types/best_offer_details.rb +17 -0
  338. data/lib/ebay/types/best_offer_enabled_definition.rb +12 -0
  339. data/lib/ebay/types/best_offer_status_code.rb +18 -0
  340. data/lib/ebay/types/best_offer_type_code.rb +12 -0
  341. data/lib/ebay/types/bid_action_code.rb +19 -0
  342. data/lib/ebay/types/bid_approval.rb +16 -0
  343. data/lib/ebay/types/bid_approval_array.rb +14 -0
  344. data/lib/ebay/types/bidder_detail.rb +19 -0
  345. data/lib/ebay/types/bidder_detail_array.rb +14 -0
  346. data/lib/ebay/types/bidder_id.rb +28 -0
  347. data/lib/ebay/types/bidder_notice_preferences.rb +13 -0
  348. data/lib/ebay/types/bidder_status_code.rb +12 -0
  349. data/lib/ebay/types/bidder_type_code.rb +11 -0
  350. data/lib/ebay/types/bidding_details.rb +17 -0
  351. data/lib/ebay/types/bidding_summary.rb +20 -0
  352. data/lib/ebay/types/bulk_catalog_lister_status_code.rb +15 -0
  353. data/lib/ebay/types/buyer.rb +14 -0
  354. data/lib/ebay/types/buyer_payment_method_code.rb +32 -0
  355. data/lib/ebay/types/buyer_protection_code.rb +13 -0
  356. data/lib/ebay/types/buyer_requirements.rb +21 -0
  357. data/lib/ebay/types/buying_guide.rb +16 -0
  358. data/lib/ebay/types/buying_guide_details.rb +15 -0
  359. data/lib/ebay/types/buying_summary.rb +19 -0
  360. data/lib/ebay/types/calculated_shipping_charge_option_code.rb +11 -0
  361. data/lib/ebay/types/calculated_shipping_preferences.rb +16 -0
  362. data/lib/ebay/types/calculated_shipping_rate.rb +23 -0
  363. data/lib/ebay/types/calculated_shipping_rate_option_code.rb +11 -0
  364. data/lib/ebay/types/cancel_offer.rb +15 -0
  365. data/lib/ebay/types/cancel_offer_array.rb +14 -0
  366. data/lib/ebay/types/category.rb +38 -0
  367. data/lib/ebay/types/category_feature.rb +41 -0
  368. data/lib/ebay/types/category_feature_detail_level_code.rb +11 -0
  369. data/lib/ebay/types/category_finance_offer.rb +14 -0
  370. data/lib/ebay/types/category_listings_order_code.rb +17 -0
  371. data/lib/ebay/types/category_listings_search_code.rb +11 -0
  372. data/lib/ebay/types/category_mapping.rb +14 -0
  373. data/lib/ebay/types/characteristic.rb +21 -0
  374. data/lib/ebay/types/characteristic_set_ids.rb +13 -0
  375. data/lib/ebay/types/characteristics_search_code.rb +11 -0
  376. data/lib/ebay/types/characteristics_set.rb +17 -0
  377. data/lib/ebay/types/charity.rb +20 -0
  378. data/lib/ebay/types/charity_affiliation.rb +14 -0
  379. data/lib/ebay/types/charity_affiliation_type_code.rb +12 -0
  380. data/lib/ebay/types/charity_id.rb +14 -0
  381. data/lib/ebay/types/charity_info.rb +21 -0
  382. data/lib/ebay/types/charity_seller.rb +15 -0
  383. data/lib/ebay/types/charity_seller_status_code.rb +18 -0
  384. data/lib/ebay/types/charity_status_code.rb +11 -0
  385. data/lib/ebay/types/checkout_method_code.rb +11 -0
  386. data/lib/ebay/types/checkout_status.rb +16 -0
  387. data/lib/ebay/types/checkout_status_code.rb +13 -0
  388. data/lib/ebay/types/combined_payment_option_code.rb +12 -0
  389. data/lib/ebay/types/combined_payment_period_code.rb +14 -0
  390. data/lib/ebay/types/combined_payment_preferences.rb +18 -0
  391. data/lib/ebay/types/comment_type_code.rb +14 -0
  392. data/lib/ebay/types/complete_status_code.rb +12 -0
  393. data/lib/ebay/types/condition_selection_code.rb +11 -0
  394. data/lib/ebay/types/context_search_asset.rb +16 -0
  395. data/lib/ebay/types/country_code.rb +253 -0
  396. data/lib/ebay/types/country_details.rb +14 -0
  397. data/lib/ebay/types/cross_promotion_preferences.rb +19 -0
  398. data/lib/ebay/types/cross_promotions.rb +21 -0
  399. data/lib/ebay/types/currency_code.rb +183 -0
  400. data/lib/ebay/types/currency_details.rb +14 -0
  401. data/lib/ebay/types/custom_security_header.rb +17 -0
  402. data/lib/ebay/types/data_element_set.rb +15 -0
  403. data/lib/ebay/types/date_specifier_code.rb +12 -0
  404. data/lib/ebay/types/deposit_type_code.rb +12 -0
  405. data/lib/ebay/types/description_revise_mode_code.rb +12 -0
  406. data/lib/ebay/types/description_template.rb +22 -0
  407. data/lib/ebay/types/description_template_code.rb +11 -0
  408. data/lib/ebay/types/detail_level_code.rb +16 -0
  409. data/lib/ebay/types/detail_name_code.rb +19 -0
  410. data/lib/ebay/types/device_type_code.rb +11 -0
  411. data/lib/ebay/types/digital_delivery_details.rb +16 -0
  412. data/lib/ebay/types/digital_delivery_enabled_code.rb +12 -0
  413. data/lib/ebay/types/digital_delivery_enabled_definition.rb +12 -0
  414. data/lib/ebay/types/digital_delivery_method_code.rb +12 -0
  415. data/lib/ebay/types/dispatch_time_max_details.rb +14 -0
  416. data/lib/ebay/types/display_pay_now_button_code.rb +11 -0
  417. data/lib/ebay/types/dispute.rb +35 -0
  418. data/lib/ebay/types/dispute_activity_code.rb +18 -0
  419. data/lib/ebay/types/dispute_credit_eligibility_code.rb +11 -0
  420. data/lib/ebay/types/dispute_explanation_code.rb +22 -0
  421. data/lib/ebay/types/dispute_filter_count.rb +14 -0
  422. data/lib/ebay/types/dispute_filter_type_code.rb +16 -0
  423. data/lib/ebay/types/dispute_message.rb +16 -0
  424. data/lib/ebay/types/dispute_message_source_code.rb +12 -0
  425. data/lib/ebay/types/dispute_reason_code.rb +15 -0
  426. data/lib/ebay/types/dispute_record_type_code.rb +11 -0
  427. data/lib/ebay/types/dispute_resolution.rb +15 -0
  428. data/lib/ebay/types/dispute_resolution_reason_code.rb +22 -0
  429. data/lib/ebay/types/dispute_resolution_record_type_code.rb +20 -0
  430. data/lib/ebay/types/dispute_sort_type_code.rb +16 -0
  431. data/lib/ebay/types/dispute_state_code.rb +34 -0
  432. data/lib/ebay/types/dispute_status_code.rb +28 -0
  433. data/lib/ebay/types/distance.rb +14 -0
  434. data/lib/ebay/types/domain_histogram.rb +14 -0
  435. data/lib/ebay/types/duplicate_invocation_details.rb +15 -0
  436. data/lib/ebay/types/dutch_bin_enabled_definition.rb +12 -0
  437. data/lib/ebay/types/ebay_subscription_type_code.rb +29 -0
  438. data/lib/ebay/types/ebx_opt_in_preference.rb +13 -0
  439. data/lib/ebay/types/enable_code.rb +11 -0
  440. data/lib/ebay/types/end_of_auction_email_preferences.rb +19 -0
  441. data/lib/ebay/types/end_of_auction_logo_type_code.rb +13 -0
  442. data/lib/ebay/types/end_reason_code.rb +14 -0
  443. data/lib/ebay/types/error.rb +20 -0
  444. data/lib/ebay/types/error_classification_code.rb +11 -0
  445. data/lib/ebay/types/error_handling_code.rb +13 -0
  446. data/lib/ebay/types/error_parameter.rb +14 -0
  447. data/lib/ebay/types/escrow_code.rb +12 -0
  448. data/lib/ebay/types/expansion_array.rb +15 -0
  449. data/lib/ebay/types/express_condition_required_definition.rb +12 -0
  450. data/lib/ebay/types/express_detail_level_code.rb +12 -0
  451. data/lib/ebay/types/express_details.rb +15 -0
  452. data/lib/ebay/types/express_enabled_definition.rb +12 -0
  453. data/lib/ebay/types/express_histogram_aisle.rb +16 -0
  454. data/lib/ebay/types/express_histogram_department.rb +16 -0
  455. data/lib/ebay/types/express_histogram_domain_details.rb +17 -0
  456. data/lib/ebay/types/express_histogram_product.rb +14 -0
  457. data/lib/ebay/types/express_histogram_sort_code.rb +12 -0
  458. data/lib/ebay/types/express_item_requirements.rb +31 -0
  459. data/lib/ebay/types/express_item_sort_code.rb +12 -0
  460. data/lib/ebay/types/express_pictures_required_definition.rb +12 -0
  461. data/lib/ebay/types/express_preferences.rb +14 -0
  462. data/lib/ebay/types/express_product.rb +22 -0
  463. data/lib/ebay/types/express_product_sort_code.rb +12 -0
  464. data/lib/ebay/types/express_seller_requirements.rb +25 -0
  465. data/lib/ebay/types/express_selling_preference_code.rb +12 -0
  466. data/lib/ebay/types/extended_product_finder_id.rb +14 -0
  467. data/lib/ebay/types/external_alert_id_array.rb +13 -0
  468. data/lib/ebay/types/external_product_code.rb +14 -0
  469. data/lib/ebay/types/external_product_id.rb +19 -0
  470. data/lib/ebay/types/external_transaction.rb +16 -0
  471. data/lib/ebay/types/fault_details.rb +15 -0
  472. data/lib/ebay/types/feature_definitions.rb +72 -0
  473. data/lib/ebay/types/feature_id_code.rb +37 -0
  474. data/lib/ebay/types/fee.rb +14 -0
  475. data/lib/ebay/types/feedback_detail.rb +29 -0
  476. data/lib/ebay/types/feedback_info.rb +15 -0
  477. data/lib/ebay/types/feedback_period.rb +14 -0
  478. data/lib/ebay/types/feedback_period_array.rb +14 -0
  479. data/lib/ebay/types/feedback_rating_star_code.rb +20 -0
  480. data/lib/ebay/types/feedback_requirements.rb +14 -0
  481. data/lib/ebay/types/feedback_response_code.rb +11 -0
  482. data/lib/ebay/types/feedback_summary.rb +21 -0
  483. data/lib/ebay/types/finance_offer.rb +20 -0
  484. data/lib/ebay/types/flat_rate_insurance_range_code.rb +15 -0
  485. data/lib/ebay/types/flat_rate_insurance_range_cost.rb +14 -0
  486. data/lib/ebay/types/flat_shipping_preferences.rb +18 -0
  487. data/lib/ebay/types/flat_shipping_rate_option_code.rb +12 -0
  488. data/lib/ebay/types/gallery_sort_filter_code.rb +12 -0
  489. data/lib/ebay/types/gallery_type_code.rb +13 -0
  490. data/lib/ebay/types/general_payment_method_code.rb +14 -0
  491. data/lib/ebay/types/get_all_bidders_mode_code.rb +12 -0
  492. data/lib/ebay/types/get_recommendations_request_container.rb +23 -0
  493. data/lib/ebay/types/get_recommendations_response_container.rb +23 -0
  494. data/lib/ebay/types/gift_services_code.rb +12 -0
  495. data/lib/ebay/types/granularity_level_code.rb +12 -0
  496. data/lib/ebay/types/hit_counter_code.rb +16 -0
  497. data/lib/ebay/types/home_page_featured_enabled_definition.rb +12 -0
  498. data/lib/ebay/types/insurance_details.rb +14 -0
  499. data/lib/ebay/types/insurance_option_code.rb +14 -0
  500. data/lib/ebay/types/insurance_selected_code.rb +14 -0
  501. data/lib/ebay/types/international_shipping_service_options.rb +18 -0
  502. data/lib/ebay/types/invocation_status.rb +12 -0
  503. data/lib/ebay/types/item.rb +151 -0
  504. data/lib/ebay/types/item_bid_details.rb +17 -0
  505. data/lib/ebay/types/item_format_sort_filter_code.rb +13 -0
  506. data/lib/ebay/types/item_list_customization.rb +19 -0
  507. data/lib/ebay/types/item_location_code.rb +11 -0
  508. data/lib/ebay/types/item_sort_filter_code.rb +15 -0
  509. data/lib/ebay/types/item_sort_type_code.rb +79 -0
  510. data/lib/ebay/types/item_totals.rb +14 -0
  511. data/lib/ebay/types/item_transaction_id.rb +14 -0
  512. data/lib/ebay/types/item_type_filter_code.rb +18 -0
  513. data/lib/ebay/types/label.rb +14 -0
  514. data/lib/ebay/types/listing_analyzer_recommendations.rb +14 -0
  515. data/lib/ebay/types/listing_checkout_redirect_preference.rb +14 -0
  516. data/lib/ebay/types/listing_designer.rb +15 -0
  517. data/lib/ebay/types/listing_details.rb +36 -0
  518. data/lib/ebay/types/listing_duration_code.rb +21 -0
  519. data/lib/ebay/types/listing_duration_definition.rb +14 -0
  520. data/lib/ebay/types/listing_duration_definitions.rb +15 -0
  521. data/lib/ebay/types/listing_duration_reference.rb +14 -0
  522. data/lib/ebay/types/listing_enhancements_code.rb +18 -0
  523. data/lib/ebay/types/listing_flow_code.rb +12 -0
  524. data/lib/ebay/types/listing_status_code.rb +13 -0
  525. data/lib/ebay/types/listing_subtype_enum.rb +10 -0
  526. data/lib/ebay/types/listing_tip.rb +18 -0
  527. data/lib/ebay/types/listing_tip_field.rb +16 -0
  528. data/lib/ebay/types/listing_tip_message.rb +16 -0
  529. data/lib/ebay/types/listing_type_code.rb +21 -0
  530. data/lib/ebay/types/live_auction_approval_status.rb +14 -0
  531. data/lib/ebay/types/live_auction_approval_status_array.rb +14 -0
  532. data/lib/ebay/types/live_auction_bid.rb +16 -0
  533. data/lib/ebay/types/live_auction_bid_array.rb +14 -0
  534. data/lib/ebay/types/live_auction_catalog.rb +16 -0
  535. data/lib/ebay/types/live_auction_details.rb +17 -0
  536. data/lib/ebay/types/local_listing_distances_non_subscription_definition.rb +12 -0
  537. data/lib/ebay/types/local_listing_distances_regular_definition.rb +12 -0
  538. data/lib/ebay/types/local_listing_distances_specialty_definition.rb +12 -0
  539. data/lib/ebay/types/local_market_non_subscription_definition.rb +12 -0
  540. data/lib/ebay/types/local_market_premium_subscription_definition.rb +12 -0
  541. data/lib/ebay/types/local_market_regular_subscription_definition.rb +12 -0
  542. data/lib/ebay/types/local_market_speciality_subscription_definition.rb +12 -0
  543. data/lib/ebay/types/local_search.rb +14 -0
  544. data/lib/ebay/types/logo_type_code.rb +12 -0
  545. data/lib/ebay/types/lookup_attribute.rb +14 -0
  546. data/lib/ebay/types/mail_options_type_code.rb +12 -0
  547. data/lib/ebay/types/mark_up_mark_down_event.rb +19 -0
  548. data/lib/ebay/types/mark_up_mark_down_event_type_code.rb +11 -0
  549. data/lib/ebay/types/maximum_item_requirements.rb +14 -0
  550. data/lib/ebay/types/measure.rb +15 -0
  551. data/lib/ebay/types/measurement_system_code.rb +11 -0
  552. data/lib/ebay/types/member_message.rb +24 -0
  553. data/lib/ebay/types/member_message_exchange.rb +20 -0
  554. data/lib/ebay/types/member_message_exchange_array.rb +14 -0
  555. data/lib/ebay/types/merch_display_code.rb +11 -0
  556. data/lib/ebay/types/merchandizing_pref_code.rb +11 -0
  557. data/lib/ebay/types/message_status_type_code.rb +11 -0
  558. data/lib/ebay/types/message_type_code.rb +13 -0
  559. data/lib/ebay/types/minimum_reserve_price_definition.rb +12 -0
  560. data/lib/ebay/types/modified_field.rb +14 -0
  561. data/lib/ebay/types/modify_action_code.rb +12 -0
  562. data/lib/ebay/types/modify_code.rb +11 -0
  563. data/lib/ebay/types/my_ebay_favorite_search.rb +14 -0
  564. data/lib/ebay/types/my_ebay_favorite_search_list.rb +15 -0
  565. data/lib/ebay/types/my_ebay_favorite_seller.rb +14 -0
  566. data/lib/ebay/types/my_ebay_favorite_seller_list.rb +15 -0
  567. data/lib/ebay/types/my_ebay_second_chance_offer_list.rb +15 -0
  568. data/lib/ebay/types/my_ebay_selection.rb +15 -0
  569. data/lib/ebay/types/my_messages_alert.rb +36 -0
  570. data/lib/ebay/types/my_messages_alert_array.rb +14 -0
  571. data/lib/ebay/types/my_messages_alert_id.rb +28 -0
  572. data/lib/ebay/types/my_messages_alert_id_array.rb +13 -0
  573. data/lib/ebay/types/my_messages_alert_resolution_status_code.rb +12 -0
  574. data/lib/ebay/types/my_messages_folder.rb +14 -0
  575. data/lib/ebay/types/my_messages_folder_operation_code.rb +12 -0
  576. data/lib/ebay/types/my_messages_folder_summary.rb +18 -0
  577. data/lib/ebay/types/my_messages_forward_details.rb +14 -0
  578. data/lib/ebay/types/my_messages_message.rb +32 -0
  579. data/lib/ebay/types/my_messages_message_array.rb +14 -0
  580. data/lib/ebay/types/my_messages_message_id.rb +28 -0
  581. data/lib/ebay/types/my_messages_message_id_array.rb +13 -0
  582. data/lib/ebay/types/my_messages_response_details.rb +15 -0
  583. data/lib/ebay/types/my_messages_summary.rb +20 -0
  584. data/lib/ebay/types/name_value_list.rb +14 -0
  585. data/lib/ebay/types/name_value_list_array.rb +14 -0
  586. data/lib/ebay/types/notification_delivery_status_code.rb +13 -0
  587. data/lib/ebay/types/notification_details.rb +25 -0
  588. data/lib/ebay/types/notification_enable.rb +14 -0
  589. data/lib/ebay/types/notification_enable_array.rb +14 -0
  590. data/lib/ebay/types/notification_event_property.rb +15 -0
  591. data/lib/ebay/types/notification_event_property_name_code.rb +10 -0
  592. data/lib/ebay/types/notification_event_state_code.rb +19 -0
  593. data/lib/ebay/types/notification_event_type_code.rb +50 -0
  594. data/lib/ebay/types/notification_payload_type_code.rb +10 -0
  595. data/lib/ebay/types/notification_role_code.rb +13 -0
  596. data/lib/ebay/types/notification_statistics.rb +17 -0
  597. data/lib/ebay/types/notification_user_data.rb +16 -0
  598. data/lib/ebay/types/offer.rb +27 -0
  599. data/lib/ebay/types/offer_array.rb +14 -0
  600. data/lib/ebay/types/operation_type_code.rb +11 -0
  601. data/lib/ebay/types/order.rb +38 -0
  602. data/lib/ebay/types/order_role_code.rb +11 -0
  603. data/lib/ebay/types/order_status_code.rb +13 -0
  604. data/lib/ebay/types/order_transaction.rb +16 -0
  605. data/lib/ebay/types/paginated_item_array.rb +16 -0
  606. data/lib/ebay/types/paginated_order_transaction_array.rb +16 -0
  607. data/lib/ebay/types/paginated_transaction_array.rb +16 -0
  608. data/lib/ebay/types/pagination.rb +14 -0
  609. data/lib/ebay/types/pagination_result.rb +14 -0
  610. data/lib/ebay/types/paid_status_code.rb +20 -0
  611. data/lib/ebay/types/pay_pal_account_level_code.rb +16 -0
  612. data/lib/ebay/types/pay_pal_account_status_code.rb +17 -0
  613. data/lib/ebay/types/pay_pal_account_type_code.rb +14 -0
  614. data/lib/ebay/types/payment_details.rb +14 -0
  615. data/lib/ebay/types/payment_method_search_code.rb +12 -0
  616. data/lib/ebay/types/payment_option_details.rb +14 -0
  617. data/lib/ebay/types/payment_status_code.rb +15 -0
  618. data/lib/ebay/types/payment_type_code.rb +14 -0
  619. data/lib/ebay/types/paypal_account_level_code.rb +16 -0
  620. data/lib/ebay/types/paypal_account_status_code.rb +17 -0
  621. data/lib/ebay/types/paypal_account_type_code.rb +14 -0
  622. data/lib/ebay/types/photo_display_code.rb +16 -0
  623. data/lib/ebay/types/picture_details.rb +17 -0
  624. data/lib/ebay/types/picture_manager_action_code.rb +14 -0
  625. data/lib/ebay/types/picture_manager_detail_level_code.rb +12 -0
  626. data/lib/ebay/types/picture_manager_details.rb +20 -0
  627. data/lib/ebay/types/picture_manager_folder.rb +16 -0
  628. data/lib/ebay/types/picture_manager_picture.rb +17 -0
  629. data/lib/ebay/types/picture_manager_picture_display.rb +17 -0
  630. data/lib/ebay/types/picture_manager_picture_display_type_code.rb +15 -0
  631. data/lib/ebay/types/picture_manager_subscription.rb +15 -0
  632. data/lib/ebay/types/picture_manager_subscription_level_code.rb +14 -0
  633. data/lib/ebay/types/picture_source_code.rb +12 -0
  634. data/lib/ebay/types/price_range_filter.rb +14 -0
  635. data/lib/ebay/types/pricing_recommendations.rb +14 -0
  636. data/lib/ebay/types/pro_pack_enabled_definition.rb +12 -0
  637. data/lib/ebay/types/pro_pack_plus_enabled_definition.rb +12 -0
  638. data/lib/ebay/types/pro_stores_checkout_preference.rb +15 -0
  639. data/lib/ebay/types/pro_stores_details.rb +15 -0
  640. data/lib/ebay/types/product.rb +21 -0
  641. data/lib/ebay/types/product_family.rb +16 -0
  642. data/lib/ebay/types/product_finder_constraint.rb +14 -0
  643. data/lib/ebay/types/product_info.rb +16 -0
  644. data/lib/ebay/types/product_listing_details.rb +18 -0
  645. data/lib/ebay/types/product_search.rb +26 -0
  646. data/lib/ebay/types/product_search_page.rb +20 -0
  647. data/lib/ebay/types/product_search_result.rb +26 -0
  648. data/lib/ebay/types/product_use_case_code.rb +12 -0
  649. data/lib/ebay/types/promoted_item.rb +24 -0
  650. data/lib/ebay/types/promotion_details.rb +16 -0
  651. data/lib/ebay/types/promotion_item_price_type_code.rb +13 -0
  652. data/lib/ebay/types/promotion_item_selection_code.rb +11 -0
  653. data/lib/ebay/types/promotion_method_code.rb +11 -0
  654. data/lib/ebay/types/promotion_rule.rb +24 -0
  655. data/lib/ebay/types/promotion_scheme_code.rb +18 -0
  656. data/lib/ebay/types/proximity_search.rb +14 -0
  657. data/lib/ebay/types/proximity_search_details.rb +13 -0
  658. data/lib/ebay/types/purchase_purpose_type_code.rb +17 -0
  659. data/lib/ebay/types/quantity.rb +14 -0
  660. data/lib/ebay/types/quantity_operator_code.rb +14 -0
  661. data/lib/ebay/types/question_type_code.rb +13 -0
  662. data/lib/ebay/types/range_code.rb +11 -0
  663. data/lib/ebay/types/rcs_payment_status_code.rb +12 -0
  664. data/lib/ebay/types/recommendation_engine_code.rb +13 -0
  665. data/lib/ebay/types/refund_reason_code.rb +15 -0
  666. data/lib/ebay/types/refund_type_code.rb +12 -0
  667. data/lib/ebay/types/region_details.rb +14 -0
  668. data/lib/ebay/types/reminder_customization.rb +14 -0
  669. data/lib/ebay/types/reminders.rb +20 -0
  670. data/lib/ebay/types/request_categories.rb +16 -0
  671. data/lib/ebay/types/response_attribute_set.rb +21 -0
  672. data/lib/ebay/types/revise_status.rb +17 -0
  673. data/lib/ebay/types/sales_tax.rb +16 -0
  674. data/lib/ebay/types/schedule.rb +14 -0
  675. data/lib/ebay/types/scheduling_info.rb +15 -0
  676. data/lib/ebay/types/search_attributes.rb +17 -0
  677. data/lib/ebay/types/search_details.rb +15 -0
  678. data/lib/ebay/types/search_flags_code.rb +13 -0
  679. data/lib/ebay/types/search_location.rb +15 -0
  680. data/lib/ebay/types/search_location_filter.rb +17 -0
  681. data/lib/ebay/types/search_request.rb +16 -0
  682. data/lib/ebay/types/search_result_item.rb +17 -0
  683. data/lib/ebay/types/search_result_values_code.rb +14 -0
  684. data/lib/ebay/types/search_sort_order_code.rb +25 -0
  685. data/lib/ebay/types/search_store_filter.rb +14 -0
  686. data/lib/ebay/types/search_type_code.rb +11 -0
  687. data/lib/ebay/types/second_chance_offer_duration_code.rb +13 -0
  688. data/lib/ebay/types/selection_mode_code.rb +11 -0
  689. data/lib/ebay/types/seller.rb +39 -0
  690. data/lib/ebay/types/seller_business_code.rb +12 -0
  691. data/lib/ebay/types/seller_contact_details_enabled_definition.rb +12 -0
  692. data/lib/ebay/types/seller_favorite_item_preferences.rb +19 -0
  693. data/lib/ebay/types/seller_guarantee_level_code.rb +13 -0
  694. data/lib/ebay/types/seller_level_code.rb +15 -0
  695. data/lib/ebay/types/seller_payment.rb +26 -0
  696. data/lib/ebay/types/seller_payment_method_code.rb +14 -0
  697. data/lib/ebay/types/seller_payment_preferences.rb +20 -0
  698. data/lib/ebay/types/selling_manager_product_details.rb +15 -0
  699. data/lib/ebay/types/selling_status.rb +26 -0
  700. data/lib/ebay/types/selling_summary.rb +19 -0
  701. data/lib/ebay/types/set_user_notes_action_code.rb +11 -0
  702. data/lib/ebay/types/severity_code.rb +11 -0
  703. data/lib/ebay/types/shipment.rb +39 -0
  704. data/lib/ebay/types/shipment_delivery_status_code.rb +16 -0
  705. data/lib/ebay/types/shipment_status_code.rb +11 -0
  706. data/lib/ebay/types/shipping_carrier_code.rb +16 -0
  707. data/lib/ebay/types/shipping_details.rb +43 -0
  708. data/lib/ebay/types/shipping_feature_code.rb +15 -0
  709. data/lib/ebay/types/shipping_location_details.rb +14 -0
  710. data/lib/ebay/types/shipping_option_code.rb +13 -0
  711. data/lib/ebay/types/shipping_package_code.rb +27 -0
  712. data/lib/ebay/types/shipping_rate_type_code.rb +11 -0
  713. data/lib/ebay/types/shipping_region_code.rb +23 -0
  714. data/lib/ebay/types/shipping_service_code.rb +433 -0
  715. data/lib/ebay/types/shipping_service_details.rb +20 -0
  716. data/lib/ebay/types/shipping_service_options.rb +21 -0
  717. data/lib/ebay/types/shipping_term_required_definition.rb +12 -0
  718. data/lib/ebay/types/shipping_terms_code.rb +11 -0
  719. data/lib/ebay/types/shipping_type_code.rb +16 -0
  720. data/lib/ebay/types/sifftas_recommendations.rb +14 -0
  721. data/lib/ebay/types/site_code.rb +34 -0
  722. data/lib/ebay/types/site_defaults.rb +43 -0
  723. data/lib/ebay/types/site_details.rb +14 -0
  724. data/lib/ebay/types/site_hosted_picture.rb +17 -0
  725. data/lib/ebay/types/site_id_filter_code.rb +14 -0
  726. data/lib/ebay/types/site_location.rb +13 -0
  727. data/lib/ebay/types/site_wide_characteristics.rb +15 -0
  728. data/lib/ebay/types/skype_contact_option_code.rb +11 -0
  729. data/lib/ebay/types/skype_me_non_transactional_enabled_definition.rb +12 -0
  730. data/lib/ebay/types/skype_me_transactional_enabled_definition.rb +12 -0
  731. data/lib/ebay/types/skype_option_code.rb +11 -0
  732. data/lib/ebay/types/sms_subscription.rb +17 -0
  733. data/lib/ebay/types/sms_subscription_error_code_code.rb +14 -0
  734. data/lib/ebay/types/sms_subscription_user_status_code.rb +13 -0
  735. data/lib/ebay/types/sort_order_code.rb +11 -0
  736. data/lib/ebay/types/spelling_suggestion.rb +14 -0
  737. data/lib/ebay/types/store.rb +34 -0
  738. data/lib/ebay/types/store_category_update_action_code.rb +13 -0
  739. data/lib/ebay/types/store_color.rb +15 -0
  740. data/lib/ebay/types/store_color_scheme.rb +18 -0
  741. data/lib/ebay/types/store_color_scheme_array.rb +14 -0
  742. data/lib/ebay/types/store_custom_category.rb +18 -0
  743. data/lib/ebay/types/store_custom_category_array.rb +14 -0
  744. data/lib/ebay/types/store_custom_header_layout_code.rb +11 -0
  745. data/lib/ebay/types/store_custom_listing_header.rb +20 -0
  746. data/lib/ebay/types/store_custom_listing_header_display_code.rb +12 -0
  747. data/lib/ebay/types/store_custom_listing_header_link.rb +15 -0
  748. data/lib/ebay/types/store_custom_listing_header_link_code.rb +13 -0
  749. data/lib/ebay/types/store_custom_page.rb +21 -0
  750. data/lib/ebay/types/store_custom_page_array.rb +14 -0
  751. data/lib/ebay/types/store_custom_page_status_code.rb +12 -0
  752. data/lib/ebay/types/store_font.rb +21 -0
  753. data/lib/ebay/types/store_font_face_code.rb +13 -0
  754. data/lib/ebay/types/store_font_size_code.rb +16 -0
  755. data/lib/ebay/types/store_header_style_code.rb +11 -0
  756. data/lib/ebay/types/store_inventory_enabled_definition.rb +12 -0
  757. data/lib/ebay/types/store_item_list_layout_code.rb +11 -0
  758. data/lib/ebay/types/store_item_list_sort_order_code.rb +13 -0
  759. data/lib/ebay/types/store_logo.rb +15 -0
  760. data/lib/ebay/types/store_logo_array.rb +14 -0
  761. data/lib/ebay/types/store_preferences.rb +14 -0
  762. data/lib/ebay/types/store_search_code.rb +13 -0
  763. data/lib/ebay/types/store_subscription.rb +14 -0
  764. data/lib/ebay/types/store_subscription_array.rb +14 -0
  765. data/lib/ebay/types/store_subscription_level_code.rb +13 -0
  766. data/lib/ebay/types/store_theme.rb +16 -0
  767. data/lib/ebay/types/store_theme_array.rb +16 -0
  768. data/lib/ebay/types/store_vacation_preferences.rb +19 -0
  769. data/lib/ebay/types/storefront.rb +16 -0
  770. data/lib/ebay/types/string_match_code.rb +11 -0
  771. data/lib/ebay/types/subscription.rb +15 -0
  772. data/lib/ebay/types/suggested_category.rb +15 -0
  773. data/lib/ebay/types/summary_event_schedule.rb +15 -0
  774. data/lib/ebay/types/summary_frequency_code.rb +49 -0
  775. data/lib/ebay/types/summary_window_period_code.rb +17 -0
  776. data/lib/ebay/types/supported_event_types_array.rb +13 -0
  777. data/lib/ebay/types/task_status_code.rb +13 -0
  778. data/lib/ebay/types/tax_jurisdiction.rb +16 -0
  779. data/lib/ebay/types/tcr_enabled_definition.rb +12 -0
  780. data/lib/ebay/types/theme_group.rb +16 -0
  781. data/lib/ebay/types/token_return_method_code.rb +11 -0
  782. data/lib/ebay/types/trading_role_code.rb +11 -0
  783. data/lib/ebay/types/transaction.rb +54 -0
  784. data/lib/ebay/types/transaction_platform.rb +11 -0
  785. data/lib/ebay/types/transaction_status.rb +18 -0
  786. data/lib/ebay/types/unit_code.rb +15 -0
  787. data/lib/ebay/types/ups_rate_option_code.rb +11 -0
  788. data/lib/ebay/types/url_details.rb +14 -0
  789. data/lib/ebay/types/url_type_code.rb +20 -0
  790. data/lib/ebay/types/user.rb +56 -0
  791. data/lib/ebay/types/user_consent_required_definition.rb +12 -0
  792. data/lib/ebay/types/user_id_array.rb +13 -0
  793. data/lib/ebay/types/user_id_filter.rb +14 -0
  794. data/lib/ebay/types/user_id_password.rb +17 -0
  795. data/lib/ebay/types/user_status_code.rb +26 -0
  796. data/lib/ebay/types/val.rb +15 -0
  797. data/lib/ebay/types/value_pack_enabled_definition.rb +12 -0
  798. data/lib/ebay/types/vat_details.rb +15 -0
  799. data/lib/ebay/types/vat_status_code.rb +12 -0
  800. data/lib/ebay/types/vendor_hosted_picture.rb +17 -0
  801. data/lib/ebay/types/verified_user_requirements.rb +14 -0
  802. data/lib/ebay/types/want_it_now_post.rb +19 -0
  803. data/lib/ebay/types/warning_level_code.rb +11 -0
  804. data/lib/ebay/types/wireless_carrier_id_code.rb +23 -0
  805. data/lib/ebay/types/xml_requester_credentials.rb +15 -0
  806. data/lib/ebay/types/xsl_file.rb +26 -0
  807. data/lib/ebay/types.rb +204 -0
  808. data/lib/ebay.rb +32 -0
  809. data/lib/support/cattr_accessor.rb +57 -0
  810. data/lib/support/core_ext/hash.rb +24 -0
  811. data/lib/support/core_ext/string.rb +21 -0
  812. data/lib/support/xml_mapping/cdata_node.rb +7 -0
  813. data/lib/support/xml_mapping/money_node.rb +22 -0
  814. data/lib/support/xml_mapping/time_node.rb +14 -0
  815. data/lib/support/xml_mapping/value_array_node.rb +8 -0
  816. data/lib/support/xml_mapping.rb +10 -0
  817. data/rakefile +130 -0
  818. data/test/credentials.rb +7 -0
  819. data/test/fixtures/notifications/ask_seller_question.xml +58 -0
  820. data/test/fixtures/notifications/invalid_signature.xml +333 -0
  821. data/test/fixtures/notifications/m2m_message1.xml +333 -0
  822. data/test/fixtures/notifications/no_soap_body.xml +10 -0
  823. data/test/fixtures/responses/get_attributes_cs.xml +93188 -0
  824. data/test/fixtures/responses/get_attributes_xsl.xml +3973 -0
  825. data/test/fixtures/responses/official_time_failure.xml +2 -0
  826. data/test/fixtures/responses/official_time_success.xml +2 -0
  827. data/test/fixtures/responses/official_time_warning.xml +2 -0
  828. data/test/fixtures/responses/verify_add_item.xml +2 -0
  829. data/test/fixtures/responses/verify_add_item_failure.xml +2 -0
  830. data/test/fixtures/templates/abstract_response.erb +3 -0
  831. data/test/fixtures/templates/base.erb +19 -0
  832. data/test/fixtures/templates/ebay_class.erb +14 -0
  833. data/test/http_mock.rb +48 -0
  834. data/test/test_helper.rb +27 -0
  835. data/test/unit/abstract_request_test.rb +20 -0
  836. data/test/unit/application_delivery_preferences_test.rb +21 -0
  837. data/test/unit/class_definition_test.rb +20 -0
  838. data/test/unit/config_test.rb +24 -0
  839. data/test/unit/core_ext_hash_test.rb +61 -0
  840. data/test/unit/core_ext_string_test.rb +93 -0
  841. data/test/unit/ebay_test.rb +63 -0
  842. data/test/unit/generate_from_xsd.rb +35 -0
  843. data/test/unit/get_attributes_cs_test.rb +15 -0
  844. data/test/unit/get_attributes_xsl.rb +18 -0
  845. data/test/unit/initializer_test.rb +84 -0
  846. data/test/unit/mapping_subclass_test.rb +24 -0
  847. data/test/unit/node_test.rb +113 -0
  848. data/test/unit/notification_signature_test.rb +14 -0
  849. data/test/unit/notifications_test.rb +52 -0
  850. data/test/unit/template_test.rb +70 -0
  851. data/test/unit/xml_mapping_cdata_node_test.rb +31 -0
  852. data/test/unit/xml_mapping_money_node_test.rb +28 -0
  853. data/test/unit/xml_mapping_test.rb +28 -0
  854. data/test/unit/xml_mapping_time_node_test.rb +37 -0
  855. data/test/unit/xml_mapping_value_array_node_test.rb +57 -0
  856. metadata +943 -0
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <GeteBayOfficialTimeResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Timestamp>2006-07-05T14:23:02.736Z</Timestamp><Ack>Failure</Ack><Errors><ErrorClassification>SystemError</ErrorClassification></Errors><Version>467</Version><Build>e467_core_Bundled_3145691_R1</Build></GeteBayOfficialTimeResponse>
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <GeteBayOfficialTimeResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Timestamp>2006-07-05T14:23:03.399Z</Timestamp><Ack>Success</Ack><Version>467</Version><Build>e467_core_Bundled_3145691_R1</Build></GeteBayOfficialTimeResponse>
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <GeteBayOfficialTimeResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Timestamp>2006-07-05T14:23:03.399Z</Timestamp><Ack>Warning</Ack><Errors><ShortMessage>Unrecognized element &lt;Item&gt; in SOAP request.</ShortMessage><LongMessage>The element &lt;Item&gt; was found in the input SOAP request. This is not a declared element in the schema and will be ignored.</LongMessage><ErrorCode>21927</ErrorCode><SeverityCode>Warning</SeverityCode><ErrorParameters ParamID="0"><Value>Item</Value></ErrorParameters><ErrorClassification>RequestError</ErrorClassification></Errors><Errors><ShortMessage>Unrecognized element &lt;Hotdog&gt; in SOAP request.</ShortMessage><LongMessage>The element &lt;Hotdog&gt; was found in the input SOAP request. This is not a declared element in the schema and will be ignored.</LongMessage><ErrorCode>21927</ErrorCode><SeverityCode>Warning</SeverityCode><ErrorParameters ParamID="0"><Value>Hotdog</Value></ErrorParameters><ErrorClassification>RequestError</ErrorClassification></Errors><Version>467</Version><Build>e467_core_Bundled_3145691_R1</Build></GeteBayOfficialTimeResponse>
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <VerifyAddItemResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Timestamp>2006-02-12T03:14:34.910Z</Timestamp><Ack>Success</Ack><Version>447</Version><Build>e447_core_Bundled_2399642_R1</Build><ItemID>0</ItemID><Fees><Fee><Name>AuctionLengthFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>BoldFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>BuyItNowFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>CategoryFeaturedFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>FeaturedFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>FeaturedGalleryFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>FixedPriceDurationFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>GalleryFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>GiftIconFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>HighLightFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>InsertionFee</Name><Fee currencyID="USD">0.35</Fee></Fee><Fee><Name>InternationalInsertionFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ListingDesignerFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ListingFee</Name><Fee currencyID="USD">0.35</Fee></Fee><Fee><Name>PhotoDisplayFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>PhotoFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ReserveFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>SchedulingFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>SubtitleFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>BorderFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ProPackBundleFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>BasicUpgradePackBundleFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ValuePackBundleFee</Name><Fee currencyID="USD">0.0</Fee></Fee><Fee><Name>ProPackPlusBundleFee</Name><Fee currencyID="USD">0.0</Fee></Fee></Fees></VerifyAddItemResponse>
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <VerifyAddItemResponse xmlns="urn:ebay:apis:eBLBaseComponents"><Ack>Failure</Ack><Errors><ShortMessage>Input data is invalid.</ShortMessage><LongMessage>Input data for tag &lt;Item.Currency&gt; is invalid or missing. Please check API documentation.</LongMessage><ErrorCode>37</ErrorCode><SeverityCode>Error</SeverityCode><ErrorParameters ParamID="0"><Value>Item.Currency</Value></ErrorParameters><ErrorClassification>RequestError</ErrorClassification></Errors><Version>467</Version><Build>e467_core_Bundled_3145691_R1</Build></VerifyAddItemResponse>
@@ -0,0 +1,3 @@
1
+ def errors?
2
+ errors.size > 0
3
+ end
@@ -0,0 +1,19 @@
1
+ <% for req in requires -%>
2
+ <%= "require 'ebay/types/#{req}'" %>
3
+ <% end -%>
4
+
5
+ module Ebay
6
+ module <%= module_name %>
7
+ class <%= class_definition %>
8
+ include XML::Mapping
9
+ include HashInitialization
10
+ root_element_name '<%= element_name %>'
11
+ <% for node in nodes -%>
12
+ <%= node.to_s %>
13
+ <% end -%>
14
+ <% for line in customization -%>
15
+ <%= line.chomp %>
16
+ <% end -%>
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,14 @@
1
+ <% for req in requires -%>
2
+ <%= "require '#{req}'" %>
3
+ <% end -%>
4
+
5
+ module Ebay
6
+ module Mapping
7
+ class <%= class_definition %>
8
+ include XML::Mapping
9
+ <% for node in nodes -%>
10
+ <%= node.to_s %>
11
+ <% end -%>
12
+ end
13
+ end
14
+ end
data/test/http_mock.rb ADDED
@@ -0,0 +1,48 @@
1
+ module Ebay
2
+ class HttpMock
3
+ class << self
4
+ def responses
5
+ @@responses ||= []
6
+ end
7
+
8
+ def respond_with(*args)
9
+ reset!
10
+ responses.concat(args)
11
+ end
12
+
13
+ def reset!
14
+ responses.clear
15
+ end
16
+ end
17
+
18
+ def post(*args)
19
+ self.class.responses.shift || raise("No more responses have been recorded")
20
+ end
21
+
22
+ def initialize(site)
23
+ @site = site
24
+ end
25
+ end
26
+
27
+ class Response
28
+ attr_accessor :body, :code
29
+
30
+ def initialize(body, code = 200)
31
+ @body, @code = body, code
32
+ end
33
+
34
+ def success?
35
+ (200..299).include?(code)
36
+ end
37
+
38
+ def [](index)
39
+ end
40
+ end
41
+
42
+ class Connection
43
+ private
44
+ def http
45
+ @http ||= HttpMock.new(@site)
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,27 @@
1
+ $:.unshift File.dirname(__FILE__)
2
+ $:.unshift File.join(File.dirname(__FILE__), "..", "lib")
3
+ $:.unshift File.join(File.dirname(__FILE__), "..", "lib", "schema")
4
+
5
+ require 'test/unit'
6
+ require 'ebay'
7
+ require 'ebay/schema/mapper'
8
+ require 'http_mock'
9
+ require 'credentials'
10
+
11
+ class Test::Unit::TestCase #:nodoc:
12
+ FIXTURES_DIR = File.dirname(__FILE__) + '/fixtures'
13
+
14
+ protected
15
+ def responses(name, code = 200)
16
+ Ebay::Response.new(load_response(name), code)
17
+ end
18
+
19
+ def load_response(name)
20
+ File.read(response_file_path(name))
21
+ end
22
+
23
+ def response_file_path(name)
24
+ FIXTURES_DIR + "/responses/#{name}.xml"
25
+ end
26
+ end
27
+
@@ -0,0 +1,20 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class EbayTest < Test::Unit::TestCase
4
+ include Ebay::Requests
5
+
6
+ def test_set_detail_level_with_string
7
+ desired = '<GeteBayOfficialTimeRequest><DetailLevel>ReturnAll</DetailLevel><RequesterCredentials/></GeteBayOfficialTimeRequest>'
8
+ request = GeteBayOfficialTime.new(:detail_level => 'ReturnAll')
9
+ assert_equal 'ReturnAll', request.detail_level
10
+ assert_equal ['ReturnAll'], request.detail_levels
11
+ assert_equal desired, request.save_to_xml.to_s
12
+ end
13
+
14
+ def test_set_detail_level_with_string
15
+ desired = '<GeteBayOfficialTimeRequest><DetailLevel>ReturnAll</DetailLevel><DetailLevel>None</DetailLevel><RequesterCredentials/></GeteBayOfficialTimeRequest>'
16
+ request = GeteBayOfficialTime.new(:detail_levels => [ 'ReturnAll', 'None' ])
17
+ assert_equal [ 'ReturnAll', 'None' ], request.detail_levels
18
+ assert_equal desired, request.save_to_xml.to_s
19
+ end
20
+ end
@@ -0,0 +1,21 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class ClassDefinitionTest < Test::Unit::TestCase
4
+ include Ebay::Types
5
+
6
+ def test_enabled
7
+ prefs = ApplicationDeliveryPreferences.new(:application_enable => 'Enable',
8
+ :alert_enable => 'Enable'
9
+ )
10
+ assert prefs.application_enabled?
11
+ assert prefs.alerts_enabled?
12
+ end
13
+
14
+ def test_disabled
15
+ prefs = ApplicationDeliveryPreferences.new(:application_enable => 'Disable',
16
+ :alert_enable => 'Disable'
17
+ )
18
+ assert !prefs.application_enabled?
19
+ assert !prefs.alerts_enabled?
20
+ end
21
+ end
@@ -0,0 +1,20 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class ClassDefinitionTest < Test::Unit::TestCase
4
+ include Ebay::Schema
5
+
6
+ def test_new
7
+ class_def = ClassDefinition.new('GeteBayOfficialTime', 'GeteBayOfficialTimeRequest', 'Requests', 'AbstractRequest')
8
+ assert_equal 'GeteBayOfficialTime', class_def.class_name
9
+ assert_equal 'GeteBayOfficialTimeRequest', class_def.element_name
10
+ assert_equal 'Abstract', class_def.superclass_name
11
+ assert_equal 'Requests', class_def.module_name
12
+ end
13
+
14
+ def test_requires
15
+ class_def = ClassDefinition.new('GeteBayOfficialTime', 'GeteBayOfficialTimeRequest', 'Requests')
16
+ class_def.nodes << ObjectNode.new('Name', :type => 'PersonName')
17
+ assert_equal 1, class_def.requires.size
18
+ assert_equal 'person_name', class_def.requires.first
19
+ end
20
+ end
@@ -0,0 +1,24 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class ConfigTest < Test::Unit::TestCase
4
+ include Ebay
5
+ include Ebay::Requests
6
+
7
+ def test_production_configuration
8
+ assert !Api.using_sandbox?
9
+ assert Api.using_production?
10
+ assert_equal URI.parse(Api.production_url), Api.service_uri
11
+ end
12
+
13
+ def test_sandbox_configuration
14
+ Api.use_sandbox = true
15
+ assert Api.using_sandbox?
16
+ assert !Api.using_production?
17
+ assert_equal URI.parse(Api.sandbox_url), Api.service_uri
18
+ end
19
+
20
+ def test_override_auth_token
21
+ request = GeteBayOfficialTime.new(:auth_token => 'test')
22
+ assert_equal 'test', request.auth_token
23
+ end
24
+ end
@@ -0,0 +1,61 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class CamelizeHashTest < Test::Unit::TestCase
4
+
5
+ def test_camelize_simple_hash
6
+ input = { :item => 'Dog' }
7
+ desired_output = { :Item => 'Dog' }
8
+ assert_equal desired_output, input.ebay_camelize
9
+ end
10
+
11
+ def test_camelize_multiple_values
12
+ input = { :item => 'Cat', :size => 'Large' }
13
+ desired_output = { :Item => 'Cat', :Size => 'Large' }
14
+ assert_equal desired_output, input.ebay_camelize
15
+ end
16
+
17
+ def test_camelize_nested_hashes
18
+ input = { :item => { :cat => 'Barney',
19
+ :person => { :name => 'steve' }
20
+ }
21
+ }
22
+ desired_output = { :Item => { :Cat => 'Barney',
23
+ :Person => { :Name => 'steve' }
24
+ }
25
+ }
26
+ assert_equal desired_output, input.ebay_camelize
27
+ end
28
+
29
+ def test_camelize_empty_hash
30
+ input = {}
31
+ assert_equal({}, input.ebay_camelize)
32
+ end
33
+
34
+ def test_camelize_key_null_value
35
+ input = { :item => nil }
36
+ desired_output = { :Item => nil }
37
+ assert_equal desired_output, input.ebay_camelize
38
+ end
39
+
40
+ def test_camelize_with_array_values
41
+ input = { :item => ['Dog', 'Cat', 'Bird'] }
42
+ desired_output = { :Item => ['Dog', 'Cat', 'Bird'] }
43
+ assert_equal desired_output, input.ebay_camelize
44
+ end
45
+
46
+ def test_camelize_hash_nested_in_array
47
+ input = { :items => [:first_pet => 'dog', :second_pet => 'cat' ] }
48
+ desired_output = { :Items => [:FirstPet => 'dog', :SecondPet => 'cat' ] }
49
+ assert_equal desired_output, input.ebay_camelize
50
+ end
51
+
52
+ def test_value_references
53
+ input = { :item => ['Dog', 'Cat', 'Bird'] }
54
+ desired_output = { :Item => ['Dog', 'Cat', 'Bird'] }
55
+ assert_equal desired_output, input.ebay_camelize
56
+
57
+ input[:item].pop
58
+ assert_equal ['Dog', 'Cat'], input[:item]
59
+ assert_not_equal input, desired_output
60
+ end
61
+ end
@@ -0,0 +1,93 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class TestCoreExtString < Test::Unit::TestCase
4
+ def test_upper_first
5
+ assert_equal "MyMethodCall", "myMethodCall".upcase_first_character
6
+ end
7
+
8
+ def test_upper_first_on_empty_string
9
+ assert_equal "", "".upcase_first_character
10
+ end
11
+
12
+ def test_lower_first
13
+ assert_equal "myMethodCall", "MyMethodCall".downcase_first_character
14
+ end
15
+
16
+ def test_lower_first_on_empty_string
17
+ assert_equal "", "".downcase_first_character
18
+ end
19
+
20
+ def test_camelize
21
+ assert_equal "MyMethodCall", "my_method_call".ebay_camelize
22
+ end
23
+
24
+ def test_camelize_camelized_string
25
+ assert_equal "MyMethodCall", "MyMethodCall".ebay_camelize
26
+ end
27
+
28
+ def test_camelize_with_ebay
29
+ assert_equal "GeteBayOfficialTime", "get_ebay_official_time".ebay_camelize
30
+ end
31
+
32
+ def test_camelize_camelized_string_with_ebay
33
+ assert_equal "GeteBayOfficialTime", "GeteBayOfficialTime".ebay_camelize
34
+ end
35
+
36
+ def test_camelize_parameter_name
37
+ assert_equal "ListingDuration", "listing_duration".ebay_camelize
38
+ end
39
+
40
+ def test_camelize_parameter_name_with_id
41
+ assert_equal "CategoryID", "category_id".ebay_camelize
42
+ end
43
+
44
+ def test_camelize_trailing_cs
45
+ assert_equal "GetCategory2CS", "get_category_2_cs".ebay_camelize
46
+ end
47
+
48
+ def test_camelize_trailing_xsl
49
+ assert_equal "GetAttributesXSL", "get_attributes_xsl".ebay_camelize
50
+ end
51
+
52
+ def test_camelize_trailing_url
53
+ assert_equal "GetReturnURL", "get_return_url".ebay_camelize
54
+ end
55
+
56
+ def test_camelize_responsd_to_question
57
+ assert_equal "AddMemberMessageRTQ", "add_member_message_rtq".ebay_camelize
58
+ end
59
+
60
+ def test_underscore_method_with_id
61
+ assert_equal "product_finder_ids", "ProductFinderIDs".ebay_underscore
62
+ end
63
+
64
+ def test_underscore_ebay_express
65
+ assert_equal "ebx_opt_in_preference", "eBxOptInPreference".ebay_underscore
66
+ assert_equal "ebx_opt_in_preference", "EBxOptInPreference".ebay_underscore
67
+ end
68
+
69
+ def test_camelize_ebay_express
70
+ assert_equal "EBxOptInPreference", "eBxOptInPreference".ebay_camelize
71
+ end
72
+
73
+ def test_underscore_ebay
74
+ assert_equal "ebay_method", "EBayMethod".ebay_underscore
75
+ assert_equal "ebay_method", "eBayMethod".ebay_underscore
76
+ end
77
+
78
+ def test_underscore_ebay_request
79
+ assert_equal "get_ebay_official_time_request", "GeteBayOfficialTimeRequest".ebay_underscore
80
+ end
81
+
82
+ def test_camelize_add_member_message_aaq_to_partner
83
+ assert_equal 'AddMemberMessageAAQToPartner', 'add_member_message_aaq_to_partner'.ebay_camelize
84
+ end
85
+
86
+ def test_camelize_user_id_filter
87
+ assert_equal 'UserIdFilter', 'user_id_filter'.ebay_camelize
88
+ end
89
+
90
+ def test_underscore_paypal
91
+ assert_equal 'paypal', 'PayPal'.ebay_underscore
92
+ end
93
+ end
@@ -0,0 +1,63 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class EbayTest < Test::Unit::TestCase
4
+ include Ebay
5
+ include Ebay::Types
6
+
7
+ def setup
8
+ @ebay = Api.new
9
+ @success = responses(:official_time_success)
10
+ @failure = responses(:official_time_failure)
11
+ end
12
+
13
+ def test_build_header
14
+ header = {
15
+ 'X-EBAY-API-COMPATIBILITY-LEVEL' => Ebay::Schema::VERSION.to_s,
16
+ 'X-EBAY-API-SESSION-CERTIFICATE' => "#{Api.dev_id};#{Api.app_id};#{Api.cert}",
17
+ 'X-EBAY-API-DEV-NAME' => Api.dev_id,
18
+ 'X-EBAY-API-APP-NAME' => Api.app_id,
19
+ 'X-EBAY-API-CERT-NAME' => Api.cert,
20
+ 'X-EBAY-API-CALL-NAME' => 'GeteBayOfficialTime',
21
+ 'X-EBAY-API-SITEID' => Api.site_id.to_s,
22
+ 'Content-Type' => 'text/xml',
23
+ 'Accept-Encoding' => 'gzip'
24
+ }
25
+ ebay = Api.new
26
+ assert_equal header, ebay.send(:build_headers, 'GeteBayOfficialTime', Api.site_id)
27
+
28
+ end
29
+
30
+
31
+ def test_raise_on_error
32
+ Ebay::HttpMock.respond_with(@failure)
33
+ assert_raise(Ebay::RequestError) do
34
+ @ebay.get_ebay_official_time
35
+ end
36
+ end
37
+
38
+ def test_successful_request
39
+ Ebay::HttpMock.respond_with(@success)
40
+ response = @ebay.get_ebay_official_time
41
+ assert response.success?
42
+ assert_equal Time.parse('2006-07-05T14:23:03.399Z'), response.timestamp
43
+ end
44
+
45
+ def test_request_with_block
46
+ Ebay::HttpMock.respond_with(@success)
47
+ response = @ebay.get_ebay_official_time{ }
48
+ assert response.success?
49
+ assert_equal Time.parse('2006-07-05T14:23:03.399Z'), response.timestamp
50
+ end
51
+
52
+ def test_raise_on_error_with_errors
53
+ Ebay::HttpMock.respond_with responses(:verify_add_item_failure)
54
+ begin
55
+ @ebay.verify_add_item
56
+ rescue Ebay::RequestError => exception
57
+ assert_equal 1, exception.errors.size
58
+ error = exception.errors.first
59
+ assert_equal 'Input data is invalid.', error.short_message
60
+ assert_equal ErrorClassificationCode::RequestError, error.error_classification
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,35 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+ require 'rexml/document'
3
+
4
+ class GenerateFromXSDTest < Test::Unit::TestCase
5
+ def setup
6
+ dir = File.join(File.dirname(__FILE__), '..', 'schema')
7
+ schema = 'ebaySvc.xsd'
8
+ @doc = REXML::Document.new(File.new(File.join(dir, schema)))
9
+ end
10
+
11
+ def test_define_ebay_time_response
12
+ generated = <<-ENDCLASS
13
+ module Ebay
14
+ module Mapping
15
+ class AbstractResponse
16
+ include XML::Mapping
17
+ text_node :correlation_id, "CorrelationID"
18
+ text_node :message, "Message"
19
+ text_node :version, "Version"
20
+ text_node :build, "Build"
21
+ text_node :notification_event_name, "NotificationEventName"
22
+ text_node :recipient_user_id, "RecipientUserID"
23
+ text_node :notification_signature, "NotificationSignature"
24
+ text_node :hard_expiration_warning, "HardExpirationWarning"
25
+ end
26
+ end
27
+ end
28
+ ENDCLASS
29
+ loader = Ebay::Schema::Loader.new
30
+ loader.load
31
+ assert_equal generated, loader.generate
32
+ end
33
+ end
34
+
35
+
@@ -0,0 +1,15 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class GetAttributesCSTest < Test::Unit::TestCase
4
+ include Ebay
5
+ include Ebay::Types
6
+
7
+ def setup
8
+ @ebay = Api.new
9
+ end
10
+
11
+ def test_load_response
12
+ # HttpMock.respond_with responses(:get_attributes_cs)
13
+ # response = @ebay.get_attributes_cs(:detail_level => 'ReturnAll')
14
+ end
15
+ end
@@ -0,0 +1,18 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class GetAttributesXSLTest < Test::Unit::TestCase
4
+ include Ebay
5
+ include Ebay::Types
6
+
7
+ def setup
8
+ @ebay = Api.new
9
+ end
10
+
11
+ def test_raise_on_error_with_errors
12
+ HttpMock.respond_with responses(:get_attributes_xsl)
13
+ response = @ebay.get_attributes_xsl(:detail_level => 'ReturnAll')
14
+ assert_equal 1, response.xsl_files.size
15
+ xml = REXML::Document.new(response.xsl_files.first.file_content)
16
+ #puts xml.root.name
17
+ end
18
+ end
@@ -0,0 +1,84 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class Auction
4
+ include XML::Mapping
5
+ include Ebay::Initializer
6
+ attr_accessor :name, :duration
7
+ end
8
+
9
+ class Anvil
10
+ include XML::Mapping
11
+ include Ebay::Initializer
12
+
13
+ text_node :name, 'name'
14
+ end
15
+
16
+ class Toolbox
17
+ include XML::Mapping
18
+ include Ebay::Initializer
19
+
20
+ text_node :size, 'size'
21
+ object_node :tool, 'tool', :class => Anvil
22
+ end
23
+
24
+ class BaseObjectTest < Test::Unit::TestCase
25
+
26
+ def test_new_object_with_parameters
27
+ auction = Auction.new(:name => 'Chinese', :duration => 6)
28
+ assert_equal 'Chinese', auction.name
29
+ assert_equal 6, auction.duration
30
+ end
31
+
32
+ def test_invalid_parameter
33
+ assert_raise(NoMethodError){ Auction.new(:location => 'China') }
34
+ end
35
+
36
+ def test_child_with_xml_mapping
37
+ anvil = Anvil.new(:name => 'Super')
38
+ assert_equal 'Super', anvil.name
39
+ assert_equal '<anvil><name>Super</name></anvil>', anvil.save_to_xml.to_s
40
+ end
41
+
42
+ def test_load_from_xml
43
+ xml = REXML::Document.new('<anvil><name>Super</name></anvil>')
44
+ anvil = Anvil.load_from_xml(xml.root)
45
+ assert_equal 'Super', anvil.name
46
+ end
47
+
48
+ def test_object_node
49
+ toolbox = Toolbox.new(:size => 'Huge', :tool => Anvil.new(:name => 'Mine'))
50
+ assert_equal 'Huge', toolbox.size
51
+ assert_instance_of Anvil, toolbox.tool
52
+ assert_equal 'Mine', toolbox.tool.name
53
+ assert_equal '<toolbox><size>Huge</size><tool><name>Mine</name></tool></toolbox>', toolbox.save_to_xml.to_s
54
+ end
55
+
56
+ def test_yield_with_block
57
+ toolbox = Toolbox.new(:size => 'Huge') do |t|
58
+ t.tool = Anvil.new(:name => 'Mine')
59
+ end
60
+
61
+ assert_equal 'Huge', toolbox.size
62
+ assert_equal 'Mine', toolbox.tool.name
63
+ end
64
+ end
65
+
66
+ class ItemInitializationTest < Test::Unit::TestCase
67
+ include Ebay::Types
68
+
69
+ def test_simple_initialization
70
+ assert_nothing_raised do
71
+ item = Item.new(:primary_category => Category.new(:category_id => 57882),
72
+ :title => 'My awesome booties',
73
+ :description => 'Wicked awesome, yeah',
74
+ :location => 'Ottawa, On',
75
+ :start_price => Money.new(1200, 'USD'),
76
+ :quantity => 1,
77
+ :listing_duration => 'Days_3',
78
+ :country => 'US',
79
+ :currency => 'USD'
80
+ )
81
+ item.save_to_xml
82
+ end
83
+ end
84
+ end
@@ -0,0 +1,24 @@
1
+ require File.dirname(__FILE__) + '/../test_helper'
2
+
3
+ class StatusCode < String
4
+
5
+ end
6
+
7
+ class MyItem
8
+ include XML::Mapping
9
+
10
+ object_node :status, 'Status', :class => StatusCode
11
+
12
+ def fill_into_xml(xml)
13
+ self
14
+ end
15
+ end
16
+
17
+ class MappingSubclassTest < Test::Unit::TestCase
18
+ def test_mapping_subclass
19
+ item = MyItem.new
20
+ item.status = StatusCode.new('Complete')
21
+ end
22
+
23
+
24
+ end