solidus_core 2.2.0 → 2.2.1
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c15f057db7ca6d5b45b75260b8591056bcea8aee
|
4
|
+
data.tar.gz: 49d2fc2856a7ab0c719109fb492f7aea075acec3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b393535300c7c584403f87b3ee50b25210964f3a3e2540c2de6bf389f0219dcb8c9b43285585119225b9259eb84d4019e28f127e55507b4423268d0acdba32ab
|
7
|
+
data.tar.gz: aba6c7013b288673bcb66db07ba5c8a3c02799d3ba4f5003ccd1b350c5a848613242c0ae5a38d48d6bba3ecff292f16f4863af8bfc08548df1110e0cc5361516
|
data/app/models/spree/wallet.rb
CHANGED
@@ -61,7 +61,12 @@ class Spree::Wallet
|
|
61
61
|
raise Unauthorized, "wallet_payment_source #{wallet_payment_source.id} does not belong to wallet of user #{user.id}"
|
62
62
|
end
|
63
63
|
|
64
|
-
|
64
|
+
# Do not update the payment source if the passed source is already default
|
65
|
+
if default_wallet_payment_source == wallet_payment_source
|
66
|
+
return
|
67
|
+
end
|
68
|
+
|
69
|
+
Spree::WalletPaymentSource.transaction do
|
65
70
|
# Unset old default
|
66
71
|
default_wallet_payment_source.try!(:update!, default: false)
|
67
72
|
# Set new default
|
@@ -14,7 +14,8 @@ class MigrateCreditCardsToWalletPaymentSources < ActiveRecord::Migration[4.2]
|
|
14
14
|
credit_cards.find_each do |credit_card|
|
15
15
|
WalletPaymentSource.find_or_create_by!(
|
16
16
|
user_id: credit_card.user_id,
|
17
|
-
|
17
|
+
payment_source_id: credit_card.id,
|
18
|
+
payment_source_type: 'Spree::CreditCard'
|
18
19
|
) do |wallet_source|
|
19
20
|
wallet_source.default = credit_card.default
|
20
21
|
end
|
data/lib/spree/core/version.rb
CHANGED
@@ -78,20 +78,45 @@ describe Spree::Wallet, type: :model do
|
|
78
78
|
to(wallet_credit_card)
|
79
79
|
)
|
80
80
|
end
|
81
|
+
|
82
|
+
context "assigning nil" do
|
83
|
+
it "remains unset" do
|
84
|
+
expect(subject.default_wallet_payment_source).to be_nil
|
85
|
+
subject.default_wallet_payment_source = nil
|
86
|
+
expect(subject.default_wallet_payment_source).to be_nil
|
87
|
+
end
|
88
|
+
end
|
81
89
|
end
|
82
90
|
|
83
|
-
context "with
|
91
|
+
context "with a default" do
|
84
92
|
let!(:wallet_credit_card) { subject.add(credit_card) }
|
85
|
-
let!(:wallet_store_credit) { subject.add(store_credit) }
|
86
93
|
|
87
94
|
before { subject.default_wallet_payment_source = wallet_credit_card }
|
88
95
|
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
96
|
+
context "assigning a new default" do
|
97
|
+
let!(:wallet_store_credit) { subject.add(store_credit) }
|
98
|
+
|
99
|
+
it "sets the new payment source as the default" do
|
100
|
+
expect {
|
101
|
+
subject.default_wallet_payment_source = wallet_store_credit
|
102
|
+
}.to change{ subject.default_wallet_payment_source }.from(wallet_credit_card).to(wallet_store_credit)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
context "assigning same default" do
|
107
|
+
it "does not change the default payment source" do
|
108
|
+
expect {
|
109
|
+
subject.default_wallet_payment_source = wallet_credit_card
|
110
|
+
}.not_to change{ subject.default_wallet_payment_source }
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
context "assigning nil" do
|
115
|
+
it "clears the default payment source" do
|
116
|
+
expect {
|
117
|
+
subject.default_wallet_payment_source = nil
|
118
|
+
}.to change{ subject.default_wallet_payment_source }.to nil
|
119
|
+
end
|
95
120
|
end
|
96
121
|
end
|
97
122
|
|
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.2.
|
4
|
+
version: 2.2.1
|
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-05-
|
11
|
+
date: 2017-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activemerchant
|