public void Main(string[] args) { ILogger logger = new Logger(); BankAccount ba = new BankAccount("Mr. Bryan Walton", 11.99, logger); ba.Credit(5.77); ba.Debit(11.22); Console.WriteLine("Current balance is ${0}", ba.Balance); }
public void Debit_WithValidAmount_UpdatesBalance() { // Arrange double beginningBalance = 11.99; double debitAmount = 4.55; double expected = 7.44; BankAccount.BankAccount account = new BankAccount.BankAccount("Mr. Bryan Walton", beginningBalance); // Act account.Debit(debitAmount); // Assert double actual = account.Balance; Assert.AreEqual(expected, actual, 0.001, "Account not debited correctly"); }
public void Debit_WithValidAmount_UpdatesBalance() { // Prepare // Mock<ILogger> mock = new Mock<ILogger>(); // ILogger logger = mock.Object; ILogger logger = null; // arrange double beginningBalance = 11.99; double debitAmount = 4.55; double expected = 7.44; BankAccount account = new BankAccount("Mr. Bryan Walton", beginningBalance, logger); // act account.Debit(debitAmount); // assert double actual = account.Balance; Assert.True(actual.Equals(expected)); }
public void Debit_WhenAmountIsMoreThanBalance_ShouldThrowArgumentOutOfRange() { // Arrange double beginningBalance = 10; double debitAmount = 20; BankAccount.BankAccount account = new BankAccount.BankAccount("Mr. Matas", beginningBalance); // Act try { account.Debit(debitAmount); } catch (System.ArgumentOutOfRangeException e) { // Asssert StringAssert.Contains(e.Message, BankAccount.BankAccount.DebitAmountExceedsBalanceMessage); return; } Assert.Fail("The expected exception was not thrown."); }