public async Task TransferAsync_WithCorrectAmount_ReturnTransactionsResult()
        {
            var transferRequest = new TransferRequest
            {
                FromAccountIban = "AAAA",
                ToAccountIban   = "BBBB",
                Amount          = 1000
            };

            var fromAccount = new Account
            {
                AccountId   = Guid.NewGuid(),
                AccountIban = "AAAA",
                Balance     = 2000,
            };

            var toAccount = new Account
            {
                AccountId   = Guid.NewGuid(),
                AccountIban = "BBBB",
                Balance     = 500,
            };

            accountRepository.GetByAccountIbanAsync(transferRequest.FromAccountIban).Returns(Task.FromResult(fromAccount));
            accountRepository.GetByAccountIbanAsync(transferRequest.ToAccountIban).Returns(Task.FromResult(toAccount));
            accountRepository.UpdateAccountAsync(fromAccount).Returns(Task.FromResult(new Account()));
            accountRepository.UpdateAccountAsync(toAccount).Returns(Task.FromResult(new Account()));
            transferRepository.AddTransferAsync(Arg.Any <Transfer>()).Returns(Task.FromResult(new Transfer()));

            // Act
            var transactionsResult = await transactionsService.TransferAsync(transferRequest);

            // Assert
            Assert.True(transactionsResult.Success);
            Assert.Equal(1000, transactionsResult.Balance);
        }