solidus_core 2.0.3 → 2.1.0.beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +62 -3
  3. data/app/assets/javascripts/spree.js.coffee.erb +4 -1
  4. data/app/helpers/spree/base_helper.rb +7 -48
  5. data/app/models/spree/address.rb +5 -1
  6. data/app/models/spree/adjustment.rb +3 -3
  7. data/app/models/spree/app_configuration.rb +13 -0
  8. data/app/models/spree/calculator.rb +3 -2
  9. data/app/models/spree/calculator/default_tax.rb +6 -10
  10. data/app/models/spree/calculator/flat_percent_item_total.rb +0 -4
  11. data/app/models/spree/calculator/flat_rate.rb +0 -4
  12. data/app/models/spree/calculator/flexi_rate.rb +0 -4
  13. data/app/models/spree/calculator/free_shipping.rb +0 -3
  14. data/app/models/spree/calculator/percent_on_line_item.rb +0 -4
  15. data/app/models/spree/calculator/percent_per_item.rb +0 -4
  16. data/app/models/spree/calculator/price_sack.rb +0 -4
  17. data/app/models/spree/calculator/returns/default_refund_amount.rb +0 -3
  18. data/app/models/spree/calculator/shipping/flat_percent_item_total.rb +0 -4
  19. data/app/models/spree/calculator/shipping/flat_rate.rb +0 -4
  20. data/app/models/spree/calculator/shipping/flexi_rate.rb +0 -4
  21. data/app/models/spree/calculator/shipping/per_item.rb +0 -4
  22. data/app/models/spree/calculator/shipping/price_sack.rb +0 -4
  23. data/app/models/spree/calculator/tiered_flat_rate.rb +0 -4
  24. data/app/models/spree/calculator/tiered_percent.rb +0 -4
  25. data/app/models/spree/credit_card.rb +27 -14
  26. data/app/models/spree/gateway.rb +4 -0
  27. data/app/models/spree/inventory_unit.rb +2 -0
  28. data/app/models/spree/line_item.rb +31 -26
  29. data/app/models/spree/option_type.rb +0 -3
  30. data/app/models/spree/order.rb +28 -31
  31. data/app/models/spree/order/checkout.rb +0 -2
  32. data/app/models/spree/order_contents.rb +0 -45
  33. data/app/models/spree/order_merger.rb +6 -6
  34. data/app/models/spree/order_update_attributes.rb +0 -2
  35. data/app/models/spree/order_updater.rb +91 -13
  36. data/app/models/spree/payment.rb +9 -2
  37. data/app/models/spree/payment/processing.rb +15 -9
  38. data/app/models/spree/payment_method.rb +48 -5
  39. data/app/models/spree/price.rb +7 -9
  40. data/app/models/spree/product.rb +1 -25
  41. data/app/models/spree/promotion.rb +22 -14
  42. data/app/models/spree/promotion/actions/create_adjustment.rb +12 -1
  43. data/app/models/spree/promotion/actions/create_item_adjustments.rb +15 -1
  44. data/app/models/spree/promotion/actions/create_quantity_adjustments.rb +5 -3
  45. data/app/models/spree/promotion/actions/free_shipping.rb +14 -0
  46. data/app/models/spree/promotion/rules/taxon.rb +7 -2
  47. data/app/models/spree/promotion/rules/user_role.rb +43 -0
  48. data/app/models/spree/promotion_action.rb +19 -2
  49. data/app/models/spree/promotion_handler/coupon.rb +1 -4
  50. data/app/models/spree/promotion_handler/free_shipping.rb +22 -17
  51. data/app/models/spree/promotion_rule_role.rb +6 -0
  52. data/app/models/spree/property.rb +0 -3
  53. data/app/models/spree/return_authorization.rb +2 -0
  54. data/app/models/spree/shipment.rb +5 -21
  55. data/app/models/spree/shipping_method.rb +23 -2
  56. data/app/models/spree/shipping_rate.rb +3 -0
  57. data/app/models/spree/stock/estimator.rb +1 -1
  58. data/app/models/spree/stock_location.rb +3 -0
  59. data/app/models/spree/store.rb +7 -0
  60. data/app/models/spree/tax/item_adjuster.rb +27 -12
  61. data/app/models/spree/tax/order_adjuster.rb +2 -5
  62. data/app/models/spree/tax/tax_helpers.rb +4 -8
  63. data/app/models/spree/tax_rate.rb +1 -15
  64. data/app/models/spree/taxon.rb +0 -3
  65. data/app/models/spree/transfer_item.rb +1 -1
  66. data/app/models/spree/user_class_handle.rb +14 -9
  67. data/app/models/spree/variant/pricing_options.rb +1 -1
  68. data/app/models/spree/wallet/add_payment_sources_to_wallet.rb +1 -1
  69. data/app/models/spree/zone.rb +20 -13
  70. data/config/locales/en.yml +144 -62
  71. data/db/migrate/20120831092320_spree_one_two.rb +0 -7
  72. data/db/migrate/20150723224133_remove_unnecessary_indexes.rb +0 -2
  73. data/db/migrate/20160924135758_remove_is_default_from_prices.rb +5 -0
  74. data/db/migrate/20161009141333_remove_currency_from_line_items.rb +5 -0
  75. data/db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb +28 -0
  76. data/db/migrate/20161123154034_add_available_to_users_and_remove_display_on_from_shipping_methods.rb +20 -0
  77. data/lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt +4 -0
  78. data/lib/generators/spree/dummy/dummy_generator.rb +0 -2
  79. data/lib/spree/core.rb +0 -5
  80. data/lib/spree/core/controller_helpers/pricing.rb +2 -1
  81. data/lib/spree/core/engine.rb +14 -0
  82. data/lib/spree/core/version.rb +1 -1
  83. data/lib/spree/deprecation.rb +1 -1
  84. data/lib/spree/localized_number.rb +3 -2
  85. data/lib/spree/permission_sets/configuration_display.rb +0 -1
  86. data/lib/spree/permission_sets/configuration_management.rb +0 -1
  87. data/lib/spree/permission_sets/product_display.rb +0 -1
  88. data/lib/spree/permission_sets/product_management.rb +0 -1
  89. data/lib/spree/permission_sets/user_management.rb +2 -4
  90. data/lib/spree/permitted_attributes.rb +3 -2
  91. data/lib/spree/testing_support/capybara_ext.rb +0 -12
  92. data/lib/spree/testing_support/factories/address_factory.rb +1 -1
  93. data/lib/spree/testing_support/factories/line_item_factory.rb +0 -1
  94. data/lib/spree/testing_support/factories/payment_factory.rb +4 -0
  95. data/lib/spree/testing_support/factories/payment_method_factory.rb +8 -1
  96. data/lib/spree/testing_support/factories/user_factory.rb +2 -2
  97. data/solidus_core.gemspec +4 -3
  98. data/spec/helpers/base_helper_spec.rb +0 -40
  99. data/spec/lib/spree/core/controller_helpers/pricing_spec.rb +16 -0
  100. data/spec/lib/spree/core/importer/order_spec.rb +27 -18
  101. data/spec/lib/spree/core/price_migrator_spec.rb +3 -1
  102. data/spec/lib/spree/core/testing_support/factories/order_factory_spec.rb +16 -0
  103. data/spec/lib/spree/core/unreturned_item_charger_spec.rb +0 -2
  104. data/spec/lib/tasks/exchanges_spec.rb +4 -2
  105. data/spec/lib/tasks/migrations/create_vat_prices_spec.rb +5 -3
  106. data/spec/models/spree/adjustment_spec.rb +136 -0
  107. data/spec/models/spree/calculator/default_tax_spec.rb +13 -7
  108. data/spec/models/spree/calculator/flat_percent_item_total_spec.rb +3 -0
  109. data/spec/models/spree/calculator/flat_rate_spec.rb +3 -0
  110. data/spec/models/spree/calculator/flexi_rate_spec.rb +3 -0
  111. data/spec/models/spree/calculator/free_shipping_spec.rb +6 -0
  112. data/spec/models/spree/calculator/percent_on_line_item_spec.rb +9 -4
  113. data/spec/models/spree/calculator/percent_per_item_spec.rb +10 -0
  114. data/spec/models/spree/calculator/price_sack_spec.rb +3 -0
  115. data/spec/models/spree/calculator/refunds/default_refund_amount_spec.rb +3 -0
  116. data/spec/models/spree/calculator/shipping/flat_percent_item_total_spec.rb +3 -0
  117. data/spec/models/spree/calculator/shipping/flat_rate_spec.rb +3 -0
  118. data/spec/models/spree/calculator/shipping/flexi_rate_spec.rb +3 -0
  119. data/spec/models/spree/calculator/shipping/per_item_spec.rb +3 -0
  120. data/spec/models/spree/calculator/shipping/price_sack_spec.rb +4 -1
  121. data/spec/models/spree/calculator/tiered_flat_rate_spec.rb +3 -0
  122. data/spec/models/spree/calculator/tiered_percent_spec.rb +3 -0
  123. data/spec/models/spree/credit_card_spec.rb +27 -1
  124. data/spec/models/spree/line_item_spec.rb +58 -65
  125. data/spec/models/spree/order/checkout_spec.rb +2 -1
  126. data/spec/models/spree/order/payment_spec.rb +9 -10
  127. data/spec/models/spree/order/tax_spec.rb +22 -7
  128. data/spec/models/spree/order/updating_spec.rb +1 -3
  129. data/spec/models/spree/order_cancellations_spec.rb +6 -4
  130. data/spec/models/spree/order_contents_spec.rb +34 -50
  131. data/spec/models/spree/order_inventory_spec.rb +3 -5
  132. data/spec/models/spree/order_merger_spec.rb +20 -0
  133. data/spec/models/spree/order_spec.rb +28 -64
  134. data/spec/models/spree/order_update_attributes_spec.rb +1 -5
  135. data/spec/models/spree/order_updater_spec.rb +251 -0
  136. data/spec/models/spree/payment_method_spec.rb +178 -28
  137. data/spec/models/spree/payment_spec.rb +35 -19
  138. data/spec/models/spree/permission_sets/configuration_display.rb +0 -4
  139. data/spec/models/spree/permission_sets/configuration_management_spec.rb +0 -2
  140. data/spec/models/spree/permission_sets/product_display_spec.rb +0 -4
  141. data/spec/models/spree/permission_sets/product_management_spec.rb +0 -2
  142. data/spec/models/spree/permission_sets/user_management_spec.rb +9 -2
  143. data/spec/models/spree/price_spec.rb +16 -1
  144. data/spec/models/spree/product_spec.rb +0 -75
  145. data/spec/models/spree/promotion/actions/create_adjustment_spec.rb +20 -0
  146. data/spec/models/spree/promotion/actions/create_item_adjustments_spec.rb +39 -15
  147. data/spec/models/spree/promotion/actions/create_quantity_adjustments_spec.rb +203 -22
  148. data/spec/models/spree/promotion/actions/free_shipping_spec.rb +22 -3
  149. data/spec/models/spree/promotion/rules/taxon_spec.rb +26 -0
  150. data/spec/models/spree/promotion/rules/user_role_spec.rb +86 -0
  151. data/spec/models/spree/promotion_action_spec.rb +38 -0
  152. data/spec/models/spree/promotion_handler/coupon_spec.rb +36 -33
  153. data/spec/models/spree/promotion_handler/free_shipping_spec.rb +21 -22
  154. data/spec/models/spree/promotion_spec.rb +46 -6
  155. data/spec/models/spree/reimbursement_spec.rb +1 -1
  156. data/spec/models/spree/reimbursement_tax_calculator_spec.rb +2 -2
  157. data/spec/models/spree/shipment_spec.rb +68 -50
  158. data/spec/models/spree/shipping_method_spec.rb +41 -0
  159. data/spec/models/spree/shipping_rate_spec.rb +9 -3
  160. data/spec/models/spree/stock/estimator_spec.rb +4 -2
  161. data/spec/models/spree/store_credit_spec.rb +3 -3
  162. data/spec/models/spree/tax/item_adjuster_spec.rb +31 -21
  163. data/spec/models/spree/tax/order_adjuster_spec.rb +6 -10
  164. data/spec/models/spree/tax/taxation_integration_spec.rb +19 -0
  165. data/spec/models/spree/tax_rate_spec.rb +5 -26
  166. data/spec/models/spree/transfer_item_spec.rb +11 -0
  167. data/spec/models/spree/variant/pricing_options_spec.rb +7 -17
  168. data/spec/models/spree/variant_spec.rb +2 -4
  169. data/spec/models/spree/zone_spec.rb +60 -20
  170. data/spec/shared_examples/calculator_shared_examples.rb +8 -0
  171. metadata +19 -24
  172. data/app/models/spree/item_adjustments.rb +0 -89
  173. data/app/models/spree/option_type_prototype.rb +0 -6
  174. data/app/models/spree/property_prototype.rb +0 -6
  175. data/app/models/spree/prototype.rb +0 -14
  176. data/app/models/spree/prototype_taxon.rb +0 -6
  177. data/app/models/spree/tracker.rb +0 -8
  178. data/db/migrate/20150128032538_remove_environment_from_tracker.rb +0 -6
  179. data/lib/generators/spree/dummy/templates/initializers/custom_user.rb +0 -1
  180. data/lib/spree/core/delegate_belongs_to.rb +0 -94
  181. data/lib/spree/testing_support/factories/prototype_factory.rb +0 -8
  182. data/lib/spree/testing_support/factories/tracker_factory.rb +0 -6
  183. data/spec/lib/spree/core/delegate_belongs_to_spec.rb +0 -24
  184. data/spec/lib/spree/core/testing_support/factories/prototype_factory_spec.rb +0 -12
  185. data/spec/lib/spree/core/testing_support/factories/tracker_factory_spec.rb +0 -12
  186. data/spec/models/spree/item_adjustments_spec.rb +0 -306
  187. data/spec/models/spree/tracker_spec.rb +0 -21
