Add tests for cards

This commit is contained in:
Michelle Bu 2014-05-21 16:27:49 -07:00
parent 51af58c947
commit 57309a05de
3 changed files with 117 additions and 0 deletions

View File

@ -0,0 +1,57 @@
require File.expand_path('../../test_helper', __FILE__)
module Stripe
class CustomerCardTest < Test::Unit::TestCase
CUSTOMER_CARD_URL = '/v1/customers/test_customer/cards/test_card'
def customer
@mock.expects(:get).once.returns(test_response(test_customer))
Stripe::Customer.retrieve('test_customer')
end
should "customer cards should be listable" do
c = customer
@mock.expects(:get).once.returns(test_response(test_card_array(customer.id)))
cards = c.cards.all.data
assert cards.kind_of? Array
assert cards[0].kind_of? Stripe::Card
end
should "customer cards should have the correct url" do
c = customer
@mock.expects(:get).once.returns(test_response(test_card(
:id => 'test_card',
:customer => 'test_customer'
)))
card = c.cards.retrieve('card')
assert_equal CUSTOMER_CARD_URL, card.url
end
should "customer cards should be deletable" do
c = customer
@mock.expects(:get).once.returns(test_response(test_card))
@mock.expects(:delete).once.returns(test_response(test_card(:deleted => true)))
card = c.cards.retrieve('card')
card.delete
assert card.deleted
end
should "customer cards should be updateable" do
c = customer
@mock.expects(:get).once.returns(test_response(test_card(:exp_year => "2000")))
@mock.expects(:post).once.returns(test_response(test_card(:exp_year => "2100")))
card = c.cards.retrieve('card')
assert_equal "2000", card.exp_year
card.exp_year = "2100"
card.save
assert_equal "2100", card.exp_year
end
should "create should return a new customer card" do
c = customer
@mock.expects(:post).once.returns(test_response(test_card(:id => "test_card")))
card = c.cards.create(:card => "tok_41YJ05ijAaWaFS")
assert_equal "test_card", card.id
end
end
end

View File

@ -0,0 +1,57 @@
require File.expand_path('../../test_helper', __FILE__)
module Stripe
class RecipientCardTest < Test::Unit::TestCase
RECIPIENT_CARD_URL = '/v1/recipients/test_recipient/cards/test_card'
def recipient
@mock.expects(:get).once.returns(test_response(test_recipient))
Stripe::Recipient.retrieve('test_recipient')
end
should "recipient cards should be listable" do
c = recipient
@mock.expects(:get).once.returns(test_response(test_card_array(recipient.id)))
cards = c.cards.all.data
assert cards.kind_of? Array
assert cards[0].kind_of? Stripe::Card
end
should "recipient cards should have the correct url" do
c = recipient
@mock.expects(:get).once.returns(test_response(test_card(
:id => 'test_card',
:recipient => 'test_recipient'
)))
card = c.cards.retrieve('card')
assert_equal RECIPIENT_CARD_URL, card.url
end
should "recipient cards should be deletable" do
c = recipient
@mock.expects(:get).once.returns(test_response(test_card))
@mock.expects(:delete).once.returns(test_response(test_card(:deleted => true)))
card = c.cards.retrieve('card')
card.delete
assert card.deleted
end
should "recipient cards should be updateable" do
c = recipient
@mock.expects(:get).once.returns(test_response(test_card(:exp_year => "2000")))
@mock.expects(:post).once.returns(test_response(test_card(:exp_year => "2100")))
card = c.cards.retrieve('card')
assert_equal "2000", card.exp_year
card.exp_year = "2100"
card.save
assert_equal "2100", card.exp_year
end
should "create should return a new recipient card" do
c = recipient
@mock.expects(:post).once.returns(test_response(test_card(:id => "test_card")))
card = c.cards.create(:card => "tok_41YJ05ijAaWaFS")
assert_equal "test_card", card.id
end
end
end

View File

@ -273,12 +273,15 @@ def test_invoice_customer_array
end
def test_recipient(params={})
id = params[:id] || 'rp_test_recipient'
{
:name => "Stripe User",
:type => "individual",
:livemode => false,
:object => "recipient",
:id => "rp_test_recipient",
:cards => test_card_array(id),
:default_card => "debit_test_card",
:active_account => {
:last4 => "6789",
:bank_name => "STRIPE TEST BANK",