public void When_Instantiating_Account_Must_Start_Transactions_Correctly() { var accountMock = AccountMock.AccountModelFaker.Generate(); var account = new Account.Domain.Models.Account(accountMock.AccountNumber, accountMock.AgencyNumber, accountMock.AccountHolder, accountMock.AccountBalance); Assert.IsType <List <Account.Domain.Models.Transaction> >(account.Transactions); }
public void Give_A_Value_If_Have_False_Return_Balance(decimal value) { var accountMock = AccountMock.AccountModelFaker.Generate(); var account = new Account.Domain.Models.Account(accountMock.AccountNumber, accountMock.AgencyNumber, accountMock.AccountHolder, accountMock.AccountBalance); var result = account.HasBalance(value); Assert.False(result); }
public void Must_Transfer_The_Balance(decimal value) { var accountMock = AccountMock.AccountModelFaker.Generate(); var account = new Account.Domain.Models.Account(accountMock.AccountNumber, accountMock.AgencyNumber, accountMock.AccountHolder, accountMock.AccountBalance); account.Debit(value); Assert.True(account.AccountBalance < accountMock.AccountBalance); }
public void AffectsBalance() { //Arrange decimal amount = 20; decimal amount2 = 70; var account = new Account.Domain.Models.Account("10"); //Act account.Withdraw(amount); account.Withdraw(amount2); //Assert Assert.AreEqual(-amount - amount2, account.Balance); }
public void AddsTransaction() { //Arrange decimal amount = 50; var account = new Account.Domain.Models.Account("10"); //Act account.Withdraw(amount); //Assert var transaction = account.Transactions.OfType <WithdrawTransaction>().First(); Assert.IsNotNull(transaction); Assert.AreEqual(-amount, transaction.Amount); }
public void AffectsBalance() { //Arrange decimal amount1 = 50; decimal amount2 = 40; var origin = new Account.Domain.Models.Account("10"); var destination = new Account.Domain.Models.Account("11"); //Act origin.Transfer(destination, amount1); destination.Transfer(origin, amount2); //Assert Assert.AreEqual(-10, origin.Balance); Assert.AreEqual(10, destination.Balance); }
public void ReturnsAccountBalance() { //Arrange string id = "10"; decimal value = 60; var repo = new AccountRepository(); var service = new AccountService(repo); var account = new Account.Domain.Models.Account(id); repo.Add(account); account.Deposit(value); //Act var result = service.GetBalance(id); //Assert Assert.IsTrue(result.IsOK); Assert.AreEqual(value, result.Data); }
public void AddsTransaction() { //Arrange decimal amount = 50; var origin = new Account.Domain.Models.Account("10"); var destination = new Account.Domain.Models.Account("11"); //Act origin.Transfer(destination, amount); //Assert var transaction1 = origin.Transactions.OfType <TransferTransaction>().First(); Assert.IsNotNull(transaction1); Assert.AreEqual(-amount, transaction1.Amount); var transaction2 = destination.Transactions.OfType <TransferTransaction>().First(); Assert.IsNotNull(transaction2); Assert.AreEqual(amount, transaction2.Amount); }