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);
        }