From 6f290fab0c3814f30951d3c4d1bc94f4bcc1aa8d Mon Sep 17 00:00:00 2001 From: "GADDAM, Rajesh" Date: Tue, 18 Aug 2026 17:28:25 +0100 Subject: [PATCH] 16-19 (FE) - Story 10 - Retention measure interim implementation - Implemented changes to dispay retention measure inset text for all level3 and level2 qualifications - Added unit tests --- .../Views/KS5/Level2Qualifications.cshtml | 6 +++++ .../Views/KS5/Level3Qualifications.cshtml | 6 +++++ .../KS5/Level2QualificationsPageTests.cs | 19 ++++++++++++++++ .../KS5/Level3QualificationsPageTests.cs | 22 +++++++++++++++++++ 4 files changed, 53 insertions(+) diff --git a/SAPPub.Web/Areas/Profiles/Views/KS5/Level2Qualifications.cshtml b/SAPPub.Web/Areas/Profiles/Views/KS5/Level2Qualifications.cshtml index aad973db..9f2f7314 100644 --- a/SAPPub.Web/Areas/Profiles/Views/KS5/Level2Qualifications.cshtml +++ b/SAPPub.Web/Areas/Profiles/Views/KS5/Level2Qualifications.cshtml @@ -64,6 +64,12 @@ @* Average result *@ + @* Student retention *@ +

Student retention

+
+ Measures on student retention will be available shortly in a future release. +
+ Academic performance: Level 3 qualifications Academic performance: English and maths diff --git a/SAPPub.Web/Areas/Profiles/Views/KS5/Level3Qualifications.cshtml b/SAPPub.Web/Areas/Profiles/Views/KS5/Level3Qualifications.cshtml index 53c86dc5..0ce35d87 100644 --- a/SAPPub.Web/Areas/Profiles/Views/KS5/Level3Qualifications.cshtml +++ b/SAPPub.Web/Areas/Profiles/Views/KS5/Level3Qualifications.cshtml @@ -65,6 +65,12 @@ @* Average result *@ + @* Student retention *@ +

Student retention

+
+ Measures on student retention will be available shortly in a future release. +
+ @if (Model.Level3Qualification == Level3.ALevel) { @* Additional data *@ diff --git a/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level2QualificationsPageTests.cs b/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level2QualificationsPageTests.cs index 65fd8b8c..ff7bf609 100644 --- a/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level2QualificationsPageTests.cs +++ b/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level2QualificationsPageTests.cs @@ -262,4 +262,23 @@ public async Task Level2QualificationsPage_Displays_AverageResult(Level2 qualifi Assert.Contains(_level2QualificationModel.AverageResult.England.Grade.ToString(), doc.GetTableCellContentByIdAndIndex("average-result-current-year-table", 3, 0)); Assert.Contains(_level2QualificationModel.AverageResult.England.Points.Value!.Value.ToString(), doc.GetTableCellContentByIdAndIndex("average-result-current-year-table", 3, 1)); } + + [Theory] + [InlineData(Level2.TechCert)] + public async Task Level2QualificationsPage_Displays_StudentRetention_Info(Level2 qualification) + { + // Arrange + SetupMocks(qualification); + var pageRouteUrl = $"{_pageRoute}/{_qualificationType.ToString().ToLower()}"; + var url = BuildUrl(_establishment.URN, _establishment.EstablishmentName, pageRouteUrl); + + // Act + var doc = await Fixture.BrowseToPage(url); + + // Assert + var studentRetentionInsetText = doc.QuerySelector("#student-retention"); + + Assert.NotNull(studentRetentionInsetText); + Assert.Equal("Measures on student retention will be available shortly in a future release.", studentRetentionInsetText.TextContent.Trim()); + } } \ No newline at end of file diff --git a/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level3QualificationsPageTests.cs b/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level3QualificationsPageTests.cs index 05cc1cd4..866521a6 100644 --- a/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level3QualificationsPageTests.cs +++ b/Tests/SAPPub.Web.Tests/Unit/Page/Areas/Profiles/KS5/Level3QualificationsPageTests.cs @@ -426,4 +426,26 @@ public async Task Level3QualificationsPage_Displays_AdvancedLevelMathsQualificat Assert.Null(advancedLevelMathsQualTable); } } + + [Theory] + [InlineData(Level3.ALevel)] + [InlineData(Level3.Academic)] + [InlineData(Level3.AppliedGeneral)] + [InlineData(Level3.TechLevel)] + public async Task Level3QualificationsPage_Displays_StudentRetention_Info(Level3 qualification) + { + // Arrange + SetupMocks(qualification); + var pageRouteUrl = $"{_pageRoute}/{_qualificationType.ToString().ToLower()}"; + var url = BuildUrl(_establishment.URN, _establishment.EstablishmentName, pageRouteUrl); + + // Act + var doc = await Fixture.BrowseToPage(url); + + // Assert + var studentRetentionInsetText = doc.QuerySelector("#student-retention"); + + Assert.NotNull(studentRetentionInsetText); + Assert.Equal("Measures on student retention will be available shortly in a future release.", studentRetentionInsetText.TextContent.Trim()); + } }