@@ -104,7 +104,7 @@ describe Spree::TaxRate, type: :model do
104
104
  end
105
105
 
106
106
  context "when there is a default tax zone" do
107
- let(:default_zone) { create(:zone, :with_country, default_tax: true) }
107
+ let(:default_zone) { create(:zone, :with_country) }
108
108
  let(:included_in_price) { false }
109
109
  let!(:rate) do
110
110
  create(:tax_rate, zone: default_zone, included_in_price: included_in_price)
@@ -133,30 +133,6 @@ describe Spree::TaxRate, type: :model do
133
133
  end
134
134
  end
135
135
 
136
- context ".adjust" do
137
- let(:zone) { stub_model(Spree::Zone) }
138
-
139
- context "with line items" do
140
- let(:line_item) { stub_model(Spree::LineItem) }
141
-
142
- it 'should emit a deprecation warning and call the item adjuster' do
143
- expect(Spree::Deprecation).to receive(:warn)
144
- expect(Spree::Tax::ItemAdjuster).to receive_message_chain(:new, :adjust!)
145
- Spree::TaxRate.adjust(zone, [line_item])
146
- end
147
- end
148
-
149
- context "with shipments" do
150
- let(:shipment) { stub_model(Spree::Shipment) }
151
-
152
- it 'should emit a deprecation warning and call the item adjuster' do
153
- expect(Spree::Deprecation).to receive(:warn)
154
- expect(Spree::Tax::ItemAdjuster).to receive_message_chain(:new, :adjust!)
155
- Spree::TaxRate.adjust(zone, [shipment])
156
- end
157
- end
158
- end
159
-
160
136
  describe "#adjust" do
