public async Task GetPublicationMethodology_NotFound() { var fileStorageService = new Mock <IFileStorageService>(); fileStorageService .Setup(s => s.GetDeserialized <PublicationMethodologyViewModel>(It.IsAny <string>())) .ReturnsAsync(new NotFoundResult()); var controller = new PublicationController(fileStorageService.Object); var result = await controller.GetPublicationMethodology("missing-publication"); Assert.IsType <NotFoundResult>(result.Result); }
public async Task GetPublicationMethodology() { var methodologyId = Guid.NewGuid(); var fileStorageService = new Mock <IFileStorageService>(); fileStorageService.Setup( s => s.GetDeserialized <PublicationMethodologyViewModel>( "publications/publication-a/publication.json" ) ) .ReturnsAsync(new PublicationMethodologyViewModel { Methodology = new MethodologySummaryViewModel { Id = methodologyId, Slug = "methodologySlug", Summary = "methodologySummary", Title = "methodologyTitle" }, ExternalMethodology = new ExternalMethodologyViewModel { Title = "externalMethodologyTitle", Url = "externalMethodologyUrl" } }); var controller = new PublicationController(fileStorageService.Object); var publicationMethodologyViewModel = (await controller.GetPublicationMethodology("publication-a")).Value; Assert.IsType <PublicationMethodologyViewModel>(publicationMethodologyViewModel); Assert.Equal("externalMethodologyTitle", publicationMethodologyViewModel.ExternalMethodology.Title); Assert.Equal("externalMethodologyUrl", publicationMethodologyViewModel.ExternalMethodology.Url); Assert.Equal(methodologyId, publicationMethodologyViewModel.Methodology.Id); Assert.Equal("methodologySlug", publicationMethodologyViewModel.Methodology.Slug); Assert.Equal("methodologySummary", publicationMethodologyViewModel.Methodology.Summary); Assert.Equal("methodologyTitle", publicationMethodologyViewModel.Methodology.Title); }