コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }