static List <ServerLogFileInfo> GetServerLogFileInfo() { CsvToObjectMapper <ServerLogFileInfo> mapper = new CsvToObjectMapper <ServerLogFileInfo> (); mapper.AddMap((t) => t.FileId, "ID"); mapper.AddMap(t => t.FileName, "Name"); List <ServerLogFileInfo> result = new List <ServerLogFileInfo>(); try { var readCsv = new CsvToObjectReader <ServerLogFileInfo>( Parameters.FilePath, new FileService(), mapper, LoggerFactory); PrintHelper.WriteToConsoleAndLog("CsvToObjectReader instance constructed", true, false); var res = readCsv.Read(out IList <ErrorCodeAndDescription> errorsOccured, out bool parseStatus); ValidateAndLogExtractedList("ServerLogFileInfo", Parameters.FilePath, parseStatus, readCsv.ErrorsOccured, readCsv.ExtractFailedRows, res?.Count()); return(res?.ToList()); } catch (CsvReadWriteException csvException) { PrintHelper.WriteToConsoleAndLog($"{csvException.ErrorCode}\n{csvException.Message}\n{csvException.StackTrace}", true, false); PrintHelper.WriteToConsoleAndLog($"{csvException.ErrorCode}\n{csvException.Message}\nCheck Log for more details", false, true); } catch (Exception ex) { PrintHelper.WriteToConsoleAndLog($"{ex.Message}\n{ex.StackTrace}", true, false); PrintHelper.WriteToConsoleAndLog($"{ex.Message}\nCheck Log for more details", true, true); } return(null); }
private List <ServerLogFileInfo> GetServerLogFileInfoList() { string path = TestHelpers.GetPathToTestDataFolder("InputFiles"); _csvToObjectMapperFileInfo = new CsvToObjectMapper <ServerLogFileInfo>(); _csvToObjectMapperFileInfo.AddMap((t) => t.FileId, "ID"); _csvToObjectMapperFileInfo.AddMap(t => t.FileName, "Name"); _readerLogInfo = new CsvToObjectReader <ServerLogFileInfo>($@"{path}\Files_6_rows_sample.csv", _fileServiceReal, _csvToObjectMapperFileInfo, _loggerFactoryCsvReaderMock); return(_readerLogInfo.Read().ToList()); }
private List <ServerLogFactInfo> GetServerLogFactInfoList() { string path = TestHelpers.GetPathToTestDataFolder("InputFiles"); _csvToObjectMapperFactInfo = new CsvToObjectMapper <ServerLogFactInfo>(); _csvToObjectMapperFactInfo.AddMap(t => t.FileId, "FileID"); _csvToObjectMapperFactInfo.AddMap(t => t.SizeInBytes, "SizeInBytes"); _csvToObjectMapperFactInfo.AddMap(t => t.TimeStamp, "Timestamp"); _readerLogFactInfo = new CsvToObjectReader <ServerLogFactInfo>( path + @"\FileStats_18_rows_sample_3_files.csv", new FileService(), _csvToObjectMapperFactInfo, _loggerFactoryCsvReaderMock); return(_readerLogFactInfo.Read().ToList()); }
public void CheckPreValidations() { _readerLogInfo = new CsvToObjectReader <ServerLogFileInfo>(null, null, null, _loggerFactoryCsvReaderMock); bool preExtractValidation = _readerLogInfo.PreExtractValidation(); preExtractValidation.Should().Be(false, " all the mandatory supplied parameters were not supplied"); _readerLogInfo.ErrorsOccured.Count.Should().BeGreaterThan(0, "at least one error should be recorded"); _readerLogInfo.ErrorsOccured.Any(errors => errors.ErrorCode == ErrorCodes.NullPath).Should() .Be(true, "we passed null parameters"); _readerLogInfo.ErrorsOccured.Any(errors => errors.ErrorDescription == "Please supply the file content or provide the path to the file in constructor argument").Should() .Be(true, "we passed null parameters"); _readerLogInfo.ErrorsOccured.Any(errors => errors.ErrorDescription == @"Constructor parameter '_mapper' cannot be null").Should() .Be(true, "we haven't passed mapper instance to constructor"); }
public void InvalidPathShouldNotbeAccepted() { _readerLogInfo = new CsvToObjectReader <ServerLogFileInfo>($@"X:\InvalidFolder\InvalidFile.csv", new FileService(), null, _loggerFactoryCsvReaderMock); bool preExtractValidation = _readerLogInfo.PreExtractValidation(); preExtractValidation.Should().Be(false, "Invalid Path was supplied"); _readerLogInfo.ErrorsOccured.Count.Should().BeGreaterThan(0, "at least one error should be recorded"); _readerLogInfo.ErrorsOccured.Any(errors => errors.ErrorDescription == @"X:\InvalidFolder\InvalidFile.csv does not exists").Should() .Be(true, "we passed Invalid file path as constructor parameter"); _readerLogInfo = new CsvToObjectReader <ServerLogFileInfo>($@"X:\InvalidFolder\InvalidFile.pdf", new FileService(), null, _loggerFactoryCsvReaderMock); preExtractValidation = _readerLogInfo.PreExtractValidation(); _readerLogInfo.ErrorsOccured.Any(errors => errors.ErrorDescription.Contains(@"Invalid file extension")).Should() .Be(true, "we passed Invalid file extension"); }