private void commandToolStripMenuItem_Click(object sender, EventArgs e) { UpdateOutput("A account is created, transaction commands are queued up then committed, the results are displayed."); BankAccount bankAccount = new BankAccount(); TransactionsQueue queue = new TransactionsQueue(); CommandAbstract command; UpdateOutput("Beginning account balance: " + bankAccount.Balance.ToString()); command = new DepositCommand(bankAccount, 50); queue.AddTransaction(command); UpdateOutput("Depositing 50"); command = new DepositCommand(bankAccount, 20); queue.AddTransaction(command); UpdateOutput("Depositing 20"); command = new WithdrawCommand(bankAccount, 10); queue.AddTransaction(command); UpdateOutput("Withdrawing 10"); UpdateOutput("Before committing account balance: " + bankAccount.Balance.ToString()); queue.CommitTransactions(); UpdateOutput("Final account balance: " + bankAccount.Balance.ToString()); }
public void TransactionQueueExecuteTest() { BankAccount bankAccount = new BankAccount(); WithdrawCommand command = new WithdrawCommand(bankAccount, 10); TransactionsQueue queue = new TransactionsQueue(); queue.AddTransaction(command); queue.CommitTransactions(); Assert.AreEqual(queue.TransactionQueueCount, 0); }