public void StoreFileTestReturnsFullFileName() { // Arrange // Mock the configuration file var fileName = "test.csv"; TestFileHelper tstHelper = new TestFileHelper(fileName, ""); // Create the file service instance FileService fileService = new FileService( tstHelper.config.Object); // Expected result var expectedFullFileName = string.Format( @"{0}\{1}", tstHelper.config.Object.GetValue <string>("Files:filespath"), fileName); // Act var actualResult = fileService.StoreFile(tstHelper.fileMock.Object); // Assert Assert.IsNotNull(actualResult); Assert.IsNotNull(actualResult.Result); Assert.AreEqual <string>(expectedFullFileName, actualResult.Result); }
public void ParseCsvFileTestReturnsNotHeadedModelForNotHeadedFile() { // Arrange var filePath = "InputData.csv"; TestParserHelper parserHelper = new TestParserHelper(); TestFileHelper tstHelper = new TestFileHelper(filePath, parserHelper.notHeadedContent); CsvFileHandler csvFileHandler = new CsvFileHandler( new ValidationService(), new FileService(tstHelper.config.Object), new ParsingService()); // Expected result var expectedResult = new CsvHandleResult(); expectedResult.Success = true; expectedResult.ParsedCsvContent = parserHelper.expectedResultNoHeader; // Act var actualResult = csvFileHandler.ParseCsvFile(tstHelper.fileMock.Object, false); // Assert Assert.IsNotNull(actualResult); Assert.IsNotNull(actualResult.Result); Assert.AreEqual(expectedResult, actualResult.Result); }
public void PostTestWrongExtensionReturnsErrorMessage() { //Arrange var txtFileName = "Data.txt"; TestFileHelper tstHelper = new TestFileHelper(txtFileName, ""); FilesController fileController = new FilesController(tstHelper.config.Object, new CsvFileHandler(new ValidationService(), new FileService(tstHelper.config.Object), new ParsingService())); // Expected result var expectedResult = new NotFoundObjectResult(new { message = $"Selected file, {txtFileName}, does not have supported format CSV" }); //Act var actualResult = fileController.Post(new List <IFormFile>() { tstHelper.fileMock.Object }, true); //Assert Assert.IsNotNull(actualResult); Assert.IsNotNull(actualResult.Result); Assert.AreEqual(expectedResult.StatusCode, ((NotFoundObjectResult)actualResult.Result).StatusCode); Assert.AreEqual(expectedResult.Value.ToString(), ((NotFoundObjectResult)actualResult.Result).Value.ToString()); }
public void PostTestReturnsHeadedModelForHeadedFile() { // Arrange var filePath = "InputData.csv"; TestParserHelper parserHelper = new TestParserHelper(); TestFileHelper tstHelper = new TestFileHelper(filePath, parserHelper.headedContent); FilesController fileController = new FilesController(tstHelper.config.Object, new CsvFileHandler(new ValidationService(), new FileService(tstHelper.config.Object), new ParsingService())); // Expected result var expectedCsvResult = new CsvHandleResult(); expectedCsvResult.Success = true; expectedCsvResult.ParsedCsvContent = parserHelper.headedExpectedResult; var expectedResult = new OkObjectResult(new { isHeadedFiles = true, resultList = new List <CsvHandleResult>() { expectedCsvResult } }); // Act var actualResult = fileController.Post(new List <IFormFile>() { tstHelper.fileMock.Object }, true); // Assert Assert.IsNotNull(actualResult); Assert.IsNotNull(actualResult.Result); Assert.AreEqual(expectedResult.StatusCode, ((OkObjectResult)actualResult.Result).StatusCode); Assert.AreEqual(expectedResult.Value.ToString(), ((OkObjectResult)actualResult.Result).Value.ToString()); }
public void ParseCsvFileTestWrongExtensionReturnsErrorMessage() { //Arrange var txtFileName = "Data.txt"; TestFileHelper tstHelper = new TestFileHelper(txtFileName, ""); CsvFileHandler csvFileHandler = new CsvFileHandler( new ValidationService(), new FileService(tstHelper.config.Object), new ParsingService()); // Expected result var expectedResult = new CsvHandleResult(); expectedResult.ErrorMessage = $"Selected file, {txtFileName}, does not have supported format CSV"; //Act var actualResult = csvFileHandler.ParseCsvFile(tstHelper.fileMock.Object, true); //Assert Assert.IsNotNull(actualResult); Assert.IsNotNull(actualResult.Result); Assert.AreEqual(expectedResult, actualResult.Result); }