Skip to content

Commit

Permalink
Merge pull request #3634 from softr8/fix/mark-default-billing
Browse files Browse the repository at this point in the history
Fixing mark default billing address
  • Loading branch information
spaghetticode authored May 27, 2020
2 parents 7bdf786 + 862d07f commit ac325ef
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 25 deletions.
2 changes: 1 addition & 1 deletion core/app/models/concerns/spree/user_address_book.rb
Original file line number Diff line number Diff line change
Expand Up @@ -171,7 +171,7 @@ def mark_default_ship_address(address)
end

def mark_default_bill_address(address)
user_addresses.mark_default(user_addresses.find_by(address: address), :billing)
user_addresses.mark_default(user_addresses.find_by(address: address), address_type: :billing)
end

def remove_from_address_book(address_id)
Expand Down
33 changes: 9 additions & 24 deletions core/spec/models/spree/concerns/user_address_book_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -584,36 +584,21 @@ module Spree
end

describe "#mark_default_ship_address" do
let(:address) { build :address }
let(:user_address) { double }
let(:user_addresses) { double }

before do
allow(user).to receive(:user_addresses).and_return user_addresses
allow(user_addresses).to receive(:find_by).and_return user_address
end

it "calls #mark_default with default address kind" do
expect(user_addresses).to receive(:mark_default).with(user_address)
let(:user_address) { user.user_addresses.create(address: build(:address), default: false) }

user.mark_default_ship_address(address)
it "marks address specified as default shipping" do
user.mark_default_ship_address(user_address.address)
expect(user_address.reload.default).to be_truthy
end
end

describe "#mark_default_bill_address" do
let(:address) { build :address }
let(:user_address) { double }
let(:user_addresses) { double }

before do
allow(user).to receive(:user_addresses).and_return user_addresses
allow(user_addresses).to receive(:find_by).and_return user_address
end

it "calls #mark_default with billing address kind" do
expect(user_addresses).to receive(:mark_default).with(user_address, :billing)
let(:user) { create(:user_with_addresses) }
let(:user_address) { user.user_addresses.find_by(default_billing: false) }

user.mark_default_bill_address(address)
it "marks address specified as default billing" do
user.mark_default_bill_address(user_address.address)
expect(user_address.reload.default_billing).to be_truthy
end
end
end
Expand Down

0 comments on commit ac325ef

Please sign in to comment.