public void Setup() { BankMetadata bankMetadata1 = new BankMetadata { Date = Convert.ToDateTime("2010-01-01"), Amount = 100.00M, UserComments = "Comment 1", Merchant = "Payee 1", TransactionCategory = "Money Received from Employee" }; BankMetadata bankMetadata2 = new BankMetadata { Date = Convert.ToDateTime("2011-01-01"), Amount = 500.00M, UserComments = "Comment, 2", Merchant = "Payee 2", TransactionCategory = "Cash received from clients" }; BankMetadata bankMetadata3 = new BankMetadata { Date = Convert.ToDateTime("2011-01-01"), Amount = 500.00M, UserComments = "Comment, 2", Merchant = "Payee 3", TransactionCategory = "Cash received from clients" }; BankMetadata bankMetadata4 = new BankMetadata { Date = Convert.ToDateTime("2013-01-01"), Amount = 500.00M, UserComments = "Comment, 2", Merchant = "Payee 4", TransactionCategory = "Cash received from clients" }; _bankMetadataList1.Add(bankMetadata1); _bankMetadataList1.Add(bankMetadata2); _bankMetadataList2.Add(bankMetadata2); _bankMetadataList2.Add(bankMetadata3); _bankMetadataList3.Add(bankMetadata1); _bankMetadataList3.Add(bankMetadata2); _bankMetadataList3.Add(bankMetadata3); _bankMetadataList4.Add(bankMetadata1); _bankMetadataList4.Add(bankMetadata2); _bankMetadataList4.Add(bankMetadata3); _bankMetadataList4.Add(bankMetadata4); }
public void Setup() { BankMetadata b1 = new BankMetadata { Date = Convert.ToDateTime("2010-01-01"), Amount = 100.00M, UserComments = "Comment 1", Merchant = "Payee 1", TransactionCategory = "Money Received from Employee" }; BankMetadata b2 = new BankMetadata { Date = Convert.ToDateTime("2011-01-01"), Amount = 500.00M, UserComments = "Comment, 2", Merchant = "Payee 2", TransactionCategory = "Cash received from clients" }; BankMetadata b3 = new BankMetadata { Date = Convert.ToDateTime("2011-01-01"), Amount = 500.00M, UserComments = "Comment, 2", Merchant = "Payee 3", TransactionCategory = "Cash received from clients" }; _bankMetadataList1.Add(b1); _bankMetadataList1.Add(b2); _bankMetadataList1.Add(b3); var repositoryMock = new Mock <IBankMetadata>(); repositoryMock.Setup(r => r.GetBankMetadata()).Returns(_bankMetadataList1); InputDataSource inputSource = new InputDataSource { InputDataSourceType = DataSource.FileSystem, InputDataSourceName = @"C:\Temp" }; repositoryMock.Setup(r => r.GetSourceDetails()).Returns(inputSource); _repo = repositoryMock.Object; var mock = new Mock <ILogger <BankmetadataController> >(); _logger = mock.Object; }
/// <summary> /// Controller method, takes in CSV string and returns IEnumerable of BankMetadata /// </summary> public IEnumerable <BankMetadata> ExtractBankMetadataFromCsvString(string csvContent) { List <BankMetadata> txnList = new List <BankMetadata>(); try { var csv = new CsvReader(new StringReader(csvContent)); csv.Configuration.Delimiter = Delimiter; var anonymousTypeDefinition = new { date = string.Empty, bankdescription = string.Empty, accountnumber = string.Empty, employeename = string.Empty, description = string.Empty, usercomments = string.Empty, amount = string.Empty, net = string.Empty, vat = string.Empty, }; var txnListInput = csv.GetRecords(anonymousTypeDefinition); foreach (var input in txnListInput) { BankMetadata row = new BankMetadata { Amount = Convert.ToDecimal(input.amount), Merchant = input.bankdescription, Date = Convert.ToDateTime(input.date), UserComments = input.usercomments, TransactionCategory = input.description }; txnList.Add(row); } return(txnList); } catch (Exception ex) { throw new FieldAccessException("Badly formatted CSV string", ex); } }