solidus_frontend 2.8.1 → 2.8.6
Sign up to get free protection for your applications and to get access to all the features.
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.
|