161
137
  let(:taxable_address) { create(:address) }
162
138
  let(:order) { create(:order_with_line_items, ship_address: order_address) }
@@ -176,7 +152,10 @@ describe Spree::TaxRate, type: :model do
176
152
 
177
153
  describe 'adjustments' do
178
154
  before do
179
- tax_rate.adjust(order.tax_zone, item)
155
+ # Please remove this silencing once we remove `Spree::Zone.default_tax`
156
+ Spree::Deprecation.silence do
157
+ tax_rate.adjust(nil, item)
158
+ end
180
159
  end
181
160
 
182
161
  let(:adjustment_label) { item.adjustments.tax.first.label }
@@ -261,4 +261,15 @@ describe Spree::TransferItem do
261
261
  end
262
262
  end
263
263
  end
264
+
265
+ describe "variant association" do
266
+ context "variant has been soft-deleted" do
267
+ before do
268
+ subject.variant.destroy
269
+ end
270
+ it "still returns the variant" do
271
+ expect(subject.variant).not_to be_nil
272
+ end
273
+ end
274
+ end
264
275
  end
@@ -23,7 +23,7 @@ describe Spree::Variant::PricingOptions do
23
23
  end
24
24
 
25
25
  context ".from_line_item" do
26
- let(:line_item) { build_stubbed(:line_item, currency: "USD") }
26
+ let(:line_item) { build_stubbed(:line_item) }
27
27
  subject { described_class.from_line_item(line_item) }
