public void UploadedZippedDatafileIsValid() { var(fileTypeService, blobStorageService) = Mocks(); var service = new DataArchiveValidationService(blobStorageService.Object, fileTypeService.Object); var archive = CreateFormFileFromResource("data-zip-valid.zip"); fileTypeService .Setup(s => s.HasMatchingMimeType(archive, It.IsAny <IEnumerable <Regex> >())) .ReturnsAsync(() => true); fileTypeService .Setup(s => s.HasMatchingEncodingType(archive, It.IsAny <IEnumerable <string> >())) .Returns(() => true); var result = service.ValidateDataArchiveFile(Guid.NewGuid(), archive).Result; Assert.True(result.IsRight); }
public void UploadedZippedDatafileIsInvalid() { var(fileTypeService, blobStorageService) = Mocks(); var service = new DataArchiveValidationService(blobStorageService.Object, fileTypeService.Object); var archive = CreateFormFileFromResource("data-zip-invalid.zip"); fileTypeService .Setup(s => s.HasMatchingMimeType(archive, It.IsAny <IEnumerable <Regex> >())) .ReturnsAsync(() => true); fileTypeService .Setup(s => s.HasMatchingEncodingType(archive, It.IsAny <IEnumerable <string> >())) .Returns(() => true); var result = service.ValidateDataArchiveFile(Guid.NewGuid(), archive).Result; Assert.True(result.IsLeft); Assert.IsAssignableFrom <BadRequestObjectResult>(result.Left); var details = (ValidationProblemDetails)((BadRequestObjectResult)result.Left).Value; Assert.Equal("DATA_ZIP_FILE_DOES_NOT_CONTAIN_CSV_FILES", details.Errors[""].First()); }