solidus_core 1.1.4 → 1.2.0.beta1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of solidus_core might be problematic. Click here for more details.

Files changed (296) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/logo/solidus_logo.png +0 -0
  3. data/app/helpers/spree/base_helper.rb +2 -3
  4. data/app/models/concerns/spree/adjustment_source.rb +1 -1
  5. data/app/models/concerns/spree/default_price.rb +3 -1
  6. data/app/models/concerns/spree/named_type.rb +1 -1
  7. data/app/models/concerns/spree/user_methods.rb +10 -0
  8. data/app/models/spree/adjustment.rb +1 -1
  9. data/app/models/spree/adjustment_reason.rb +2 -4
  10. data/app/models/spree/app_configuration.rb +36 -0
  11. data/app/models/spree/base.rb +10 -1
  12. data/app/models/spree/calculator/tiered_percent.rb +2 -1
  13. data/app/models/spree/classification.rb +1 -1
  14. data/app/models/spree/country.rb +3 -3
  15. data/app/models/spree/credit_card.rb +2 -2
  16. data/app/models/spree/customer_return.rb +3 -4
  17. data/app/models/spree/inventory_unit.rb +13 -24
  18. data/app/models/spree/item_adjustments.rb +5 -5
  19. data/app/models/spree/line_item.rb +6 -15
  20. data/app/models/spree/log_entry.rb +1 -1
  21. data/app/models/spree/option_type.rb +4 -2
  22. data/app/models/spree/option_type_prototype.rb +6 -0
  23. data/app/models/spree/option_value.rb +1 -1
  24. data/app/models/spree/order.rb +18 -63
  25. data/app/models/spree/order/checkout.rb +4 -2
  26. data/app/models/spree/order_cancellations.rb +52 -1
  27. data/app/models/spree/order_contents.rb +1 -1
  28. data/app/models/spree/order_merger.rb +143 -0
  29. data/app/models/spree/order_shipping.rb +3 -3
  30. data/app/models/spree/order_update_attributes.rb +42 -0
  31. data/app/models/spree/order_updater.rb +1 -1
  32. data/app/models/spree/payment.rb +16 -10
  33. data/app/models/spree/payment_create.rb +68 -0
  34. data/app/models/spree/payment_method.rb +0 -1
  35. data/app/models/spree/preference.rb +1 -1
  36. data/app/models/spree/price.rb +1 -8
  37. data/app/models/spree/product.rb +9 -44
  38. data/app/models/spree/product/scopes.rb +9 -7
  39. data/app/models/spree/promotion/rules/nth_order.rb +1 -1
  40. data/app/models/spree/promotion/rules/taxon.rb +2 -1
  41. data/app/models/spree/promotion_chooser.rb +1 -0
  42. data/app/models/spree/promotion_code.rb +1 -1
  43. data/app/models/spree/promotion_rule_taxon.rb +6 -0
  44. data/app/models/spree/property.rb +2 -1
  45. data/app/models/spree/property_prototype.rb +6 -0
  46. data/app/models/spree/prototype.rb +6 -2
  47. data/app/models/spree/reimbursement.rb +10 -0
  48. data/app/models/spree/return_item/eligibility_validator/time_since_purchase.rb +1 -1
  49. data/app/models/spree/return_reason.rb +1 -7
  50. data/app/models/spree/role_user.rb +3 -5
  51. data/app/models/spree/shipment.rb +6 -11
  52. data/app/models/spree/shipping_method.rb +1 -7
  53. data/app/models/spree/shipping_rate.rb +3 -14
  54. data/app/models/spree/stock/coordinator.rb +48 -4
  55. data/app/models/spree/stock/estimator.rb +3 -6
  56. data/app/models/spree/stock/packer.rb +18 -2
  57. data/app/models/spree/stock/shipping_rate_selector.rb +16 -0
  58. data/app/models/spree/stock/shipping_rate_sorter.rb +16 -0
  59. data/app/models/spree/stock_item.rb +19 -15
  60. data/app/models/spree/stock_location.rb +2 -12
  61. data/app/models/spree/stock_transfer.rb +3 -3
  62. data/app/models/spree/store_credit.rb +2 -2
  63. data/app/models/spree/tax_category.rb +3 -2
  64. data/app/models/spree/tax_rate.rb +7 -14
  65. data/app/models/spree/taxon.rb +4 -1
  66. data/app/models/spree/taxonomy.rb +1 -1
  67. data/app/models/spree/transfer_item.rb +2 -2
  68. data/app/models/spree/unit_cancel.rb +2 -0
  69. data/app/models/spree/variant.rb +9 -14
  70. data/app/models/spree/zone.rb +6 -0
  71. data/app/models/spree/zone_member.rb +1 -4
  72. data/app/views/spree/order_mailer/cancel_email.text.erb +0 -0
  73. data/config/locales/en.yml +7 -5
  74. data/db/default/spree/countries.rb +1 -1
  75. data/db/default/spree/zones.rb +5 -11
  76. data/db/migrate/20130213191427_create_default_stock.rb +1 -1
  77. data/db/migrate/20130306181701_add_address_fields_to_stock_location.rb +1 -1
  78. data/db/migrate/20140309033438_create_store_from_preferences.rb +5 -2
  79. data/db/migrate/20141009204607_add_store_id_to_orders.rb +6 -2
  80. data/db/migrate/20141215235502_remove_extra_products_slug_index.rb +5 -0
  81. data/db/migrate/20141217215630_update_product_slug_index.rb +6 -0
  82. data/db/migrate/20150225205344_move_promotion_code_to_promotion_code_value.rb +2 -2
  83. data/db/migrate/20150609093816_increase_scale_on_pre_tax_amounts.rb +10 -0
  84. data/db/migrate/20151117063249_convert_habtm_to_hmt_for_properties_prototypes.rb +17 -0
  85. data/db/migrate/20151124062500_convert_habtm_to_hmt_for_option_type_prototypes.rb +17 -0
  86. data/db/migrate/20151126063028_convert_habtm_to_hmt_for_taxons_promotion_rules.rb +15 -0
  87. data/db/migrate/20151219020209_add_stock_item_unique_index.rb +9 -0
  88. data/lib/generators/spree/dummy/dummy_generator.rb +1 -1
  89. data/lib/generators/spree/dummy/templates/rails/database.yml +1 -1
  90. data/lib/generators/spree/install/templates/config/initializers/spree.rb +25 -1
  91. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/backend/all.js +3 -0
  92. data/lib/generators/spree/install/templates/vendor/assets/javascripts/spree/frontend/all.js +3 -0
  93. data/lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/backend/all.css +3 -0
  94. data/lib/generators/spree/install/templates/vendor/assets/stylesheets/spree/frontend/all.css +3 -0
  95. data/lib/spree/core/controller_helpers/common.rb +1 -1
  96. data/lib/spree/core/controller_helpers/order.rb +1 -1
  97. data/lib/spree/core/controller_helpers/payment_parameters.rb +104 -5
  98. data/lib/spree/core/engine.rb +3 -2
  99. data/lib/spree/core/stock_configuration.rb +11 -0
  100. data/lib/spree/core/unreturned_item_charger.rb +4 -4
  101. data/lib/spree/core/version.rb +9 -1
  102. data/lib/spree/permission_sets/restricted_stock_transfer_management.rb +15 -24
  103. data/lib/spree/permitted_attributes.rb +3 -1
  104. data/lib/spree/testing_support/capybara_ext.rb +14 -40
  105. data/lib/spree/testing_support/factories.rb +0 -15
  106. data/lib/spree/testing_support/factories/address_factory.rb +3 -0
  107. data/lib/spree/testing_support/factories/adjustment_factory.rb +9 -1
  108. data/lib/spree/testing_support/factories/carton_factory.rb +4 -1
  109. data/lib/spree/testing_support/factories/customer_return_factory.rb +4 -0
  110. data/lib/spree/testing_support/factories/inventory_unit_factory.rb +5 -0
  111. data/lib/spree/testing_support/factories/line_item_factory.rb +3 -0
  112. data/lib/spree/testing_support/factories/option_type_factory.rb +6 -0
  113. data/lib/spree/testing_support/factories/{options_factory.rb → option_value_factory.rb} +0 -5
  114. data/lib/spree/testing_support/factories/order_factory.rb +13 -3
  115. data/lib/spree/testing_support/factories/order_promotion_factory.rb +3 -0
  116. data/lib/spree/testing_support/factories/payment_factory.rb +13 -5
  117. data/lib/spree/testing_support/factories/price_factory.rb +2 -0
  118. data/lib/spree/testing_support/factories/product_factory.rb +7 -1
  119. data/lib/spree/testing_support/factories/product_option_type_factory.rb +3 -0
  120. data/lib/spree/testing_support/factories/product_property_factory.rb +3 -0
  121. data/lib/spree/testing_support/factories/promotion_code_factory.rb +3 -0
  122. data/lib/spree/testing_support/factories/promotion_factory.rb +3 -0
  123. data/lib/spree/testing_support/factories/prototype_factory.rb +2 -0
  124. data/lib/spree/testing_support/factories/refund_factory.rb +10 -5
  125. data/lib/spree/testing_support/factories/refund_reason_factory.rb +5 -0
  126. data/lib/spree/testing_support/factories/reimbursement_factory.rb +2 -0
  127. data/lib/spree/testing_support/factories/return_authorization_factory.rb +4 -4
  128. data/lib/spree/testing_support/factories/return_item_factory.rb +4 -0
  129. data/lib/spree/testing_support/factories/return_reason_factory.rb +5 -0
  130. data/lib/spree/testing_support/factories/shipment_factory.rb +6 -1
  131. data/lib/spree/testing_support/factories/shipping_method_factory.rb +22 -10
  132. data/lib/spree/testing_support/factories/shipping_rate_factory.rb +9 -0
  133. data/lib/spree/testing_support/factories/state_factory.rb +2 -0
  134. data/lib/spree/testing_support/factories/stock_item_factory.rb +4 -1
  135. data/lib/spree/testing_support/factories/stock_location_factory.rb +8 -0
  136. data/lib/spree/testing_support/factories/stock_movement_factory.rb +2 -0
  137. data/lib/spree/testing_support/factories/{stock_factory.rb → stock_package_factory.rb} +5 -10
  138. data/lib/spree/testing_support/factories/stock_packer_factory.rb +13 -0
  139. data/lib/spree/testing_support/factories/stock_transfer_factory.rb +2 -2
  140. data/lib/spree/testing_support/factories/store_credit_event_factory.rb +4 -1
  141. data/lib/spree/testing_support/factories/store_credit_factory.rb +10 -6
  142. data/lib/spree/testing_support/factories/tax_category_factory.rb +2 -0
  143. data/lib/spree/testing_support/factories/tax_rate_factory.rb +4 -0
  144. data/lib/spree/testing_support/factories/taxon_factory.rb +2 -0
  145. data/lib/spree/testing_support/factories/user_factory.rb +6 -2
  146. data/lib/spree/testing_support/factories/variant_factory.rb +5 -0
  147. data/lib/spree/testing_support/factories/variant_property_rule_condition_factory.rb +3 -0
  148. data/lib/spree/testing_support/factories/variant_property_rule_factory.rb +4 -0
  149. data/lib/spree/testing_support/factories/variant_property_rule_value_factory.rb +3 -0
  150. data/lib/spree/testing_support/factories/zone_factory.rb +6 -0
  151. data/lib/spree/testing_support/sequences.rb +9 -0
  152. data/lib/tasks/exchanges.rake +4 -3
  153. data/lib/tasks/migrations/copy_shipped_shipments_to_cartons.rake +2 -2
  154. data/solidus_core.gemspec +4 -5
  155. data/spec/helpers/base_helper_spec.rb +6 -6
  156. data/spec/helpers/order_helper_spec.rb +1 -1
  157. data/spec/helpers/products_helper_spec.rb +2 -2
  158. data/spec/helpers/taxons_helper_spec.rb +1 -1
  159. data/spec/lib/spree/core/controller_helpers/payment_parameters_spec.rb +107 -7
  160. data/spec/lib/spree/core/importer/order_spec.rb +1 -1
  161. data/spec/lib/spree/core/stock_configuration_spec.rb +16 -0
  162. data/spec/lib/spree/core/testing_support/factories/address_factory_spec.rb +24 -0
  163. data/spec/lib/spree/core/testing_support/factories/adjustment_factory_spec.rb +18 -0
  164. data/spec/lib/spree/core/testing_support/factories/adjustment_reason_factory_spec.rb +12 -0
  165. data/spec/lib/spree/core/testing_support/factories/calculator_factory_spec.rb +42 -0
  166. data/spec/lib/spree/core/testing_support/factories/carton_factory_spec.rb +12 -0
  167. data/spec/lib/spree/core/testing_support/factories/country_factory_spec.rb +12 -0
  168. data/spec/lib/spree/core/testing_support/factories/credit_card_factory_spec.rb +12 -0
  169. data/spec/lib/spree/core/testing_support/factories/customer_return_factory_spec.rb +28 -0
  170. data/spec/lib/spree/core/testing_support/factories/image_factory_spec.rb +12 -0
  171. data/spec/lib/spree/core/testing_support/factories/inventory_unit_factory_spec.rb +12 -0
  172. data/spec/lib/spree/core/testing_support/factories/line_item_factory_spec.rb +12 -0
  173. data/spec/lib/spree/core/testing_support/factories/option_type_factory_spec.rb +12 -0
  174. data/spec/lib/spree/core/testing_support/factories/option_value_factory_spec.rb +12 -0
  175. data/spec/lib/spree/core/testing_support/factories/order_factory_spec.rb +49 -0
  176. data/spec/lib/spree/core/testing_support/factories/order_promotion_factory_spec.rb +12 -0
  177. data/spec/lib/spree/core/testing_support/factories/payment_factory_spec.rb +24 -0
  178. data/spec/lib/spree/core/testing_support/factories/payment_method_factory_spec.rb +30 -0
  179. data/spec/lib/spree/core/testing_support/factories/price_factory_spec.rb +12 -0
  180. data/spec/lib/spree/core/testing_support/factories/product_factory_spec.rb +30 -0
  181. data/spec/lib/spree/core/testing_support/factories/product_option_type_factory_spec.rb +12 -0
  182. data/spec/lib/spree/core/testing_support/factories/product_property_factory_spec.rb +12 -0
  183. data/spec/lib/spree/core/testing_support/factories/promotion_category_factory_spec.rb +12 -0
  184. data/spec/lib/spree/core/testing_support/factories/promotion_code_factory_spec.rb +12 -0
  185. data/spec/lib/spree/core/testing_support/factories/promotion_factory_spec.rb +30 -0
  186. data/spec/lib/spree/core/testing_support/factories/property_factory_spec.rb +12 -0
  187. data/spec/lib/spree/core/testing_support/factories/prototype_factory_spec.rb +12 -0
  188. data/spec/lib/spree/core/testing_support/factories/refund_factory_spec.rb +12 -0
  189. data/spec/lib/spree/core/testing_support/factories/refund_reason_factory_spec.rb +12 -0
  190. data/spec/lib/spree/core/testing_support/factories/reimbursement_factory_spec.rb +12 -0
  191. data/spec/lib/spree/core/testing_support/factories/reimbursement_type_factory_spec.rb +12 -0
  192. data/spec/lib/spree/core/testing_support/factories/return_authorization_factory_spec.rb +12 -0
  193. data/spec/lib/spree/core/testing_support/factories/return_item_factory_spec.rb +18 -0
  194. data/spec/lib/spree/core/testing_support/factories/return_reason_factory_spec.rb +12 -0
  195. data/spec/lib/spree/core/testing_support/factories/role_factory_spec.rb +18 -0
  196. data/spec/lib/spree/core/testing_support/factories/shipment_factory_spec.rb +12 -0
  197. data/spec/lib/spree/core/testing_support/factories/shipping_category_factory_spec.rb +12 -0
  198. data/spec/lib/spree/core/testing_support/factories/shipping_method_factory_spec.rb +28 -0
  199. data/spec/lib/spree/core/testing_support/factories/shipping_rate_factory_spec.rb +12 -0
  200. data/spec/lib/spree/core/testing_support/factories/state_factory_spec.rb +12 -0
  201. data/spec/lib/spree/core/testing_support/factories/stock_item_factory_spec.rb +12 -0
  202. data/spec/lib/spree/core/testing_support/factories/stock_location_factory_spec.rb +24 -0
  203. data/spec/lib/spree/core/testing_support/factories/stock_movement_factory_spec.rb +12 -0
  204. data/spec/lib/spree/core/testing_support/factories/stock_package_factory_spec.rb +26 -0
  205. data/spec/lib/spree/core/testing_support/factories/stock_packer_factory_spec.rb +16 -0
  206. data/spec/lib/spree/core/testing_support/factories/stock_transfer_factory_spec.rb +12 -0
  207. data/spec/lib/spree/core/testing_support/factories/store_credit_category_factory_spec.rb +12 -0
  208. data/spec/lib/spree/core/testing_support/factories/store_credit_event_factory_spec.rb +42 -0
  209. data/spec/lib/spree/core/testing_support/factories/store_credit_factory_spec.rb +12 -0
  210. data/spec/lib/spree/core/testing_support/factories/store_credit_type_factory_spec.rb +18 -0
  211. data/spec/lib/spree/core/testing_support/factories/store_credit_update_reason_factory_spec.rb +12 -0
  212. data/spec/lib/spree/core/testing_support/factories/store_factory_spec.rb +12 -0
  213. data/spec/lib/spree/core/testing_support/factories/tax_category_factory_spec.rb +12 -0
  214. data/spec/lib/spree/core/testing_support/factories/tax_rate_factory_spec.rb +12 -0
  215. data/spec/lib/spree/core/testing_support/factories/taxon_factory_spec.rb +12 -0
  216. data/spec/lib/spree/core/testing_support/factories/taxonomy_factory_spec.rb +12 -0
  217. data/spec/lib/spree/core/testing_support/factories/tracker_factory_spec.rb +12 -0
  218. data/spec/lib/spree/core/testing_support/factories/user_factory_spec.rb +22 -0
  219. data/spec/lib/spree/core/testing_support/factories/variant_factory_spec.rb +36 -0
  220. data/spec/lib/spree/core/testing_support/factories/variant_property_rule_condition_factory_spec.rb +12 -0
  221. data/spec/lib/spree/core/testing_support/factories/variant_property_rule_factory_spec.rb +12 -0
  222. data/spec/lib/spree/core/testing_support/factories/variant_property_rule_value_factory_spec.rb +12 -0
  223. data/spec/lib/spree/core/testing_support/factories/zone_factory_spec.rb +18 -0
  224. data/spec/lib/spree/core/unreturned_item_charger_spec.rb +1 -1
  225. data/spec/lib/spree/core/version_spec.rb +17 -0
  226. data/spec/lib/spree/money_spec.rb +1 -1
  227. data/spec/mailers/carton_mailer_spec.rb +1 -1
  228. data/spec/mailers/order_mailer_spec.rb +1 -1
  229. data/spec/mailers/reimbursement_mailer_spec.rb +1 -3
  230. data/spec/mailers/test_mailer_spec.rb +1 -3
  231. data/spec/models/spree/address_spec.rb +4 -4
  232. data/spec/models/spree/adjustment_reason_spec.rb +1 -3
  233. data/spec/models/spree/app_configuration_spec.rb +4 -0
  234. data/spec/models/spree/calculator/price_sack_spec.rb +3 -3
  235. data/spec/models/spree/calculator/shipping/price_sack_spec.rb +3 -3
  236. data/spec/models/spree/calculator/tiered_percent_spec.rb +86 -10
  237. data/spec/models/spree/carton_spec.rb +3 -1
  238. data/spec/models/spree/classification_spec.rb +3 -3
  239. data/spec/models/spree/credit_card_spec.rb +16 -16
  240. data/spec/models/spree/customer_return_spec.rb +1 -1
  241. data/spec/models/spree/gateway/bogus_simple.rb +1 -1
  242. data/spec/models/spree/inventory_unit_spec.rb +3 -3
  243. data/spec/models/spree/item_adjustments_spec.rb +1 -1
  244. data/spec/models/spree/line_item_spec.rb +2 -2
  245. data/spec/models/spree/option_type_spec.rb +2 -2
  246. data/spec/models/spree/option_value_spec.rb +2 -2
  247. data/spec/models/spree/order/callbacks_spec.rb +1 -1
  248. data/spec/models/spree/order/checkout_spec.rb +16 -11
  249. data/spec/models/spree/order/payment_spec.rb +24 -22
  250. data/spec/models/spree/order/state_machine_spec.rb +1 -1
  251. data/spec/models/spree/order/validations_spec.rb +1 -1
  252. data/spec/models/spree/order_cancellations_spec.rb +63 -0
  253. data/spec/models/spree/order_contents_spec.rb +1 -1
  254. data/spec/models/spree/order_merger_spec.rb +133 -0
  255. data/spec/models/spree/order_spec.rb +39 -159
  256. data/spec/models/spree/order_update_attributes_spec.rb +82 -0
  257. data/spec/models/spree/order_updater_spec.rb +6 -4
  258. data/spec/models/spree/payment_create_spec.rb +131 -0
  259. data/spec/models/spree/payment_spec.rb +130 -48
  260. data/spec/models/spree/permission_sets/restricted_stock_transfer_management_spec.rb +91 -33
  261. data/spec/models/spree/product_filter_spec.rb +3 -3
  262. data/spec/models/spree/product_spec.rb +80 -26
  263. data/spec/models/spree/promotion/actions/create_adjustment_spec.rb +1 -1
  264. data/spec/models/spree/promotion/actions/create_item_adjustments_spec.rb +2 -2
  265. data/spec/models/spree/promotion/rules/nth_order_spec.rb +1 -1
  266. data/spec/models/spree/promotion/rules/user_spec.rb +2 -2
  267. data/spec/models/spree/promotion_handler/coupon_spec.rb +2 -2
  268. data/spec/models/spree/promotion_spec.rb +18 -18
  269. data/spec/models/spree/reimbursement_spec.rb +22 -0
  270. data/spec/models/spree/return_item_spec.rb +2 -2
  271. data/spec/models/spree/shipment_spec.rb +28 -12
  272. data/spec/models/spree/shipping_method_spec.rb +2 -2
  273. data/spec/models/spree/shipping_rate_spec.rb +3 -3
  274. data/spec/models/spree/stock/coordinator_spec.rb +5 -0
  275. data/spec/models/spree/stock/estimator_spec.rb +35 -1
  276. data/spec/models/spree/stock/package_spec.rb +1 -1
  277. data/spec/models/spree/stock/packer_spec.rb +2 -3
  278. data/spec/models/spree/stock/shipping_rate_selector_spec.rb +16 -0
  279. data/spec/models/spree/stock/shipping_rate_sorter_spec.rb +16 -0
  280. data/spec/models/spree/stock_item_spec.rb +5 -7
  281. data/spec/models/spree/stock_location_spec.rb +5 -9
  282. data/spec/models/spree/stock_transfer_spec.rb +33 -13
  283. data/spec/models/spree/store_credit_event_spec.rb +1 -1
  284. data/spec/models/spree/store_credit_spec.rb +1 -1
  285. data/spec/models/spree/tax_rate_spec.rb +381 -120
  286. data/spec/models/spree/taxon_spec.rb +3 -3
  287. data/spec/models/spree/transfer_item_spec.rb +4 -4
  288. data/spec/models/spree/unit_cancel_spec.rb +1 -1
  289. data/spec/models/spree/variant_spec.rb +3 -3
  290. data/spec/models/spree/zone_spec.rb +35 -1
  291. data/spec/support/concerns/working_factories.rb +9 -0
  292. data/vendor/assets/javascripts/jquery-migrate-1.0.0.js +498 -0
  293. data/vendor/assets/javascripts/jquery.payment.js +231 -80
  294. metadata +103 -27
  295. data/app/models/spree/order/currency_updater.rb +0 -40
  296. data/spec/models/spree/order/currency_updater_spec.rb +0 -32
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_item_factory'
3
+
4
+ RSpec.describe 'stock item factory' do
5
+ let(:factory_class) { Spree::StockItem }
6
+
7
+ describe 'plain stock item' do
8
+ let(:factory) { :stock_item }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_location_factory'
3
+
4
+ RSpec.describe 'stock location factory' do
5
+ let(:factory_class) { Spree::StockLocation }
6
+
7
+ describe 'plain stock location' do
8
+ let(:factory) { :stock_location }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+
13
+ describe 'stock location without variant propagation' do
14
+ let(:factory) { :stock_location_without_variant_propagation }
15
+
16
+ it_behaves_like 'a working factory'
17
+ end
18
+
19
+ describe 'stock location with items' do
20
+ let(:factory) { :stock_location_with_items }
21
+
22
+ it_behaves_like 'a working factory'
23
+ end
24
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_movement_factory'
3
+
4
+ RSpec.describe 'stock movement factory' do
5
+ let(:factory_class) { Spree::StockMovement }
6
+
7
+ describe 'plain stock movement' do
8
+ let(:factory) { :stock_movement }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_package_factory'
3
+
4
+ RSpec.describe 'stock package factory' do
5
+ let(:factory_class) { Spree::Stock::Package }
6
+
7
+ describe 'plain stock package' do
8
+ let(:factory) { :stock_package }
9
+
10
+ it "builds successfully" do
11
+ expect(build factory).to be_a(factory_class)
12
+ end
13
+
14
+ # No test for .create, as it's a PORO
15
+ end
16
+
17
+ describe 'fulfilled stock package' do
18
+ let(:factory) { :stock_package_fulfilled }
19
+
20
+ it "builds successfully" do
21
+ expect(build factory).to be_a(factory_class)
22
+ end
23
+
24
+ # No test for .create, as it's a PORO
25
+ end
26
+ end
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_packer_factory'
3
+
4
+ RSpec.describe 'stock packer factory' do
5
+ let(:factory_class) { Spree::Stock::Packer }
6
+
7
+ describe 'plain stock packer' do
8
+ let(:factory) { :stock_packer }
9
+
10
+ it "builds successfully" do
11
+ expect(build factory).to be_a(factory_class)
12
+ end
13
+
14
+ # No test for .create, as it's a PORO
15
+ end
16
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/stock_transfer_factory'
3
+
4
+ RSpec.describe 'stock transfer factory' do
5
+ let(:factory_class) { Spree::StockTransfer }
6
+
7
+ describe 'plain stock transfer' do
8
+ let(:factory) { :stock_transfer }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_credit_category_factory'
3
+
4
+ RSpec.describe 'store credit category factory' do
5
+ let(:factory_class) { Spree::StoreCreditCategory }
6
+
7
+ describe 'plain store credi category' do
8
+ let(:factory) { :store_credit_category }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,42 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_credit_event_factory'
3
+
4
+ RSpec.describe 'store credit event factory' do
5
+ let(:factory_class) { Spree::StoreCreditEvent }
6
+
7
+ describe 'plain store credit event' do
8
+ let(:factory) { :store_credit_event }
9
+
10
+
11
+ it "builds successfully" do
12
+ expect(build factory).to be_a(factory_class)
13
+ end
14
+
15
+ # No test for .create, as this base factory misses an `action`
16
+ # and thus violates a NOT NULL constraint on e the DB
17
+ end
18
+
19
+ describe 'store credit auth event' do
20
+ let(:factory) { :store_credit_auth_event }
21
+
22
+ it_behaves_like 'a working factory'
23
+ end
24
+
25
+ describe 'store credit capture event' do
26
+ let(:factory) { :store_credit_capture_event }
27
+
28
+ it_behaves_like 'a working factory'
29
+ end
30
+
31
+ describe 'store credit adjustment event' do
32
+ let(:factory) { :store_credit_adjustment_event }
33
+
34
+ it_behaves_like 'a working factory'
35
+ end
36
+
37
+ describe 'store credit invalidate event' do
38
+ let(:factory) { :store_credit_invalidate_event }
39
+
40
+ it_behaves_like 'a working factory'
41
+ end
42
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_credit_factory'
3
+
4
+ RSpec.describe 'store credit factory' do
5
+ let(:factory_class) { Spree::StoreCredit }
6
+
7
+ describe 'plain store credit' do
8
+ let(:factory) { :store_credit }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_credit_type_factory'
3
+
4
+ RSpec.describe 'store credit type factory' do
5
+ let(:factory_class) { Spree::StoreCreditType }
6
+
7
+ describe 'primary credit type' do
8
+ let(:factory) { :primary_credit_type }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+
13
+ describe 'secondary credit type' do
14
+ let(:factory) { :secondary_credit_type }
15
+
16
+ it_behaves_like 'a working factory'
17
+ end
18
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_credit_update_reason_factory'
3
+
4
+ RSpec.describe 'store credit update reason factory' do
5
+ let(:factory_class) { Spree::StoreCreditUpdateReason }
6
+
7
+ describe 'store credit update reason' do
8
+ let(:factory) { :store_credit_update_reason }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/store_factory'
3
+
4
+ RSpec.describe 'store factory' do
5
+ let(:factory_class) { Spree::Store }
6
+
7
+ describe 'store' do
8
+ let(:factory) { :store }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/tax_category_factory'
3
+
4
+ RSpec.describe 'tax category factory' do
5
+ let(:factory_class) { Spree::TaxCategory }
6
+
7
+ describe 'tax category' do
8
+ let(:factory) { :tax_category }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/tax_rate_factory'
3
+
4
+ RSpec.describe 'tax rate factory' do
5
+ let(:factory_class) { Spree::TaxRate }
6
+
7
+ describe 'tax rate' do
8
+ let(:factory) { :tax_rate }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/taxon_factory'
3
+
4
+ RSpec.describe 'taxon factory' do
5
+ let(:factory_class) { Spree::Taxon }
6
+
7
+ describe 'taxon' do
8
+ let(:factory) { :taxon }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/taxonomy_factory'
3
+
4
+ RSpec.describe 'taxonomy factory' do
5
+ let(:factory_class) { Spree::Taxonomy }
6
+
7
+ describe 'taxonomy' do
8
+ let(:factory) { :taxonomy }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/tracker_factory'
3
+
4
+ RSpec.describe 'tracker factory' do
5
+ let(:factory_class) { Spree::Tracker }
6
+
7
+ describe 'tracker' do
8
+ let(:factory) { :tracker }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/user_factory'
3
+
4
+ RSpec.describe 'user factory' do
5
+ let(:factory_class) { Spree.user_class }
6
+
7
+ describe 'user' do
8
+ let(:factory) { :user }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ describe 'admin user' do
13
+ let(:factory) { :admin_user }
14
+
15
+ it_behaves_like 'a working factory'
16
+ end
17
+ describe 'user with addresses' do
18
+ let(:factory) { :user_with_addresses }
19
+
20
+ it_behaves_like 'a working factory'
21
+ end
22
+ end
@@ -0,0 +1,36 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/variant_factory'
3
+
4
+ RSpec.describe 'variant factory' do
5
+ let(:factory_class) { Spree::Variant }
6
+
7
+ describe 'base variant' do
8
+ let(:factory) { :base_variant }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+
13
+ describe 'variant' do
14
+ let(:factory) { :variant }
15
+
16
+ it_behaves_like 'a working factory'
17
+ end
18
+
19
+ describe 'master variant' do
20
+ let(:factory) { :master_variant }
21
+
22
+ it_behaves_like 'a working factory'
23
+ end
24
+
25
+ describe 'on demand variant' do
26
+ let(:factory) { :on_demand_variant }
27
+
28
+ it_behaves_like 'a working factory'
29
+ end
30
+
31
+ describe 'on demand master variant' do
32
+ let(:factory) { :on_demand_master_variant }
33
+
34
+ it_behaves_like 'a working factory'
35
+ end
36
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/variant_property_rule_condition_factory'
3
+
4
+ RSpec.describe 'variant property rule condition factory' do
5
+ let(:factory_class) { Spree::VariantPropertyRuleCondition }
6
+
7
+ describe 'variant property rule condition' do
8
+ let(:factory) { :variant_property_rule_condition }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/variant_property_rule_factory'
3
+
4
+ RSpec.describe 'variant property rule factory' do
5
+ let(:factory_class) { Spree::VariantPropertyRule }
6
+
7
+ describe 'variant property rule' do
8
+ let(:factory) { :variant_property_rule }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/variant_property_rule_value_factory'
3
+
4
+ RSpec.describe 'variant property rule value factory' do
5
+ let(:factory_class) { Spree::VariantPropertyRuleValue }
6
+
7
+ describe 'variant property rule value' do
8
+ let(:factory) { :variant_property_rule_value }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+ end
@@ -0,0 +1,18 @@
1
+ require 'spec_helper'
2
+ require 'spree/testing_support/factories/zone_factory'
3
+
4
+ RSpec.describe 'zone factory' do
5
+ let(:factory_class) { Spree::Zone }
6
+
7
+ describe 'zone' do
8
+ let(:factory) { :zone }
9
+
10
+ it_behaves_like 'a working factory'
11
+ end
12
+
13
+ describe 'global zone' do
14
+ let(:factory) { :global_zone }
15
+
16
+ it_behaves_like 'a working factory'
17
+ end
18
+ end
@@ -43,7 +43,7 @@ describe Spree::UnreturnedItemCharger do
43
43
  end
44
44
 
45
45
  context 'in tax zone' do
46
- let!(:tax_zone) { Spree::Zone.global }
46
+ let!(:tax_zone) { Spree::Zone.find_by(name: 'GlobalZone') || FactoryGirl.create(:global_zone) }
47
47
  let!(:tax_rate) { create(:tax_rate, zone: tax_zone, tax_category: original_variant.tax_category) }
48
48
  before { tax_zone.update_attributes!(default_tax: true) }
49
49
 
@@ -0,0 +1,17 @@
1
+ describe Spree do
2
+ describe '.solidus_version' do
3
+ it "returns a string" do
4
+ expect(Spree.solidus_version).to be_a(String)
5
+ end
6
+ end
7
+
8
+ describe '.solidus_gem_version' do
9
+ it "returns a Gem::Version" do
10
+ expect(Spree.solidus_gem_version).to be_a(Gem::Version)
11
+ end
12
+
13
+ it "can be compared" do
14
+ expect(Spree.solidus_gem_version).to be > Gem::Version.new("1.0")
15
+ end
16
+ end
17
+ end