public async Task OnTransactionImport_AddsCorrectNumberOfTransactionsToGrid()
        {
            TransactionsImporter.Setup(importer => importer.Import(It.IsAny <string>(), It.IsAny <AccountTransactionColumnMap>())).ReturnsAsync(
                new List <AccountTransaction> {
                new AccountTransaction {
                    AccountId = 1,
                    Date      = DateTime.Today,
                    Outflow   = 20
                },
                new AccountTransaction {
                    AccountId = 2,
                    Date      = DateTime.Today,
                    Outflow   = 20
                },
                new AccountTransaction {
                    AccountId = 3,
                    Date      = DateTime.Today,
                    Outflow   = 20
                }
            }
                );
            await transactionsGridViewModel.ImportTransactionsCommand.ExecuteAsync();

            Assert.AreEqual(3, transactionsGridViewModel.AccountTransactions.Count);
        }
        public async Task OnTransactionImport_WillNotDuplicateTransactions_WithMatchingAmountsAndAccountsAndDates()
        {
            TransactionsImporter.Setup(importer => importer.Import(It.IsAny <string>(), It.IsAny <AccountTransactionColumnMap>())).ReturnsAsync(
                new List <AccountTransaction> {
                new AccountTransaction {
                    AccountId = 1,
                    Date      = DateTime.Today,
                    Outflow   = 20,
                }
            }
                );

            await transactionsGridViewModel.ImportTransactionsCommand.ExecuteAsync();

            TransactionsImporter.Setup(importer => importer.Import(It.IsAny <string>(), It.IsAny <AccountTransactionColumnMap>())).ReturnsAsync(
                new List <AccountTransaction> {
                new AccountTransaction {
                    AccountId = 1,
                    Date      = DateTime.Today,
                    Outflow   = 20,
                    Memo      = "The cheeky duplicate"
                },
                new AccountTransaction {
                    AccountId = 2,
                    Date      = DateTime.Today,
                    Outflow   = 20
                },
                new AccountTransaction {
                    AccountId = 1,
                    Date      = DateTime.Today.AddDays(1),
                    Outflow   = 20
                },
                new AccountTransaction {
                    AccountId = 1,
                    Date      = DateTime.Today,
                    Outflow   = 30
                }
            }
                );

            await transactionsGridViewModel.ImportTransactionsCommand.ExecuteAsync();

            Assert.AreEqual(4, transactionsGridViewModel.AccountTransactions.Count);
        }