public async Task <RetrievedDataModel> ExecuteProcess(string pathIn)
        {
            try
            {
                var retrievedDataModel = new RetrievedDataModel();
                var fileLines          = new List <FileLine>();
                var lines = await _retrieveDataService.GetData(pathIn);

                foreach (var line in lines)
                {
                    var splitter = _builderSplitter.GetSplitter(line, _separator);
                    var result   = await splitter.Extract();

                    if (result is CustomerModel)
                    {
                        retrievedDataModel.Custumers.Add((CustomerModel)result);
                    }

                    else if (result is SalesmanModel)
                    {
                        retrievedDataModel.Salesmans.Add((SalesmanModel)result);
                    }

                    else if (result is SalesDataModel)
                    {
                        retrievedDataModel.SalesData.Add((SalesDataModel)result);
                    }
                }

                return(retrievedDataModel);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
Exemple #2
0
        public void ShouldGetCorrectSplitter(Type splitterType, string line, string separator)
        {
            ISplitter splitter = _builderSplitter.GetSplitter(line, separator);

            splitter.GetType().Should().Be(splitterType);
        }