public IActionResult ViewFramework(string tabname, int frameworkId, int?frameworkCompetencyGroupId = null, int?frameworkCompetencyId = null) { var adminId = GetAdminId(); var detailFramework = frameworkService.GetFrameworkDetailByFrameworkId(frameworkId, adminId); var model = new FrameworkViewModel() { DetailFramework = detailFramework }; switch (tabname) { case "Details": model.Collaborators = frameworkService.GetCollaboratorsForFrameworkId(frameworkId); model.FrameworkDefaultQuestions = frameworkService.GetFrameworkDefaultQuestionsById(frameworkId, adminId); break; case "Structure": model.FrameworkCompetencyGroups = frameworkService.GetFrameworkCompetencyGroups(frameworkId).ToList(); model.FrameworkCompetencies = frameworkService.GetFrameworkCompetenciesUngrouped(frameworkId); break; case "Comments": model.CommentReplies = frameworkService.GetCommentsForFrameworkId(frameworkId, adminId); break; } return(View("Developer/Framework", model)); }
public IActionResult ViewFramework(string tabname, int frameworkId, int?frameworkCompetencyGroupId = null, int?frameworkCompetencyId = null) { var adminId = GetAdminId(); var detailFramework = frameworkService.GetFrameworkDetailByFrameworkId(frameworkId, adminId); var routeData = new Dictionary <string, string> { { "frameworkId", detailFramework?.ID.ToString() } }; var model = new FrameworkViewModel() { DetailFramework = detailFramework, }; switch (tabname) { case "Details": model.Collaborators = frameworkService.GetCollaboratorsForFrameworkId(frameworkId); model.Flags = frameworkService.GetCustomFlagsByFrameworkId(frameworkId, null); model.FrameworkDefaultQuestions = frameworkService.GetFrameworkDefaultQuestionsById(frameworkId, adminId); model.TabNavLinks = new TabsNavViewModel(FrameworkTab.Details, routeData); break; case "Structure": model.FrameworkCompetencyGroups = frameworkService.GetFrameworkCompetencyGroups(frameworkId).ToList(); model.CompetencyFlags = frameworkService.GetCompetencyFlagsByFrameworkId(frameworkId, null, selected: true); model.FrameworkCompetencies = frameworkService.GetFrameworkCompetenciesUngrouped(frameworkId); model.TabNavLinks = new TabsNavViewModel(FrameworkTab.Structure, routeData); break; case "Comments": model.CommentReplies = frameworkService.GetCommentsForFrameworkId(frameworkId, adminId); model.TabNavLinks = new TabsNavViewModel(FrameworkTab.Comments, routeData); break; } return(View("Developer/Framework", model)); }
public void ShouldShowQualificationAvoidingCompletionIfItsEmpty() { var detailPage = new Framework(); const string competencyTitle = "Test competency qualification"; const string knowledgeTitle = "Test knowledge qualification"; const string combinedTitle = "Test combined qualification"; var viewModel = new FrameworkViewModel { Title = "title1", CompetencyQualification = new[] { competencyTitle }, KnowledgeQualification = new[] { knowledgeTitle }, CombinedQualificiation = new[] { combinedTitle }, CompletionQualifications = string.Empty }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, "li").Should().Contain(competencyTitle); GetPartial(html, "li", 2).Should().Contain(knowledgeTitle); GetPartial(html, "li", 3).Should().Contain(combinedTitle); GetPartial(html, ".completionQualifications").Should().BeNullOrEmpty(); GetPartial(html, ".qualificationsStatic") .Should() .Be("Your chosen training provider can advise you about the qualifications open to apprentices as they can change depending on individual and other circumstances."); }
private void ProcessViewModel(FrameworkViewModel viewModel, List <FundingPeriod> fundingPeriods, DateTime?effectiveFrom, string ukprn) { viewModel.FindApprenticeshipTrainingText = _buttonTextService.GetFindTrainingProvidersText(HttpContext); var nextFundingCap = _fundingBandService.GetNextFundingPeriodWithinTimePeriod(fundingPeriods, effectiveFrom, _nextFundingPeriodMessageCutoffMonths); viewModel.NextEffectiveFrom = nextFundingCap?.EffectiveFrom; viewModel.NextFundingCap = nextFundingCap?.FundingCap; viewModel.Ukprn = ukprn; }
public void DoNotShowExpireMessage() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1", ExpiryDateString = null }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".expire-date").Should().BeEmpty(); }
public void ShouldShowStaticTextWhenEntryRequirementsAreEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1" }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".entry-requirements").Should().Be("Your chosen training provider can advise you about entry requirements for apprentices."); }
public void ShowJobRoles() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1", JobRoles = new[] { "SFA master", "DAS master" } }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".job-roles ul li").Should().Be("SFA master"); GetPartial(html, ".job-roles ul li", 2).Should().Be("DAS master"); }
public void ShowExpireMessage() { var detailPage = new Framework(); var date = default(DateTime).AddYears(1881).AddMonths(8).AddDays(4); var viewModel = new FrameworkViewModel { Title = "title1", ExpiryDateString = date.ToString("d MMMM yyyy") }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".notice").Should().Contain("This apprenticeship is available to new starters until 5 September 1882"); }
public void ShouldShowStaticTextWhenSuitableRolesAreEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1" }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".job-roles").Should().Be("Your chosen training provider can advise you about the kinds of skills apprentices will learn."); }
public void ShouldNotShowOverviewRoleWhenItsEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1" }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".overviewTitle").Should().BeEmpty(); GetPartial(html, ".overviewText").Should().BeEmpty(); }
public void FrameworkDetailPageWithErrorParameter(string hasErrorParmeter, bool expected) { var mockFrameworkRepository = new Mock <IGetFrameworks>(); var stubFrameworkViewModel = new FrameworkViewModel { FrameworkId = 123, Title = "Title test", FrameworkName = "Framework name test", FrameworkCode = 321, Level = 3, PathwayName = "Pathway name test", PathwayCode = 4 }; var framework = new Framework { Title = "Hello", }; mockFrameworkRepository.Setup(x => x.GetFrameworkById(It.IsAny <int>())).Returns(framework); var mockMappingServices = new Mock <IMappingService>(); mockMappingServices.Setup( x => x.Map <Framework, FrameworkViewModel>(It.IsAny <Framework>())) .Returns(stubFrameworkViewModel); var mockRequest = new Mock <HttpRequestBase>(); mockRequest.Setup(x => x.UrlReferrer).Returns(new Uri("http://www.abba.co.uk")); var context = new Mock <HttpContextBase>(); context.SetupGet(x => x.Request).Returns(mockRequest.Object); ApprenticeshipController controller = new ApprenticeshipController(null, null, mockFrameworkRepository.Object, null, mockMappingServices.Object, new Mock <IProfileAStep>().Object, null); controller.ControllerContext = new ControllerContext(context.Object, new RouteData(), controller); controller.Url = new UrlHelper( new RequestContext(context.Object, new RouteData()), new RouteCollection()); var result = controller.Framework(1, hasErrorParmeter) as ViewResult; Assert.NotNull(result); var actual = ((FrameworkViewModel)result.Model).HasError; Assert.AreEqual(expected, actual); }
public void ShouldShowStaticTextWhenQualificationsAreEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1" }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".qualifications").Should().BeEmpty(); GetPartial(html, ".completionQualifications").Should().BeNullOrEmpty(); GetPartial(html, ".qualificationsStatic") .Should() .Be("Your chosen training provider can advise you about the qualifications open to apprentices as they can change depending on individual and other circumstances."); }
public void ShouldShowSuitableRolesWhenItsNotEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1", JobRoles = new List <string> { "jobRole" } }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".job-roles").Should().Contain("jobRole"); GetPartial(html, ".job-roles").Should().Contain("Your chosen training provider can advise you about the kinds of skills apprentices will learn."); }
public void ShouldShowQualificationAvoidingQualificationIfItsEmpty() { var detailPage = new Framework(); var viewModel = new FrameworkViewModel { Title = "title1", CompetencyQualification = new List <string>(), KnowledgeQualification = new List <string>(), CombinedQualificiation = new List <string>(), CompletionQualifications = "Test completion qualifications" }; var html = detailPage.RenderAsHtml(viewModel).ToAngleSharp(); GetPartial(html, ".qualifications").Should().BeEmpty(); GetPartial(html, ".completionQualifications").Should().Be("Test completion qualifications"); GetPartial(html, ".qualificationsStatic") .Should() .Be("Your chosen training provider can advise you about the qualifications open to apprentices as they can change depending on individual and other circumstances."); }
public void ShouldReturnFramework() { // Assign var response = new GetFrameworkResponse(); var viewModel = new FrameworkViewModel(); _mockMediator.Setup(m => m.Send(It.IsAny <GetFrameworkQuery>(), It.IsAny <CancellationToken>())) .ReturnsAsync(response); _mockMappingService.Setup(m => m.Map <GetFrameworkResponse, FrameworkViewModel>(response)) .Returns(viewModel); // Act var result = _sut.Framework("1", "test").Result as ViewResult; // Assert _mockMediator.Verify(m => m.Send(It.IsAny <GetFrameworkQuery>(), It.IsAny <CancellationToken>())); _mockMappingService.Verify(m => m.Map <GetFrameworkResponse, FrameworkViewModel>(response)); result.Model.Should().Be(viewModel); }