public async Task RealizarDebitoNaConta_Deve_ObterSucesso() { // Arrange var expectedValue = 1450; var account = new Account() { CPF = "00100100199", Balance = 1500 }; var command = new AccountDebit.Command() { CPF = "00100100199", Description = "Saque", Value = 50 }; _accountRepositoryFake.Setup(x => x.GetByCPF(It.IsAny <string>())) .ReturnsAsync(account); _accountTransactionRepositoryFake.Setup(x => x.Add(It.IsAny <AccountTransaction>())) .ReturnsAsync(Guid.NewGuid()); _accountRepositoryFake.Setup(x => x.Update(It.IsAny <Account>())); // Act var response = await _handler.Handle(command, It.IsAny <CancellationToken>()); // Assert Assert.IsTrue(response); Assert.AreEqual(expectedValue, account.Balance); }
public async Task <IActionResult> DebitAsync([FromBody] AccountDebit.Command accountDebitCommand) { var response = await _mediator.Send(accountDebitCommand); return(Ok(response)); }