solidus_frontend 2.8.1 → 2.8.6
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.
Potentially problematic release.
This version of solidus_frontend might be problematic. Click here for more details.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1daacac80ac7da26b638ae0c7a23783bea3e7f0ee82b3d7453b2c6ec8b2543e5
|
4
|
+
data.tar.gz: 93ec515cdff1099ac11b27fcd2c740891c31f3f6569d45868a32d0d3690776e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e7ae3f703517879888b4b079a10443471eebc752080901f7ce79d0e34efda6226ac966ba8103452adfb70f6a379684e44a6fffdd4e6bbe8ded2235d350260393
|
7
|
+
data.tar.gz: d7e3b788e0891df7ca97958055e5927b4e95e6739b5ce4e8f0f4b61e69c49570a156b9941cc41df2e49aa923b5921daa6dee1696ad090ed5805676913c5213e9
|
@@ -17,7 +17,7 @@ module Spree
|
|
17
17
|
|
18
18
|
before_action :associate_user
|
19
19
|
before_action :check_authorization
|
20
|
-
before_action :apply_coupon_code
|
20
|
+
before_action :apply_coupon_code, only: [:update]
|
21
21
|
|
22
22
|
before_action :setup_for_current_state, only: [:edit, :update]
|
23
23
|
|
@@ -87,11 +87,23 @@ module Spree
|
|
87
87
|
end
|
88
88
|
|
89
89
|
def update_params
|
90
|
-
|
91
|
-
|
90
|
+
case params[:state].to_sym
|
91
|
+
when :address
|
92
|
+
massaged_params.require(:order).permit(
|
93
|
+
permitted_checkout_address_attributes
|
94
|
+
)
|
95
|
+
when :delivery
|
96
|
+
massaged_params.require(:order).permit(
|
97
|
+
permitted_checkout_delivery_attributes
|
98
|
+
)
|
99
|
+
when :payment
|
100
|
+
massaged_params.require(:order).permit(
|
101
|
+
permitted_checkout_payment_attributes
|
102
|
+
)
|
92
103
|
else
|
93
|
-
|
94
|
-
|
104
|
+
massaged_params.fetch(:order, {}).permit(
|
105
|
+
permitted_checkout_confirm_attributes
|
106
|
+
)
|
95
107
|
end
|
96
108
|
end
|
97
109
|
|
@@ -68,7 +68,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
68
68
|
it 'should check if the user is authorized for :edit' do
|
69
69
|
expect(controller).to receive(:authorize!).with(:edit, order, token)
|
70
70
|
request.cookie_jar.signed[:guest_token] = token
|
71
|
-
post :update, params: { state: 'address' }
|
71
|
+
post :update, params: { state: 'address', order: { bill_address_attributes: address_params } }
|
72
72
|
end
|
73
73
|
|
74
74
|
context "save successful" do
|
@@ -96,7 +96,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
96
96
|
end
|
97
97
|
|
98
98
|
it "should assign order" do
|
99
|
-
post :update, params: { state: "address" }
|
99
|
+
post :update, params: { state: "address", order: { bill_address_attributes: address_params } }
|
100
100
|
expect(assigns[:order]).not_to be_nil
|
101
101
|
end
|
102
102
|
|
@@ -271,6 +271,31 @@ describe Spree::CheckoutController, type: :controller do
|
|
271
271
|
expect(order.payments).to be_empty
|
272
272
|
end
|
273
273
|
end
|
274
|
+
|
275
|
+
context 'trying to change the address' do
|
276
|
+
let(:params) do
|
277
|
+
{
|
278
|
+
state: 'payment',
|
279
|
+
order: {
|
280
|
+
payments_attributes: [
|
281
|
+
{
|
282
|
+
payment_method_id: payment_method.id.to_s,
|
283
|
+
source_attributes: attributes_for(:credit_card)
|
284
|
+
}
|
285
|
+
],
|
286
|
+
ship_address_attributes: {
|
287
|
+
zipcode: 'TEST'
|
288
|
+
}
|
289
|
+
}
|
290
|
+
}
|
291
|
+
end
|
292
|
+
|
293
|
+
it 'does not change the address' do
|
294
|
+
expect do
|
295
|
+
post :update, params: params
|
296
|
+
end.not_to change { order.reload.ship_address.zipcode }
|
297
|
+
end
|
298
|
+
end
|
274
299
|
end
|
275
300
|
|
276
301
|
context "when in the confirm state" do
|
@@ -310,16 +335,18 @@ describe Spree::CheckoutController, type: :controller do
|
|
310
335
|
end
|
311
336
|
|
312
337
|
it "should not assign order" do
|
313
|
-
post :update, params: { state: "address", email: ''
|
338
|
+
post :update, params: { state: "address", order: { email: ''} }
|
314
339
|
expect(assigns[:order]).not_to be_nil
|
315
340
|
end
|
316
341
|
|
317
342
|
it "should not change the order state" do
|
318
|
-
|
343
|
+
expect do
|
344
|
+
post :update, params: { state: 'address', order: { bill_address_attributes: address_params } }
|
345
|
+
end.not_to change { order.reload.state }
|
319
346
|
end
|
320
347
|
|
321
348
|
it "should render the edit template" do
|
322
|
-
post :update, params: { state: 'address' }
|
349
|
+
post :update, params: { state: 'address', order: { bill_address_attributes: address_params } }
|
323
350
|
expect(response).to render_template :edit
|
324
351
|
end
|
325
352
|
end
|
@@ -342,7 +369,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
342
369
|
before do
|
343
370
|
order.update_attributes! user: user
|
344
371
|
allow(order).to receive(:next).and_raise(Spree::Core::GatewayError.new("Invalid something or other."))
|
345
|
-
post :update, params: { state: "address" }
|
372
|
+
post :update, params: { state: "address", order: { bill_address_attributes: address_params } }
|
346
373
|
end
|
347
374
|
|
348
375
|
it "should render the edit template and display exception message" do
|
@@ -373,7 +400,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
373
400
|
end
|
374
401
|
|
375
402
|
it "due to the order having errors" do
|
376
|
-
put :update, params: { state: order.state, order: {} }
|
403
|
+
put :update, params: { state: order.state, order: { bill_address_attributes: address_params } }
|
377
404
|
expect(flash[:error]).to eq("Base error\nAdjustments error")
|
378
405
|
expect(response).to redirect_to(spree.checkout_state_path('address'))
|
379
406
|
end
|
@@ -387,7 +414,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
387
414
|
end
|
388
415
|
|
389
416
|
it "due to no available shipping rates for any of the shipments" do
|
390
|
-
put :update, params: { state: "address", order: {} }
|
417
|
+
put :update, params: { state: "address", order: { bill_address_attributes: address_params } }
|
391
418
|
expect(flash[:error]).to eq(I18n.t('spree.items_cannot_be_shipped'))
|
392
419
|
expect(response).to redirect_to(spree.checkout_state_path('address'))
|
393
420
|
end
|
@@ -437,7 +464,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
437
464
|
end
|
438
465
|
|
439
466
|
it "redirects the customer to the cart page with an error message" do
|
440
|
-
put :update, params: { state: order.state, order: {} }
|
467
|
+
put :update, params: { state: order.state, order: { bill_address_attributes: address_params } }
|
441
468
|
expect(flash[:error]).to eq(I18n.t('spree.insufficient_stock_for_order'))
|
442
469
|
expect(response).to redirect_to(spree.cart_path)
|
443
470
|
end
|
@@ -496,9 +523,11 @@ describe Spree::CheckoutController, type: :controller do
|
|
496
523
|
allow(controller).to receive_messages check_authorization: true
|
497
524
|
end
|
498
525
|
|
499
|
-
|
526
|
+
# This does not test whether the shipping address is set via params.
|
527
|
+
# It only tests whether it is set in the before action.
|
528
|
+
it "doesn't set a default shipping address on the order" do
|
500
529
|
expect(order).to_not receive(:ship_address=)
|
501
|
-
post :update, params: { state: order.state }
|
530
|
+
post :update, params: { state: order.state, order: { bill_address_attributes: address_params } }
|
502
531
|
end
|
503
532
|
|
504
533
|
it "doesn't remove unshippable items before payment" do
|
@@ -513,7 +542,7 @@ describe Spree::CheckoutController, type: :controller do
|
|
513
542
|
allow(controller).to receive_messages check_authorization: true
|
514
543
|
|
515
544
|
expect {
|
516
|
-
post :update, params: { state: "payment" }
|
545
|
+
post :update, params: { state: "payment", order: { email: "johndoe@example.com"} }
|
517
546
|
}.to change { order.line_items.to_a.size }.from(1).to(0)
|
518
547
|
end
|
519
548
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solidus_frontend
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.8.
|
4
|
+
version: 2.8.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Solidus Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-07-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: solidus_api
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.8.
|
19
|
+
version: 2.8.6
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.8.
|
26
|
+
version: 2.8.6
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: solidus_core
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.8.
|
33
|
+
version: 2.8.6
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 2.8.
|
40
|
+
version: 2.8.6
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: canonical-rails
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -332,8 +332,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
332
332
|
version: 1.8.23
|
333
333
|
requirements:
|
334
334
|
- none
|
335
|
-
|
336
|
-
rubygems_version: 2.7.3
|
335
|
+
rubygems_version: 3.0.3
|
337
336
|
signing_key:
|
338
337
|
specification_version: 4
|
339
338
|
summary: Cart and storefront for the Solidus e-commerce project.
|