28
28
 
29
29
  it "returns the order's currency" do
@@ -34,29 +34,19 @@ describe Spree::Variant::PricingOptions do
34
34
  expect(subject.desired_attributes[:country_iso]).to eq("US")
35
35
  end
36
36
 
37
- context "if line item has no order" do
38
- before do
39
- expect(line_item).to receive(:order).at_least(:once).and_return(nil)
40
- end
41
-
42
- it "returns the line item's currency" do
43
- expect(subject.desired_attributes[:currency]).to eq("USD")
44
- end
45
- end
46
-
47
- context "if line item's order has no currency" do
37
+ context 'if order has no currency' do
48
38
  before do
49
- expect(line_item.order).to receive(:currency).and_return(nil)
39
+ expect(line_item.order).to receive(:currency).at_least(:once).and_return(nil)
40
+ expect(Spree::Config).to receive(:currency).at_least(:once).and_return("RUB")
50
41
  end
51
42
 
52
- it "returns the line item's currency" do
53
- expect(subject.desired_attributes[:currency]).to eq("USD")
43
+ it "returns the configured default currency" do
44
+ expect(subject.desired_attributes[:currency]).to eq("RUB")
54
45
  end
55
46
  end
56
47
 
57
- context "if neither order nor line item have a currency" do
48
+ context "if line item has no order" do
58
49
  before do
59
- expect(line_item).to receive(:currency).and_return(nil)
60
50
  expect(line_item).to receive(:order).at_least(:once).and_return(nil)
61
51
  expect(Spree::Config).to receive(:currency).at_least(:once).and_return("RUB")
62
52
  end
@@ -208,9 +208,7 @@ describe Spree::Variant, type: :model do
208
208
  let(:pricing_options_germany) { Spree::Config.pricing_options_class.new(currency: "EUR") }
209
209
  let(:pricing_options_united_states) { Spree::Config.pricing_options_class.new(currency: "USD") }
210
210
  before do
211
- variant.prices << create(:price, variant: variant, currency: "USD", amount: 12.12, is_default: false)
212
- variant.prices << create(:price, variant: variant, currency: "EUR", amount: 29.99)
213
- variant.prices << create(:price, variant: variant, currency: "EUR", amount: 10.00, is_default: false)
211
+ variant.prices.create(currency: "EUR", amount: 29.99)
214
212
  variant.reload
215
213
  end
216
214
 
@@ -227,7 +225,7 @@ describe Spree::Variant, type: :model do
227
225
  context "when adding multiple prices" do
228
226
  it "it can reassign a default price" do
229
227
  expect(variant.default_price.amount).to eq(19.99)
230
- variant.prices << create(:price, variant: variant, currency: "USD", amount: 12.12)
228
+ variant.prices.create(currency: "USD", amount: 12.12)
231
229
  expect(variant.reload.default_price.amount).to eq(12.12)
232
230
  end
233
231
  end
@@ -60,7 +60,9 @@ describe Spree::Zone, type: :model do
60
60
  let(:address) { create(:address, country: country, state: country.states.first) }
61
61
 
62
62
  it "should return the qualifying zone" do
63
- expect(Spree::Zone.match(address)).to eq(country_zone)
63
+ Spree::Deprecation.silence do
64
+ expect(Spree::Zone.match(address)).to eq(country_zone)
65
+ end
64
66
  end
65
67
  end
66
68
 
