public async Task AdminController_POST_Upload_When_FileName_Length_Is_Zero_Returns_No_Content_Found() { // Arrange var someFileName = "SomeFilename.csv"; var uploadObject = new UploadViewModel.Upload { Filepath = someFileName }; var uploadViewModel = new UploadViewModel(); uploadViewModel.Uploads.Add(uploadObject); _TestAdminController.StashModel(uploadViewModel); var fileToUpload = Mock.Of <IFormFile>( f => f.FileName == someFileName && f.Length == 0 // Setting needed to make sure the method fails the way this test expects it to ); var listOfFiles = new List <IFormFile>(); listOfFiles.Add(fileToUpload); // Act IActionResult result = await _TestAdminController.Uploads(listOfFiles, UPLOAD_COMMAND); // Assert Assert.NotNull(result, "Expected an object returning from the POST call to 'Uploads'"); Assert.GreaterOrEqual( 1, _TestAdminController.ModelState[""].Errors.Count, "Expected at least one error object to have been returned from 'Uploads', since this test is sending an invalid file to upload."); Assert.AreEqual($"No content found in '{fileToUpload.FileName}'", _TestAdminController.ModelState[""].Errors[0].ErrorMessage); }
public async Task AdminController_POST_Upload_When_FileName_Does_Not_Match_Returns_Invalid_Filename() { // Arrange var someFileName = "SomeFilename"; var uploadObject = new UploadViewModel.Upload { Filepath = someFileName + "InvalidFilename" + ".csv" }; var uploadViewModel = new UploadViewModel(); uploadViewModel.Uploads.Add(uploadObject); _TestAdminController.StashModel(uploadViewModel); var fileToUpload = Mock.Of <IFormFile>(f => f.FileName == someFileName); var listOfFiles = new List <IFormFile>(); listOfFiles.Add(fileToUpload); // Act IActionResult result = await _TestAdminController.Uploads(listOfFiles, UPLOAD_COMMAND); // Assert Assert.NotNull(result, "Expected an object returning from the POST call to 'Uploads'"); Assert.GreaterOrEqual( 1, _TestAdminController.ModelState[""].Errors.Count, "Expected at least one error object to have been returned from 'Uploads', since this test is sending an invalid file to upload."); Assert.AreEqual($"Invalid filename '{fileToUpload.FileName}'", _TestAdminController.ModelState[""].Errors[0].ErrorMessage); }