spec for source attributes to pass for saved card

This commit is contained in:
stveep
2017-03-20 19:35:11 +00:00
committed by Rob Harrington
parent 12f4f2d17a
commit 627899bbd4
2 changed files with 13 additions and 2 deletions

View File

@@ -63,7 +63,7 @@ Darkswarm.factory 'Checkout', ($injector, CurrentOrder, ShippingMethods, StripeJ
if @secrets.selected_card
angular.extend munged_order.payments_attributes[0], {
source_attributes:
id: @secrets.selected_card
credit_card_id: @secrets.selected_card
type: 'Spree::CreditCard'
}
else

View File

@@ -131,7 +131,6 @@ describe 'Checkout service', ->
Checkout.purchase()
expect(StripeJS.requestToken).not.toHaveBeenCalled()
describe "data preprocessing", ->
beforeEach ->
Checkout.order.payment_method_id = 99
@@ -198,3 +197,15 @@ describe 'Checkout service', ->
expect(source_attributes.last_digits).toBe "1234"
expect(source_attributes.year).toBe "2099"
expect(source_attributes.month).toBe "10"
describe "when a saved card from Stripe is used", ->
beforeEach ->
Checkout.order.payment_method_id = 666
it "passes the card ID in source attributes if a saved card is selected", ->
Checkout.secrets.selected_card = 1
source_attributes = Checkout.preprocess().payments_attributes[0].source_attributes
expect(source_attributes).toBeDefined()
expect(source_attributes.credit_card_id).toBe 1
expect(source_attributes.type).toBe "Spree::CreditCard"
expect(source_attributes.year).toBeUndefined()