public void ATMMachine_WhenPinNumberIncorrect_ShouldReturndExpectedAccountErrorCode(decimal machineBalance, Int32 accountNumber, decimal accountBalance, decimal overDraft, Int32 realPinNumber, Int32 testPinNumber) { var cashPoint = new ATMMachine(machineBalance); var account = new CustomerAccount(accountBalance, accountNumber, realPinNumber, overDraft); decimal actualBalance; ATMResponse result = cashPoint.GetAccountBalance(account, testPinNumber, out actualBalance); Assert.That(result, Is.EqualTo(ATMResponse.ACCOUNT_ERR)); }
public void ATMMachine_TestData_ProducesExpectedOutcome(Int32 accountNumber, decimal initialAccountBalance, decimal overDraft, Int32 pinNumber, decimal withdrawalAmount) { var cashPoint = new ATMMachine(8000m); var customerAccount = new CustomerAccount(initialAccountBalance, accountNumber, pinNumber, overDraft); decimal customerBalance; ATMResponse balanceResponse = cashPoint.GetAccountBalance(customerAccount, pinNumber, out customerBalance); Assert.That(customerBalance, Is.EqualTo(initialAccountBalance)); Console.WriteLine(string.Format("InitialBalance: {0}", customerBalance)); Console.WriteLine(String.Format("ResultCode {0}", balanceResponse)); ATMResponse withdrawalResponse = cashPoint.WithdrawFunds(withdrawalAmount, customerAccount, pinNumber,out customerBalance); Console.WriteLine(String.Format("Withdrawawl Amount: {0}", withdrawalAmount)); Console.WriteLine(String.Format("Balance AfterWithdrawal {0}", customerBalance)); Console.WriteLine(String.Format("ResultCode: {0}", withdrawalResponse)); }