public void testDoesNotAllowDuplicates() { Budgeteer.TransactionList transactionList = new Budgeteer.TransactionList(); Budgeteer.Transaction t1 = new Budgeteer.Transaction(); t1.SourceAccountId = 9; t1.DestinationAccountId = 8; t1.Payee = "HEB"; t1.Memo = "NO MEMO FOOL!"; t1.ClearedBank = false; t1.CheckNumber = "Bill Pay"; t1.Amount = 35; Budgeteer.Transaction t2 = new Budgeteer.Transaction(); t2.SourceAccountId = 9; t2.DestinationAccountId = 8; t2.Payee = "HEB"; t2.Memo = "NO MEMO FOOL!"; t2.ClearedBank = false; t2.CheckNumber = "Bill Pay"; t2.Amount = 35; transactionList.Add(t1); Assert.AreEqual(1, transactionList.Count); transactionList.Add(t2); Assert.AreEqual(1, transactionList.Count); t2.ClearedBank = true; transactionList.Add(t2); Assert.AreEqual(2, transactionList.Count); }
public void testBalanceCalculations() { Budgeteer.Account acct = new Budgeteer.Account(); acct.OpeningBalance = 100; acct.save(); Budgeteer.Transaction t1 = new Budgeteer.Transaction(); t1.Amount = 18.94; t1.SourceAccount = acct; t1.Payee = "HEB"; t1.save(); acct.Transactions.Add(t1); Assert.AreEqual(System.Math.Round(81.06, 2), acct.Balance); Budgeteer.Account destAcct = new Budgeteer.Account(); destAcct.OpeningBalance = 236.57; Budgeteer.Transaction t2 = new Budgeteer.Transaction(); t2.Amount = 12.45; t2.SourceAccount = acct; t2.DestinationAccount = destAcct; acct.Transactions.Add(t2); destAcct.Transactions.Add(t2); Assert.AreEqual(System.Math.Round(249.02, 2), destAcct.Balance); Assert.AreEqual(System.Math.Round(68.61, 2), acct.Balance); }
public void testSettingSourceAccount() { Budgeteer.Account acct1 = new Budgeteer.Account(); acct1.OpeningBalance = 300; acct1.Name = "test setting source account"; acct1.save(); Budgeteer.Transaction t1 = new Budgeteer.Transaction(); t1.Amount = 100; t1.Memo = "Cheese"; t1.Payee = "HEB"; t1.SourceAccount = acct1; t1.save(); acct1.reload(); Assert.AreEqual(200, acct1.Balance); Assert.AreEqual(acct1.Id, t1.SourceAccountId); }
public void testEqual() { Budgeteer.Transaction t1 = new Budgeteer.Transaction(); t1.SourceAccountId = 9; t1.DestinationAccountId = 8; t1.Payee = "HEB"; t1.Memo = "NO MEMO FOOL!"; t1.ClearedBank = false; t1.CheckNumber = "Bill Pay"; t1.Amount = 35; Budgeteer.Transaction t2 = new Budgeteer.Transaction(); t2.SourceAccountId = 9; t2.DestinationAccountId = 8; t2.Payee = "HEB"; t2.Memo = "NO MEMO FOOL!"; t2.ClearedBank = false; t2.CheckNumber = "Bill Pay"; t2.Amount = 35; Assert.IsTrue(t1.Equals(t2)); }
public void testTransactionListVsTransactions() { Budgeteer.Account parent = new Budgeteer.Account(); parent.OpeningBalance = 100; Budgeteer.Transaction t = new Budgeteer.Transaction(); t.Amount = 95; t.SourceAccount = parent; parent.Transactions.Add(t); Assert.AreEqual(5, parent.Balance); Budgeteer.Account child1 = new Budgeteer.Account(); child1.OpeningBalance = 200; t = new Budgeteer.Transaction(); t.Amount = 95; t.SourceAccount = child1; child1.Transactions.Add(t); Assert.AreEqual(105, child1.Balance); child1.ParentAccount = parent; parent.SubAccounts.Add(child1); Assert.AreEqual(110, parent.Balance); Budgeteer.Account child2 = new Budgeteer.Account(); child2.OpeningBalance = 300; t = new Budgeteer.Transaction(); t.Amount = 95; t.SourceAccount = child2; child2.Transactions.Add(t); Assert.AreEqual(205, child2.Balance); child2.ParentAccount = child1; child1.SubAccounts.Add(child2); Assert.AreEqual(310, child1.Balance); Assert.AreEqual(315, parent.Balance); List<Budgeteer.Transaction> transactionList = parent.TransactionList; Assert.AreEqual(3, transactionList.Count); Assert.AreEqual(1, parent.Transactions.Count); }