test/unit/models/bank_transaction_test.rb in xeroizer-float-2.15.3.16 vs test/unit/models/bank_transaction_test.rb in xeroizer-float-2.15.5.1
- old
+ new
@@ -5,12 +5,11 @@
include Xeroizer::Record
def setup
fake_parent = Class.new do
attr_accessor :application
- def mark_dirty(*args)
- end
+ def mark_dirty(*args); end
end.new
the_line_items = [
LineItem.build({:quantity => 1, :tax_amount => 0.15, :unit_amount => 1.00, :tax_amount => 0.50}, nil),
LineItem.build({:quantity => 1, :tax_amount => 0.15, :unit_amount => 1.00, :tax_amount => 0.50}, nil)
@@ -50,11 +49,10 @@
assert_equal "1.0", @the_bank_transaction.sub_total.to_s
end
end
context "bank transaction totals" do
-
should "large-scale testing from API XML" do
bank_transactions = @client.BankTransaction.all
bank_transactions.each do | bank_transaction |
assert(!!bank_transaction.attributes[:currency_code], "Doesn't have currency code in attributes")
assert(!!bank_transaction.currency_code, "Doesn't have currency code in model")
@@ -67,9 +65,19 @@
assert_equal(bank_transaction.attributes[:currency_rate], bank_transaction.currency_rate)
else
assert_equal(1.0, bank_transaction.currency_rate)
end
end
+ end
+
+ should "handle bank transfers properly" do
+ bank_transactions = @client.BankTransaction.all
+ bank_transaction = bank_transactions.find { |bt| bt.attributes[:type] == "SPEND-TRANSFER" }
+
+ assert( bank_transaction.is_transfer? )
+ assert_equal( bank_transaction.attributes[:total], bank_transaction.total)
+ assert_equal( bank_transaction.attributes[:total], bank_transaction.sub_total)
+ assert_equal( 0, bank_transaction.total_tax)
end
end
end