Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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;
        }
Esempio n. 3
0
        /// <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);
            }
        }