From 2e4d19a2e78bf4290874d1eeae91729dcad51453 Mon Sep 17 00:00:00 2001 From: Jack Marshall Date: Tue, 2 Jul 2024 11:16:27 +0100 Subject: [PATCH] Added error for actual date fa signed required when funding agreement signed is checked --- .../tasklist-funding-agreement.cy.ts | 44 ++++++++++--------- .../EditFundingAgreementTask.cshtml.cs | 11 +++++ 2 files changed, 35 insertions(+), 20 deletions(-) diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement.cy.ts b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement.cy.ts index 0a2cb56e3..d4c077c2c 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement.cy.ts +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects.CypressTests/cypress/e2e/tasks/pre-opening/tasklist-funding-agreement.cy.ts @@ -78,37 +78,41 @@ describe("Testing Funding agreement Task", () => { .withDateTrustSignedFA("2","2","1999") .clickContinue() .errorForTrustSignedFADate().showsError("Year must be between 2000 and 2050") - + .withDateTrustSignedFA("","","") + cy.log("Trust signed FA date validation") cy.log("Expected date FA is signed on Secretary of State's behalf validation") fundingAgreementEditPage - .withExpectedDate("2","ds","2050") - .clickContinue() - .errorForExpectedDate().showsError("Enter a date in the correct format") - .withExpectedDate("2","2","2090") - .clickContinue() - .errorForExpectedDate().showsError("Year must be between 2000 and 2050") - .withExpectedDate("2","2","1999") - .clickContinue() - .errorForExpectedDate().showsError("Year must be between 2000 and 2050") + .withExpectedDate("2","ds","2050") + .clickContinue() + .errorForExpectedDate().showsError("Enter a date in the correct format") + .withExpectedDate("2","2","2090") + .clickContinue() + .errorForExpectedDate().showsError("Year must be between 2000 and 2050") + .withExpectedDate("2","2","1999") + .clickContinue() + .errorForExpectedDate().showsError("Year must be between 2000 and 2050") + .withExpectedDate("","","") cy.log("Expected date FA is signed on Secretary of State's behalf validation") cy.log("Actual date FA was signed validation") fundingAgreementEditPage - .uncheckFundingAgreementSigned() - .withDateFAWasSigned("2","ds","2050") - .clickContinue() - .errorForDateFAWasSigned().showsError("Enter a date in the correct format") - .withDateFAWasSigned("2","2","2090") - .clickContinue() - .errorForDateFAWasSigned().showsError("Year must be between 2000 and 2050") - .withDateFAWasSigned("2","2","1999") - .clickContinue() - .errorForDateFAWasSigned().showsError("Year must be between 2000 and 2050") + .checkFundingAgreementSigned() + .clickContinue() + .errorForDateFAWasSigned().showsError("Enter the actual date FA was signed") + .withDateFAWasSigned("2","ds","2050") + .clickContinue() + .errorForDateFAWasSigned().showsError("Enter a date in the correct format") + .withDateFAWasSigned("2","2","2090") + .clickContinue() + .errorForDateFAWasSigned().showsError("Year must be between 2000 and 2050") + .withDateFAWasSigned("2","2","1999") + .clickContinue() + .errorForDateFAWasSigned().showsError("Year must be between 2000 and 2050") cy.log("Actual date FA was signed validation") diff --git a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreement/EditFundingAgreementTask.cshtml.cs b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreement/EditFundingAgreementTask.cshtml.cs index f1419ea17..79c48b1ef 100644 --- a/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreement/EditFundingAgreementTask.cshtml.cs +++ b/Dfe.ManageFreeSchoolProjects/Dfe.ManageFreeSchoolProjects/Pages/Project/Tasks/FundingAgreement/EditFundingAgreementTask.cshtml.cs @@ -95,6 +95,17 @@ public async Task OnPost() return Page(); } + if (FundingAgreementSigned == true && DateFAWasSigned.HasValue == false) + { + ModelState.AddModelError("date-fa-was-signed", "Enter the actual date FA was signed"); + } + + if (!ModelState.IsValid) + { + _errorService.AddErrors(ModelState.Keys, ModelState); + return Page(); + } + try { var request = new UpdateProjectByTaskRequest()