public void TransferMoney_Should_ThrowMoneyNotEnoughException_When_TotalBalanceIsLessThanAmoutToTransfer() { var sender = "NL95INGB1938035321"; var payee = "NL13ABNA7035378898"; var dto = new TransferMoneyDto { payee_iban_number = payee, sender_iban_number = sender, amount = 2000 }; Account senderInstance = new Account(); Account payeeInstance = new Account(); MockAccountRepository.Setup(x => x.GetByIBanNumber(sender)).Returns(Task.FromResult(senderInstance)); MockAccountRepository.Setup(x => x.GetByIBanNumber(payee)).Returns(Task.FromResult(payeeInstance)); IEnumerable <Statement> statements = new List <Statement> { new Statement { Amount = 100 }, new Statement { Amount = 1000 } }; MockStatementRepository.Setup(x => x.GetByAccountId(It.IsAny <int>())).Returns(Task.FromResult(statements)); Assert.ThrowsAsync <MoneyNotEnoughException>(() => _testService.TransferMoney(dto)); }
public void Deposit_Should_Success_When_DtoIsValid() { var dto = new StatementDepositDto { iban_number = "NL13ABNA7035378898", amount = 100 }; MockAccountRepository.Setup(x => x.HasAccount(It.IsAny <string>())).Returns(Task.FromResult(true)); MockStatementRepository.Setup(x => x.Add(It.IsAny <Statement>())).Returns(Task.FromResult(new Statement())); var result = _testService.Deposit(dto).Result; Assert.IsNotNull(result); }
public void TransferMoney_Should_Success_When_AmountIsLessThanTotalBalance() { var sender = "NL95INGB1938035321"; var payee = "NL13ABNA7035378898"; var dto = new TransferMoneyDto { payee_iban_number = payee, sender_iban_number = sender, amount = 2000 }; Account senderInstance = new Account(); Account payeeInstance = new Account(); MockAccountRepository.Setup(x => x.GetByIBanNumber(sender)).Returns(Task.FromResult(senderInstance)); MockAccountRepository.Setup(x => x.GetByIBanNumber(payee)).Returns(Task.FromResult(payeeInstance)); IEnumerable <Statement> statements = new List <Statement> { new Statement { Amount = 100 }, new Statement { Amount = 1000 }, new Statement { Amount = 10000 } }; MockStatementRepository.Setup(x => x.GetByAccountId(It.IsAny <int>())).Returns(Task.FromResult(statements)); TransferMoneyResultDto resultDto = new TransferMoneyResultDto { success = true }; MockTransactionRepository.Setup(x => x.SaveTransferringMoney(It.IsAny <TransferMoneyFullDto>())).Returns(Task.FromResult(resultDto)); var result = _testService.TransferMoney(dto).Result; Assert.IsTrue(result.success); }