public async Task TasteTestShouldReturnFalseGivenTheWestpacFormat() { var subject = Arrange(); subject.ReadTextChunkOverride = file => WestpacChequeCsvTestData.FirstTwoLines1(); var result = await subject.TasteTestAsync(@"transumm.CSV"); Assert.IsFalse(result); }
public async Task LoadShouldThrowGivenBadData() { var subject = Arrange(); subject.ReadLinesOverride = filename => WestpacChequeCsvTestData.BadTestData1(); await subject.LoadAsync("foo.bar", StatementModelTestData.ChequeAccount); Assert.Fail(); }
public async Task LoadShouldParseAGoodFile() { var subject = Arrange(); subject.ReadLinesOverride = f => WestpacChequeCsvTestData.TestData1(); var result = await subject.LoadAsync("foo.bar", StatementModelTestData.ChequeAccount); Assert.AreEqual(1, result.DurationInMonths); Assert.AreEqual(7, result.AllTransactions.Count()); }
public async Task LoadShouldParseAGoodFileAndOutputIt() { var subject = Arrange(); subject.ReadLinesOverride = f => WestpacChequeCsvTestData.TestData1(); var result = await subject.LoadAsync("foo.bar", StatementModelTestData.ChequeAccount); Console.WriteLine("Date Type Description Amount "); foreach (var txn in result.AllTransactions) { Console.WriteLine($"{txn.Date:dd-MMM-yy} {txn.TransactionType,10} {txn.Description,12} {txn.Amount,10}"); } }