@@ -72,7 +74,9 @@ describe Spree::Zone, type: :model do
72
74
 
73
75
  context "when both zones have the same number of members" do
74
76
  it "should return the zone that was created first" do
75
- expect(Spree::Zone.match(address)).to eq(country_zone)
77
+ Spree::Deprecation.silence do
78
+ expect(Spree::Zone.match(address)).to eq(country_zone)
79
+ end
76
80
  end
77
81
  end
78
82
 
@@ -82,7 +86,9 @@ describe Spree::Zone, type: :model do
82
86
  before { country_zone.members.create(zoneable: country2) }
83
87
 
84
88
  it "should return the zone with fewer members" do
85
- expect(Spree::Zone.match(address)).to eq(second_zone)
89
+ Spree::Deprecation.silence do
90
+ expect(Spree::Zone.match(address)).to eq(second_zone)
91
+ end
86
92
  end
87
93
  end
88
94
  end
@@ -94,13 +100,17 @@ describe Spree::Zone, type: :model do
94
100
  before { state_zone.members.create(zoneable: country.states.first) }
95
101
 
96
102
  it "should return the zone with the more specific member type" do
97
- expect(Spree::Zone.match(address)).to eq(state_zone)
103
+ Spree::Deprecation.silence do
104
+ expect(Spree::Zone.match(address)).to eq(state_zone)
105
+ end
98
106
  end
99
107
  end
100
108
 
101
109
  context "when there are no qualifying zones" do
102
110
  it "should return nil" do
103
- expect(Spree::Zone.match(Spree::Address.new)).to be_nil
111
+ Spree::Deprecation.silence do
112
+ expect(Spree::Zone.match(Spree::Address.new)).to be_nil
113
+ end
104
114
  end
105
115
  end
106
116
  end
@@ -115,7 +125,9 @@ describe Spree::Zone, type: :model do
115
125
  before { country_zone.members.create(zoneable: country) }
116
126
 
117
127
  it 'should return a list of countries' do
118
- expect(country_zone.country_list).to eq([country])
128
+ Spree::Deprecation.silence do
129
+ expect(country_zone.country_list).to eq([country])
130
+ end
119
131
  end
120
132
  end
121
133
 
@@ -125,7 +137,9 @@ describe Spree::Zone, type: :model do
125
137
  before { state_zone.members.create(zoneable: state) }
126
138
 
127
139
  it 'should return a list of countries' do
128
- expect(state_zone.country_list).to eq([state.country])
140
+ Spree::Deprecation.silence do
141
+ expect(state_zone.country_list).to eq([state.country])
142
+ end
129
143
  end
130
144
  end
131
145
  end
@@ -160,7 +174,9 @@ describe Spree::Zone, type: :model do
160
174
 
161
175
  it "should be the correct zone" do
162
176
  create(:zone, name: 'foo')
163
- expect(Spree::Zone.default_tax).to eq(@foo_zone)
177
+ Spree::Deprecation.silence do
178
+ expect(Spree::Zone.default_tax).to eq(@foo_zone)
179
+ end
164
180
  end
165
181
  end
166
182
 
@@ -182,12 +198,16 @@ describe Spree::Zone, type: :model do
182
198
  end
183
199
 
184
200
  it "should contain itself" do
185
- expect(@source.contains?(@source)).to be true
201
+ Spree::Deprecation.silence do
202
+ expect(@source.contains?(@source)).to be true
203
+ end
186
204
  end
187
205
 
188
206
  context "when both source and target have no members" do
189
207
  it "should be false" do
190
- expect(@source.contains?(@target)).to be false
208
+ Spree::Deprecation.silence do
209
+ expect(@source.contains?(@target)).to be false
210
+ end
191
211
  end
192
212
  end
193
213
 
@@ -195,7 +215,9 @@ describe Spree::Zone, type: :model do
195
215
  before { @source.members.create(zoneable: country1) }
196
216
 
197
217
  it "should be false" do
198
- expect(@source.contains?(@target)).to be false
218
+ Spree::Deprecation.silence do
219
+ expect(@source.contains?(@target)).to be false
220
+ end
199
221
  end
200
222
  end
201
223
 
@@ -203,7 +225,9 @@ describe Spree::Zone, type: :model do
203
225
  before { @target.members.create(zoneable: country1) }
204
226
 
205
227
  it "should be false" do
206
- expect(@source.contains?(@target)).to be false
228
+ Spree::Deprecation.silence do
229
+ expect(@source.contains?(@target)).to be false
230
+ end
207
231
  end
208
232
  end
209
233
 
@@ -213,7 +237,9 @@ describe Spree::Zone, type: :model do
213
237
  end
214
238
 
215
239
  it "should be true" do
216
- expect(@source.contains?(@target)).to be true
240
+ Spree::Deprecation.silence do
241
+ expect(@source.contains?(@target)).to be true
242
+ end
217
243
  end
218
244
  end
219
245
 
@@ -230,7 +256,9 @@ describe Spree::Zone, type: :model do
230
256
  end
231
257
 
232
258
  it "should be true" do
233
- expect(@source.contains?(@target)).to be true
259
+ Spree::Deprecation.silence do
260
+ expect(@source.contains?(@target)).to be true
261
+ end
234
262
  end
