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));
        }