public async Task ShouldBeDefinedResult()
        {
            var path          = "my-drive://localfile";
            var lines         = GetStrings(10);
            var stringBuilder = GetStringBuilderFromListString(lines);
            var logResponse   = new FileResponse {
                Value = stringBuilder.ToString()
            };

            _reader.Setup(i => i.GetData(It.IsAny <FileRequest>())).ReturnsAsync(logResponse);

            var result = await _retrivedataservice.GetData(path);

            for (int i = 0; i < lines.Count(); i++)
            {
                result.ElementAt(i).Should().Be(lines.ElementAt(i));
            }
        }
        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);
            }
        }