235
263
  end
236
264
 
@@ -242,7 +270,9 @@ describe Spree::Zone, type: :model do
242
270
  end
243
271
 
244
272
  it "should be false" do
245
- expect(@source.contains?(@target)).to be false
273
+ Spree::Deprecation.silence do
274
+ expect(@source.contains?(@target)).to be false
275
+ end
246
276
  end
247
277
  end
248
278
 
@@ -253,7 +283,9 @@ describe Spree::Zone, type: :model do
253
283
  end
254
284
 
255
285
  it "should be false" do
256
- expect(@source.contains?(@target)).to be false
286
+ Spree::Deprecation.silence do
287
+ expect(@source.contains?(@target)).to be false
288
+ end
257
289
  end
258
290
  end
259
291
  end
@@ -265,7 +297,9 @@ describe Spree::Zone, type: :model do
265
297
  end
266
298
 
267
299
  it "should be false" do
268
- expect(@source.contains?(@target)).to be false
300
+ Spree::Deprecation.silence do
301
+ expect(@source.contains?(@target)).to be false
302
+ end
269
303
  end
270
304
  end
271
305
 
@@ -279,7 +313,9 @@ describe Spree::Zone, type: :model do
279
313
  end
280
314
 
281
315
  it "should be true" do
282
- expect(@source.contains?(@target)).to be true
316
+ Spree::Deprecation.silence do
317
+ expect(@source.contains?(@target)).to be true
318
+ end
283
319
  end
284
320
  end
285
321
 
@@ -291,7 +327,9 @@ describe Spree::Zone, type: :model do
291
327
  end
292
328
 
293
329
  it "should be false" do
294
- expect(@source.contains?(@target)).to be false
330
+ Spree::Deprecation.silence do
331
+ expect(@source.contains?(@target)).to be false
332
+ end
295
333
  end
296
334
  end
297
335
 
@@ -302,7 +340,9 @@ describe Spree::Zone, type: :model do
302
340
  end
303
341
 
304
342
  it "should be false" do
305
- expect(@source.contains?(@target)).to be false
343
+ Spree::Deprecation.silence do
344
+ expect(@source.contains?(@target)).to be false
345
+ end
306
346
  end
307
347
  end
308
348
  end
@@ -0,0 +1,8 @@
1
+ shared_examples_for 'a calculator with a description' do
2
+ describe ".description" do
3
+ subject { described_class.description }
4
+ it "has a description" do
5
+ expect(subject.size).to be > 0
6
+ end
7
+ end
8
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.1.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Solidus Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-12-12 00:00:00.000000000 Z
11
+ date: 2016-12-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemerchant
@@ -120,14 +120,14 @@ dependencies:
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: 1.6.18
123
+ version: '1.7'
124
124
  type: :runtime
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: 1.6.18
130
+ version: '1.7'
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: kaminari
133
133
  requirement: !ruby/object:Gem::Requirement
@@ -398,13 +398,11 @@ files:
398
398
  - app/models/spree/gateway/bogus_simple.rb
399
399
  - app/models/spree/image.rb
400
400
  - app/models/spree/inventory_unit.rb
401
- - app/models/spree/item_adjustments.rb
402
401
  - app/models/spree/legacy_user.rb
403
402
  - app/models/spree/line_item.rb
404
403
  - app/models/spree/line_item_action.rb
405
404
  - app/models/spree/log_entry.rb
406
405
  - app/models/spree/option_type.rb
407
- - app/models/spree/option_type_prototype.rb
408
406
  - app/models/spree/option_value.rb
409
407
  - app/models/spree/option_values_variant.rb
410
408
  - app/models/spree/order.rb
@@ -457,6 +455,7 @@ files:
457
455
  - app/models/spree/promotion/rules/taxon.rb
458
456
  - app/models/spree/promotion/rules/user.rb
459
457
  - app/models/spree/promotion/rules/user_logged_in.rb
458
+ - app/models/spree/promotion/rules/user_role.rb
460
459
  - app/models/spree/promotion_action.rb
461
460
  - app/models/spree/promotion_builder.rb
462
461
  - app/models/spree/promotion_category.rb
@@ -468,12 +467,10 @@ files:
468
467
  - app/models/spree/promotion_handler/free_shipping.rb
469
468
  - app/models/spree/promotion_handler/page.rb
470
469
  - app/models/spree/promotion_rule.rb
470
+ - app/models/spree/promotion_rule_role.rb
471
471
  - app/models/spree/promotion_rule_taxon.rb
472
472
  - app/models/spree/promotion_rule_user.rb
473
473
  - app/models/spree/property.rb
474
- - app/models/spree/property_prototype.rb
475
- - app/models/spree/prototype.rb
476
- - app/models/spree/prototype_taxon.rb
477
474
  - app/models/spree/refund.rb
478
475
  - app/models/spree/refund_reason.rb
479
476
  - app/models/spree/reimbursement.rb
@@ -553,7 +550,6 @@ files:
553
550
  - app/models/spree/tax_rate.rb
554
551
  - app/models/spree/taxon.rb
555
552
  - app/models/spree/taxonomy.rb
556
- - app/models/spree/tracker.rb
557
553
  - app/models/spree/transfer_item.rb
