public async Task Completed_action_should_have_banner_text() { // Given A.CallTo(() => config[ConfigurationExtensions.UseSignposting]).Returns("true"); const string bannerText = "Banner text"; A.CallTo(() => centresDataService.GetBannerText(CentreId)).Returns(bannerText); // When var completedViewModel = await CompletedCourseHelper.CompletedViewModelFromController(controller); // Then completedViewModel.BannerText.Should().Be(bannerText); }
public async Task Completed_action_should_return_view_result_with_correct_api_accessibility_flag( bool apiIsAccessible ) { // Given A.CallTo(() => config[ConfigurationExtensions.UseSignposting]).Returns("true"); var completedCourses = new[] { CompletedCourseHelper.CreateDefaultCompletedCourse(), CompletedCourseHelper.CreateDefaultCompletedCourse(), }; var completedActionPlanResources = Builder <ActionPlanResource> .CreateListOfSize(2).Build().ToList(); var mappedActionPlanResources = completedActionPlanResources.Select(r => new CompletedActionPlanResource(r)); var bannerText = "bannerText"; A.CallTo(() => courseDataService.GetCompletedCourses(CandidateId)).Returns(completedCourses); A.CallTo(() => actionPlanService.GetCompletedActionPlanResources(CandidateId)) .Returns((completedActionPlanResources, apiIsAccessible)); A.CallTo(() => centresDataService.GetBannerText(CentreId)).Returns(bannerText); var allItems = completedCourses.Cast <CompletedLearningItem>().ToList(); allItems.AddRange(mappedActionPlanResources); SearchSortFilterAndPaginateTestHelper .GivenACallToSearchSortFilterPaginateServiceReturnsResult <CompletedLearningItem>( searchSortFilterPaginateService ); // When var result = await controller.Completed(); // Then var expectedModel = new CompletedPageViewModel( new SearchSortFilterPaginationResult <CompletedLearningItem>( new PaginationResult <CompletedLearningItem>(allItems, 1, 1, 10, 4, true), null, "Completed", "Descending", null ), apiIsAccessible, config, bannerText ); result.Should().BeViewResult() .Model.Should().BeEquivalentTo(expectedModel); }