Sha256: e08f22a7a0d6caea9a27a69fa47070859128adb41401374c069724d9ed28441b

Contents?: true

Size: 1.05 KB

Versions: 2

Compression:

Stored size: 1.05 KB

Contents

require "spec_helper"

def setup_user_with_credit_card
  @user = User.create
  @balanced_card = Balanced::Card.new(
    card_number:      '4111111111111111',
    expiration_year:  (Date.today+2.years).year,
    expiration_month: '12').save
  @user.add_credit_card(@balanced_card.uri)
end

describe "Transactionable::CreditCard" do
  describe "#debit!", :vcr, :marketplace do
    before do
      setup_user_with_credit_card
      @credit_card = @user.credit_cards.first
      @credit_card.debit!(13.37)
      @transaction = @credit_card.transactions.first
      @user.log_transaction(@transaction)
      @remote_transaction = @transaction.remote
    end

    specify { @credit_card.debits.should_not be_blank }
    specify { @credit_card.debits.first.should eql @transaction }
    specify { @transaction.should be_instance_of Transactionable::Debit }
    specify { @user.transactions.should include(@transaction) }
    specify { @remote_transaction.should be_instance_of Balanced::Debit }
    specify { (@transaction.amount*100).should eql @remote_transaction.amount }
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
transactionable-0.3.1 spec/integration/models/credit_card_spec.rb
transactionable-0.3.0 spec/integration/models/credit_card_spec.rb