558
554
  - app/models/spree/unit_cancel.rb
559
555
  - app/models/spree/user_address.rb
@@ -799,7 +795,6 @@ files:
799
795
  - db/migrate/20150121202544_add_restock_inventory_to_stock_location.rb
800
796
  - db/migrate/20150122202432_add_code_to_spree_promotion_categories.rb
801
797
  - db/migrate/20150127161843_create_order_stock_locations.rb
802
- - db/migrate/20150128032538_remove_environment_from_tracker.rb
803
798
  - db/migrate/20150203151219_add_fulfillable_to_stock_location.rb
804
799
  - db/migrate/20150205210527_add_code_to_refund_reason.rb
805
800
  - db/migrate/20150213160148_add_promotion_code_id_to_orders_promotions.rb
@@ -896,13 +891,16 @@ files:
896
891
  - db/migrate/20160616232103_remove_user_id_from_promotion_rules.rb
897
892
  - db/migrate/20160718205341_add_payment_id_index_to_spree_refunds.rb
898
893
  - db/migrate/20160718205859_add_reimbursement_id_index_to_spree_refunds.rb
894
+ - db/migrate/20160924135758_remove_is_default_from_prices.rb
895
+ - db/migrate/20161009141333_remove_currency_from_line_items.rb
896
+ - db/migrate/20161014221052_add_available_to_columns_and_remove_display_on_from_payment_methods.rb
897
+ - db/migrate/20161123154034_add_available_to_users_and_remove_display_on_from_shipping_methods.rb
899
898
  - db/seeds.rb
900
899
  - lib/generators/spree/custom_user/custom_user_generator.rb
901
900
  - lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt
902
901
  - lib/generators/spree/custom_user/templates/initializer.rb.tt
903
902
  - lib/generators/spree/custom_user/templates/migration.rb.tt
904
903
  - lib/generators/spree/dummy/dummy_generator.rb
905
- - lib/generators/spree/dummy/templates/initializers/custom_user.rb
906
904
  - lib/generators/spree/dummy/templates/rails/application.rb
907
905
  - lib/generators/spree/dummy/templates/rails/boot.rb
908
906
  - lib/generators/spree/dummy/templates/rails/database.yml
@@ -928,7 +926,6 @@ files:
928
926
  - lib/spree/core/controller_helpers/store.rb
929
927
  - lib/spree/core/controller_helpers/strong_parameters.rb
930
928
  - lib/spree/core/current_store.rb
931
- - lib/spree/core/delegate_belongs_to.rb
932
929
  - lib/spree/core/engine.rb
933
930
  - lib/spree/core/environment.rb
934
931
  - lib/spree/core/environment/calculators.rb
@@ -1018,7 +1015,6 @@ files:
1018
1015
  - lib/spree/testing_support/factories/promotion_code_factory.rb
1019
1016
  - lib/spree/testing_support/factories/promotion_factory.rb
1020
1017
  - lib/spree/testing_support/factories/property_factory.rb
1021
- - lib/spree/testing_support/factories/prototype_factory.rb
1022
1018
  - lib/spree/testing_support/factories/refund_factory.rb
1023
1019
  - lib/spree/testing_support/factories/refund_reason_factory.rb
1024
1020
  - lib/spree/testing_support/factories/reimbursement_factory.rb
@@ -1048,7 +1044,6 @@ files:
1048
1044
  - lib/spree/testing_support/factories/tax_rate_factory.rb
1049
1045
  - lib/spree/testing_support/factories/taxon_factory.rb
1050
1046
  - lib/spree/testing_support/factories/taxonomy_factory.rb
1051
- - lib/spree/testing_support/factories/tracker_factory.rb
1052
1047
  - lib/spree/testing_support/factories/user_factory.rb
1053
1048
  - lib/spree/testing_support/factories/variant_factory.rb
1054
1049
  - lib/spree/testing_support/factories/variant_property_rule_condition_factory.rb
@@ -1092,7 +1087,6 @@ files:
1092
1087
  - spec/lib/spree/core/controller_helpers/store_spec.rb
1093
1088
  - spec/lib/spree/core/controller_helpers/strong_parameters_spec.rb
1094
1089
  - spec/lib/spree/core/current_store_spec.rb
1095
- - spec/lib/spree/core/delegate_belongs_to_spec.rb
1096
1090
  - spec/lib/spree/core/environment_extension_spec.rb
1097
1091
  - spec/lib/spree/core/importer/order_spec.rb
1098
1092
  - spec/lib/spree/core/price_migrator_spec.rb
@@ -1123,7 +1117,6 @@ files:
1123
1117
  - spec/lib/spree/core/testing_support/factories/promotion_code_factory_spec.rb
1124
1118
  - spec/lib/spree/core/testing_support/factories/promotion_factory_spec.rb
1125
1119
  - spec/lib/spree/core/testing_support/factories/property_factory_spec.rb
1126
- - spec/lib/spree/core/testing_support/factories/prototype_factory_spec.rb
1127
1120
  - spec/lib/spree/core/testing_support/factories/refund_factory_spec.rb
1128
1121
  - spec/lib/spree/core/testing_support/factories/refund_reason_factory_spec.rb
