public void LoadJsonMapping_IncorrectType_Exception() { var exp = Assert.Throws <Exception> (() => CsvToQifHelper.LoadJson($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/invmap.json", "XX")); Assert.Equal("Incorrect account type", exp.Message); }
public void WriteQif_WithNull_ListItems() { var qifList = new List <string> (); qifList.Add("Item1"); qifList.Add(null); qifList.Add("Item2"); CsvToQifHelper.WriteQif(qifList, _fileFixture.TempFolder + "qifout.qif"); _fileFixture.AssertFiles($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/Expected/qifout.qif", _fileFixture.TempFolder + "qifout.qif"); }
public void QifValue_ActionType_With_No_MappedValue_Expected_Null() { using (var reader = new StreamReader($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/noninvmap_all_splits.csv")) using (var csv = new CsvReader(reader)) { csv.Read(); csv.ReadHeader(); while (csv.Read()) { var dtVal = CsvToQifHelper.QifValue(new ClearedStatus() { }, csv); Assert.Null(dtVal); } } }
static void Main(string[] args) { var pArgs = Parser.Default.ParseArguments <Options> (args).WithParsed <Options> ( o => { try { var mapping = CsvToQifHelper.LoadJson(o.MappingFile, o.AccountType); var acctList = CsvToQifHelper.BuidlAcctInformation(o.AccountName, o.AccountType); var qifList = CsvToQifHelper.CreateQif(mapping, o.CsvFile, o.AccountType); acctList.AddRange(qifList); CsvToQifHelper.WriteQif(acctList, o.Output); } catch (Exception exp) { Console.WriteLine("Failed processing : " + exp.Message); } }); }
public void QifValue_ActionType_WithValue() { using (var reader = new StreamReader($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/noninvmap_all_splits.csv")) using (var csv = new CsvReader(reader)) { csv.Read(); csv.ReadHeader(); while (csv.Read()) { var dtVal = CsvToQifHelper.QifValue(new DateType() { FieldName = "Date" }, csv); Assert.Equal("D5/22/2017", dtVal); } } }
public void LoadJsonMapping_Inv() { var mapping = CsvToQifHelper.LoadJson($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/noninvmap.json", "B"); var nonMap = mapping as NonInvestmentAccountsMapping <string>; Assert.Equal("Date", nonMap.DateField); Assert.Equal("Amount", nonMap.AmountField); Assert.Equal("Clr", nonMap.ClearedField); Assert.Equal("Description/Category", nonMap.CategoryField); Assert.Equal("Memo/Notes", nonMap.MemoField); Assert.Equal("Payee/Security", nonMap.PayeeField); Assert.Equal("Reference", nonMap.RefOrCheckNumberField); Assert.Equal("Amount", nonMap.SplitAmountField); Assert.Equal("Description/Category", nonMap.SplitCategory); Assert.Equal("Memo/Notes", nonMap.SplitMemoField); Assert.Equal("Split", nonMap.SplitIndicatorField); }
public void LoadJsonMapping_Non() { var mapping = CsvToQifHelper.LoadJson($"{Directory.GetCurrentDirectory()}/Transform/TestFiles/invmap.json", "I"); var nonMap = mapping as InvestmentAccountsMapping <string>; Assert.Equal("Date", nonMap.DateField); Assert.Equal("Action", nonMap.ActionField); Assert.Equal("Security", nonMap.SecurityField); Assert.Equal("Price", nonMap.PriceField); Assert.Equal("Quantity", nonMap.QuantityField); Assert.Equal("Transaction Amount", nonMap.TransactionAmountField); Assert.Equal("Clr", nonMap.ClearedStatusField); Assert.Equal("Text", nonMap.TextField); Assert.Equal("Memo", nonMap.MemoField); Assert.Equal("Commission", nonMap.CommisionField); Assert.Equal("Account Transfer", nonMap.AccountForTransferField); Assert.Equal("Amount Transfer", nonMap.AmountTransferedField); }