From 6a8ad7638f11da8cebaa1d9890c5fa43480c7efa Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Wed, 10 Sep 2025 12:07:05 +0100 Subject: [PATCH 1/9] Add RespondentSolicitorDetailsValidator class --- .../RespondentSolicitorDetailsValidator.java | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java diff --git a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java new file mode 100644 index 00000000000..931afd3e7a6 --- /dev/null +++ b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java @@ -0,0 +1,68 @@ +package uk.gov.hmcts.reform.finrem.caseorchestration.handler.solicitorcreatecase.mandatorydatavalidation; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import org.springframework.util.StringUtils; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.FinremCaseData; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.Organisation; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.OrganisationPolicy; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.YesOrNo; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.wrapper.ContactDetailsWrapper; +import uk.gov.hmcts.reform.finrem.caseorchestration.utils.NullChecker; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +@Component +@Slf4j +class RespondentSolicitorDetailsValidator implements MandatoryDataValidator { + + @Override + public List validate(FinremCaseData caseData) { + ContactDetailsWrapper contactDetailsWrapper = caseData.getContactDetailsWrapper(); + List ret = new ArrayList<>(); + + if (shouldSkipRespondentSolicitorValidation(contactDetailsWrapper, caseData, ret)) { + return ret; + } + + checkRespondentOrganisationPolicy(caseData, ret); + if (caseData.isConsentedApplication()) { + if (contactDetailsWrapper.getRespondentSolicitorAddress() == null + || !NullChecker.anyNonNull(contactDetailsWrapper.getRespondentSolicitorAddress())) { + ret.add("Respondent solicitor's address is required."); + } + validateField(contactDetailsWrapper.getRespondentSolicitorEmail(), "email", ret); + validateField(contactDetailsWrapper.getRespondentSolicitorPhone(), "phone", ret); + validateField(contactDetailsWrapper.getRespondentSolicitorFirm(), "name of firm", ret); + validateField(contactDetailsWrapper.getRespondentSolicitorName(), "name", ret); + } + return ret; + } + + private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper, FinremCaseData caseData, List errors) { + + if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) || YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { + log.info("{} - Skip validating respondent solicitor details since the respondent is not represented", + caseData.getCcdCaseId()); + return true; + } + return false; + } + + private void checkRespondentOrganisationPolicy(FinremCaseData caseData, List errors) { + if (Optional.ofNullable(caseData.getRespondentOrganisationPolicy()) + .map(OrganisationPolicy::getOrganisation) + .map(Organisation::getOrganisationID) + .orElse(null) == null) { + errors.add("Respondent organisation policy is missing."); + } + } + + private void validateField(String fieldValue, String fieldName, List errors) { + if (!StringUtils.hasText(fieldValue)) { + errors.add(String.format("Respondent solicitor's %s is required.", fieldName)); + } + } +} From 07d796ed1434326088de49b4e47106a00133ddc5 Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Fri, 12 Sep 2025 10:16:12 +0100 Subject: [PATCH 2/9] Add RespondentSolicitorDetailsValidatorTest class --- ...spondentSolicitorDetailsValidatorTest.java | 200 ++++++++++++++++++ 1 file changed, 200 insertions(+) create mode 100644 src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java new file mode 100644 index 00000000000..b4ba4e88f90 --- /dev/null +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java @@ -0,0 +1,200 @@ +package uk.gov.hmcts.reform.finrem.caseorchestration.handler.solicitorcreatecase.mandatorydatavalidation; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.Address; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.FinremCaseData; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.Organisation; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.OrganisationPolicy; +import uk.gov.hmcts.reform.finrem.caseorchestration.model.ccd.YesOrNo; +import java.util.List; +import java.util.stream.Stream; +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.spy; +import static org.mockito.Mockito.when; +import static uk.gov.hmcts.reform.finrem.caseorchestration.TestConstants.TEST_ORG_ID; + +class RespondentSolicitorDetailsValidatorTest { + + private final RespondentSolicitorDetailsValidator underTest = new RespondentSolicitorDetailsValidator(); + + @Test + void givenConsentedRespondentNotRepresented_whenValidate_thenReturnEmptyList() { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setConsentedRespondentRepresented(YesOrNo.NO); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).isEmpty(); + } + + @Test + void givenContestedRespondentNotRepresented_whenValidate_thenReturnEmptyList() { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setContestedRespondentRepresented(YesOrNo.NO); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).isEmpty(); + } + + static Stream givenRespondentRepresentedAndOrganisationPolicyMissing_whenValidate_thenReturnAnError() { + return Stream.of( + null, + OrganisationPolicy.builder().build(), + OrganisationPolicy.builder().organisation(Organisation.builder().build()).build() + ); + } + + @ParameterizedTest + @MethodSource + void givenRespondentRepresentedAndOrganisationPolicyMissing_whenValidate_thenReturnAnError( + OrganisationPolicy organisationPolicy + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setConsentedRespondentRepresented(YesOrNo.YES); + finremCaseData.setRespondentOrganisationPolicy(organisationPolicy); + List actual = underTest.validate(finremCaseData); + assertThat(actual).containsExactly("Respondent organisation policy is missing."); + } + + @Test + void givenRespondentRepresentedAndValidOrganisationPolicy_whenValidate_thenEmptyList() { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setConsentedRespondentRepresented(YesOrNo.YES); + finremCaseData.setRespondentOrganisationPolicy(validOrganisationPolicy()); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).isEmpty(); + } + + private static OrganisationPolicy validOrganisationPolicy() { + return OrganisationPolicy.builder().organisation(Organisation.builder() + .organisationID(TEST_ORG_ID).build()).build(); + } + + @ParameterizedTest + @MethodSource + void givenRepresentedRespondentAndInvalidSolicitorAddress_whenValidate_thenReturnAnError( + Address respondentSolicitorAddress + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + when(finremCaseData.isConsentedApplication()).thenReturn(true); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(respondentSolicitorAddress); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).contains("Respondent solicitor's address is required."); + } + + private static Stream givenRepresentedRespondentAndInvalidSolicitorAddress_whenValidate_thenReturnAnError() { + return Stream.of( + Arguments.of((Address) null), + Arguments.of(Address.builder().build()) + ); + } + + @ParameterizedTest + @MethodSource("invalidStringValues") + void givenRepresentedRespondentAndInvalidSolicitorEmail_whenValidate_thenReturnEmailError( + String email + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + when(finremCaseData.isConsentedApplication()).thenReturn(true); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(validAddress()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorEmail(email); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).anyMatch(error -> error.contains("email")); + } + + @ParameterizedTest + @MethodSource("invalidStringValues") + void givenRepresentedRespondentAndInvalidPhone_whenValidate_thenReturnPhoneError( + String phone + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + when(finremCaseData.isConsentedApplication()).thenReturn(true); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(validAddress()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorPhone(phone); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).anyMatch(error -> error.contains("phone")); + } + + @ParameterizedTest + @MethodSource("invalidStringValues") + void givenRepresentedRespondentAndInvalidFirm_whenValidate_thenReturnFirmError( + String firm + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + when(finremCaseData.isConsentedApplication()).thenReturn(true); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(validAddress()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorFirm(firm); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).anyMatch(error -> error.contains("name of firm")); + } + + @ParameterizedTest + @MethodSource("invalidStringValues") + void givenRepresentedRespondentAndInvalidName_whenValidate_thenReturnNameError( + String name + ) { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + when(finremCaseData.isConsentedApplication()).thenReturn(true); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(validAddress()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorName(name); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).anyMatch(error -> error.contains("name")); + } + + private static Stream invalidStringValues() { + return Stream.of( + Arguments.of((String) null), + Arguments.of(""), + Arguments.of(" ") + ); + } + + @Test + void givenRepresentedAndValidSolicitorDetails_whenValidate_thenEmptyList() { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setConsentedRespondentRepresented(YesOrNo.YES); + finremCaseData.setRespondentOrganisationPolicy(validOrganisationPolicy()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(validAddress()); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorEmail("dasd@gmail.com"); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorPhone("01234567890"); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorFirm("Solicitor Firm"); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorName("Alexander Isak"); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).isEmpty(); + } + + @Test + void givenNotRepresented_whenValidate_thenEmptyList() { + FinremCaseData finremCaseData = spy(FinremCaseData.class); + finremCaseData.getContactDetailsWrapper().setConsentedRespondentRepresented(YesOrNo.NO); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorAddress(null); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorEmail(null); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorPhone(null); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorFirm(null); + finremCaseData.getContactDetailsWrapper().setRespondentSolicitorName(null); + + List actual = underTest.validate(finremCaseData); + assertThat(actual).isEmpty(); + } + + private Address validAddress() { + return Address.builder() + .addressLine1("20 Cromie Close") + .postTown("London") + .postCode("N13 4BF") + .build(); + } + + +} + + From e71d2e333322a80afba7c368ef01d1350a3e34a7 Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Fri, 12 Sep 2025 10:29:39 +0100 Subject: [PATCH 3/9] Fix Checkstyle errors --- .../RespondentSolicitorDetailsValidator.java | 6 ++++-- .../RespondentSolicitorDetailsValidatorTest.java | 6 +----- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java index 931afd3e7a6..9da61ebb01d 100644 --- a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java +++ b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java @@ -41,9 +41,11 @@ public List validate(FinremCaseData caseData) { return ret; } - private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper, FinremCaseData caseData, List errors) { + private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper, + FinremCaseData caseData, List errors) { - if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) || YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { + if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) || + YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { log.info("{} - Skip validating respondent solicitor details since the respondent is not represented", caseData.getCcdCaseId()); return true; diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java index b4ba4e88f90..2121bb8a907 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java @@ -193,8 +193,4 @@ private Address validAddress() { .postCode("N13 4BF") .build(); } - - -} - - +} \ No newline at end of file From e242377c823fba91eac3372fb4a6c0d23a835392 Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Fri, 12 Sep 2025 10:46:04 +0100 Subject: [PATCH 4/9] Fix Checkstyle errors --- .../RespondentSolicitorDetailsValidator.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java index 9da61ebb01d..3cd9e769b31 100644 --- a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java +++ b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java @@ -44,8 +44,8 @@ public List validate(FinremCaseData caseData) { private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper, FinremCaseData caseData, List errors) { - if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) || - YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { + if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) + || YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { log.info("{} - Skip validating respondent solicitor details since the respondent is not represented", caseData.getCcdCaseId()); return true; From f3d2ba779056f9edbbd27197f27cac2d2434d16f Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Fri, 12 Sep 2025 16:51:13 +0100 Subject: [PATCH 5/9] Fix integration test --- .../createcase/CreateCaseMandatoryDataIntegrationTest.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java index 4a0416a354f..4a23d4a2d99 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java @@ -83,11 +83,13 @@ void testCreateCaseValidateMandatoryData() throws Exception { .andExpect(status().isOk()) .andExpect(jsonPath("$.data", notNullValue())) .andExpect(jsonPath("$.warnings",empty())) - .andExpect(jsonPath("$.errors", hasSize(2))) + .andExpect(jsonPath("$.errors", hasSize(3))) .andExpect(jsonPath("$.errors", hasItem("Applicant organisation policy is missing."))) .andExpect(jsonPath("$.errors", - hasItem("Applicant's Local Court is required. Update Please choose the Region in which the Applicant resides"))); + hasItem("Applicant's Local Court is required. Update Please choose the Region in which the Applicant resides"))) + .andExpect(jsonPath("$.errors", + hasItem("Respondent organisation policy is missing."))); } } From f6890a13cc670449aaf966d3af542b5cf3b6aad1 Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Mon, 15 Sep 2025 09:21:55 +0100 Subject: [PATCH 6/9] Fix Checkstyle issues --- .../RespondentSolicitorDetailsValidatorTest.java | 2 +- .../createcase/CreateCaseMandatoryDataIntegrationTest.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java index 2121bb8a907..98fa71d5f4c 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidatorTest.java @@ -193,4 +193,4 @@ private Address validAddress() { .postCode("N13 4BF") .build(); } -} \ No newline at end of file +} diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java index 4a23d4a2d99..691782c35eb 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java @@ -93,3 +93,4 @@ void testCreateCaseValidateMandatoryData() throws Exception { } } + From 7009d862e1b8d51c33a1ebce63d8f1ef33eee2a0 Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Mon, 15 Sep 2025 11:00:57 +0100 Subject: [PATCH 7/9] Fix Checkstyle issues --- .../createcase/CreateCaseMandatoryDataIntegrationTest.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java index 691782c35eb..cb30fe81caf 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java @@ -92,5 +92,4 @@ void testCreateCaseValidateMandatoryData() throws Exception { hasItem("Respondent organisation policy is missing."))); } -} - +} \ No newline at end of file From 7b48848ed9103d7a091d6741326d186fbfe560cf Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Mon, 15 Sep 2025 11:04:16 +0100 Subject: [PATCH 8/9] Fix Checkstyle issues --- .../createcase/CreateCaseMandatoryDataIntegrationTest.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java index cb30fe81caf..16d300793a2 100644 --- a/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java +++ b/src/test/java/uk/gov/hmcts/reform/finrem/caseorchestration/integrationtest/createcase/CreateCaseMandatoryDataIntegrationTest.java @@ -90,6 +90,5 @@ void testCreateCaseValidateMandatoryData() throws Exception { hasItem("Applicant's Local Court is required. Update Please choose the Region in which the Applicant resides"))) .andExpect(jsonPath("$.errors", hasItem("Respondent organisation policy is missing."))); - } -} \ No newline at end of file +} From a72a3d26e0d3439d5a85ba276534d5e2dee2a27d Mon Sep 17 00:00:00 2001 From: ZakMar99 Date: Mon, 15 Sep 2025 13:57:07 +0100 Subject: [PATCH 9/9] Remove unused parameters --- .../RespondentSolicitorDetailsValidator.java | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java index 3cd9e769b31..bff075f6422 100644 --- a/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java +++ b/src/main/java/uk/gov/hmcts/reform/finrem/caseorchestration/handler/solicitorcreatecase/mandatorydatavalidation/RespondentSolicitorDetailsValidator.java @@ -23,7 +23,7 @@ public List validate(FinremCaseData caseData) { ContactDetailsWrapper contactDetailsWrapper = caseData.getContactDetailsWrapper(); List ret = new ArrayList<>(); - if (shouldSkipRespondentSolicitorValidation(contactDetailsWrapper, caseData, ret)) { + if (shouldSkipRespondentSolicitorValidation(contactDetailsWrapper)) { return ret; } @@ -41,16 +41,9 @@ public List validate(FinremCaseData caseData) { return ret; } - private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper, - FinremCaseData caseData, List errors) { - - if (YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) - || YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented())) { - log.info("{} - Skip validating respondent solicitor details since the respondent is not represented", - caseData.getCcdCaseId()); - return true; - } - return false; + private boolean shouldSkipRespondentSolicitorValidation(ContactDetailsWrapper contactDetailsWrapper) { + return YesOrNo.NO.equals(contactDetailsWrapper.getConsentedRespondentRepresented()) + || YesOrNo.NO.equals(contactDetailsWrapper.getContestedRespondentRepresented()); } private void checkRespondentOrganisationPolicy(FinremCaseData caseData, List errors) {