1129
1122
  - spec/lib/spree/core/testing_support/factories/reimbursement_factory_spec.rb
@@ -1153,7 +1146,6 @@ files:
1153
1146
  - spec/lib/spree/core/testing_support/factories/tax_rate_factory_spec.rb
1154
1147
  - spec/lib/spree/core/testing_support/factories/taxon_factory_spec.rb
1155
1148
  - spec/lib/spree/core/testing_support/factories/taxonomy_factory_spec.rb
1156
- - spec/lib/spree/core/testing_support/factories/tracker_factory_spec.rb
1157
1149
  - spec/lib/spree/core/testing_support/factories/user_factory_spec.rb
1158
1150
  - spec/lib/spree/core/testing_support/factories/variant_factory_spec.rb
1159
1151
  - spec/lib/spree/core/testing_support/factories/variant_property_rule_condition_factory_spec.rb
@@ -1189,7 +1181,9 @@ files:
1189
1181
  - spec/models/spree/calculator/flat_percent_item_total_spec.rb
1190
1182
  - spec/models/spree/calculator/flat_rate_spec.rb
1191
1183
  - spec/models/spree/calculator/flexi_rate_spec.rb
1184
+ - spec/models/spree/calculator/free_shipping_spec.rb
1192
1185
  - spec/models/spree/calculator/percent_on_line_item_spec.rb
1186
+ - spec/models/spree/calculator/percent_per_item_spec.rb
1193
1187
  - spec/models/spree/calculator/price_sack_spec.rb
1194
1188
  - spec/models/spree/calculator/refunds/default_refund_amount_spec.rb
1195
1189
  - spec/models/spree/calculator/shipping/flat_percent_item_total_spec.rb
@@ -1214,7 +1208,6 @@ files:
1214
1208
  - spec/models/spree/gateway/bogus_spec.rb
1215
1209
  - spec/models/spree/gateway_spec.rb
1216
1210
  - spec/models/spree/inventory_unit_spec.rb
1217
- - spec/models/spree/item_adjustments_spec.rb
1218
1211
  - spec/models/spree/line_item_spec.rb
1219
1212
  - spec/models/spree/option_type_spec.rb
1220
1213
  - spec/models/spree/option_value_spec.rb
@@ -1293,7 +1286,9 @@ files:
1293
1286
  - spec/models/spree/promotion/rules/product_spec.rb
1294
1287
  - spec/models/spree/promotion/rules/taxon_spec.rb
1295
1288
  - spec/models/spree/promotion/rules/user_logged_in_spec.rb
1289
+ - spec/models/spree/promotion/rules/user_role_spec.rb
1296
1290
  - spec/models/spree/promotion/rules/user_spec.rb
1291
+ - spec/models/spree/promotion_action_spec.rb
1297
1292
  - spec/models/spree/promotion_builder_spec.rb
1298
1293
  - spec/models/spree/promotion_category_spec.rb
1299
1294
  - spec/models/spree/promotion_code/code_builder_spec.rb
@@ -1365,7 +1360,6 @@ files:
1365
1360
  - spec/models/spree/tax_rate_spec.rb
1366
1361
  - spec/models/spree/taxon_spec.rb
1367
1362
  - spec/models/spree/taxonomy_spec.rb
1368
- - spec/models/spree/tracker_spec.rb
1369
1363
  - spec/models/spree/transfer_item_spec.rb
1370
1364
  - spec/models/spree/unit_cancel_spec.rb
1371
1365
  - spec/models/spree/user_spec.rb
@@ -1379,6 +1373,7 @@ files:
1379
1373
  - spec/models/spree/variant_property_rule_value_spec.rb
1380
1374
  - spec/models/spree/variant_spec.rb
1381
1375
  - spec/models/spree/zone_spec.rb
1376
+ - spec/shared_examples/calculator_shared_examples.rb
1382
1377
  - spec/spec_helper.rb
1383
1378
  - spec/support/big_decimal.rb
1384
1379
  - spec/support/concerns/default_price.rb
@@ -1391,7 +1386,7 @@ files:
1391
1386
  - vendor/assets/stylesheets/normalize.css
1392
1387
  homepage: http://solidus.io
1393
1388
  licenses:
1394
- - BSD-3
1389
+ - BSD-3-Clause
1395
1390
  metadata: {}
1396
1391
  post_install_message:
1397
1392
  rdoc_options: []
@@ -1401,15 +1396,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
1401
1396
  requirements:
1402
1397
  - - ">="
1403
1398
  - !ruby/object:Gem::Version
1404
- version: 2.1.0
1399
+ version: 2.2.2
1405
1400
  required_rubygems_version: !ruby/object:Gem::Requirement
1406
1401
  requirements:
1407
1402
  - - ">="
1408
1403
  - !ruby/object:Gem::Version
1409
- version: '0'
1404
+ version: 1.8.23
1410
1405
  requirements: []
1411
1406
  rubyforge_project:
1412
- rubygems_version: 2.6.11
1407
+ rubygems_version: 2.5.2
1413
1408
  signing_key:
1414
1409
  specification_version: 4
1415
1410
  summary: Essential models, mailers, and classes for the Solidus e-commerce project.