Skip to content

Commit

Permalink
CIV-15201 - Add missing documents to bundle (#5510)
Browse files Browse the repository at this point in the history
* CIV-15201 - Add missing documents to bundle

* CIV-15201 - fix unit tests

* CIV-15201 - Update test

* CIV-15201 - Checkstyle fixes for bundleRequestMapperTest

---------

Co-authored-by: marianadpereira <71711509+marianadpereira@users.noreply.github.com>
Co-authored-by: ss-evoco <94355434+ss-evoco@users.noreply.github.com>
  • Loading branch information
3 people authored Oct 21, 2024
1 parent efea6f2 commit b99e434
Show file tree
Hide file tree
Showing 4 changed files with 71 additions and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
import uk.gov.hmcts.reform.civil.model.common.Element;
import uk.gov.hmcts.reform.civil.service.SystemGeneratedDocumentService;
import uk.gov.hmcts.reform.civil.service.docmosis.claimform.ClaimFormGenerator;
import uk.gov.hmcts.reform.civil.utils.AssignCategoryId;

import java.util.List;
import java.util.Map;
Expand All @@ -36,6 +37,7 @@ public class GenerateLipClaimFormCallBackHandler extends CallbackHandler {
);
private final ObjectMapper objectMapper;
private final ClaimFormGenerator claimFormGenerator;
private final AssignCategoryId assignCategoryId;
private final SystemGeneratedDocumentService systemGeneratedDocumentService;
private final Map<String, Callback> callbackMap = Map.of(callbackKey(ABOUT_TO_SUBMIT), this::generateClaimForm);

Expand All @@ -57,6 +59,7 @@ private CallbackResponse generateClaimForm(CallbackParams callbackParams) {
callbackParams.getParams().get(BEARER_TOKEN).toString(),
caseEvent
);
assignCategoryId.assignCategoryIdToCaseDocument(caseDocument, "detailsOfClaim");

CaseData updatedCaseData = updateCaseData(caseData, caseDocument, caseEvent);
return AboutToStartOrSubmitCallbackResponse.builder()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -568,8 +568,16 @@ private List<Element<BundlingRequestDocument>> mapDq(CaseData caseData) {
List<BundlingRequestDocument> bundlingRequestDocuments = new ArrayList<>();
bundlingRequestDocuments.addAll(getDqByCategoryId(caseData,
DocCategory.APP1_DQ.getValue(), PartyType.CLAIMANT1));
if (featureToggleService.isCaseProgressionEnabled()) {
bundlingRequestDocuments.addAll(getDqByCategoryId(caseData,
DocCategory.DQ_APP1.getValue(), PartyType.CLAIMANT1));
}
bundlingRequestDocuments.addAll(getDqByCategoryId(caseData,
DocCategory.DEF1_DEFENSE_DQ.getValue(), PartyType.DEFENDANT1));
if (featureToggleService.isCaseProgressionEnabled()) {
bundlingRequestDocuments.addAll(getDqByCategoryId(caseData,
DocCategory.DQ_DEF1.getValue(), PartyType.DEFENDANT1));
}
bundlingRequestDocuments.addAll(getDqByCategoryId(caseData,
DocCategory.DEF2_DEFENSE_DQ.getValue(), PartyType.DEFENDANT2));

Expand Down Expand Up @@ -607,8 +615,9 @@ && nonNull(caseDocumentElement.getValue().getDocumentLink().getCategoryID())
private List<Element<BundlingRequestDocument>> mapStatementOfcaseDocs(CaseData caseData) {
List<BundlingRequestDocument> bundlingRequestDocuments = new ArrayList<>();
bundlingRequestDocuments.addAll(mapSystemGeneratedCaseDocument(caseData.getSystemGeneratedCaseDocuments().stream()
.filter(caseDocumentElement -> caseDocumentElement.getValue().getDocumentType()
.equals(DocumentType.SEALED_CLAIM)
.filter(caseDocumentElement -> (
caseDocumentElement.getValue().getDocumentType()
.equals(DocumentType.SEALED_CLAIM))
&& null != caseDocumentElement.getValue().getDocumentLink().getCategoryID()
&& caseDocumentElement.getValue().getDocumentLink().getCategoryID().equals("detailsOfClaim"))
.collect(Collectors.toList()),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import uk.gov.hmcts.reform.civil.model.CaseData;
import uk.gov.hmcts.reform.civil.service.SystemGeneratedDocumentService;
import uk.gov.hmcts.reform.civil.service.docmosis.claimform.ClaimFormGenerator;
import uk.gov.hmcts.reform.civil.utils.AssignCategoryId;

import java.time.LocalDateTime;
import java.util.Map;
Expand All @@ -39,6 +40,8 @@ class GenerateLipClaimFormCallBackHandlerTest extends BaseCallbackHandlerTest {
private SystemGeneratedDocumentService systemGeneratedDocumentService;
@Mock
private ObjectMapper mapper;
@Mock
private AssignCategoryId assignCategoryId;
@InjectMocks
private GenerateLipClaimFormCallBackHandler handler;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.springframework.test.context.junit.jupiter.SpringExtension;
Expand Down Expand Up @@ -45,11 +47,14 @@ class BundleRequestMapperTest {
private static final String TEST_FILE_TYPE = "Email";
private static final String TEST_FILE_NAME = "testFileName.pdf";

@Test
void testBundleRequestMapperWithAllDocs() {
@ParameterizedTest
@ValueSource(booleans = {true, false})
void testBundleRequestMapperWithAllDocs(boolean caseProgressionCuiEnabled) {
// Given
//Add all type of documents and other request details in case data
CaseData caseData = getCaseData();

given(featureToggleService.isCaseProgressionEnabled()).willReturn(caseProgressionCuiEnabled);
given(featureToggleService.isAmendBundleEnabled()).willReturn(false);

// When
Expand Down Expand Up @@ -101,16 +106,24 @@ void testBundleRequestMapperWithAllDocs() {
bundleCreateRequest.getCaseDetails().getCaseData().getStatementsOfCaseDocuments().get(7).getValue().getDocumentFileName());
assertEquals("CL 1 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(0).getValue().getDocumentFileName());
if (featureToggleService.isCaseProgressionEnabled()) {
assertEquals("CL 1 Directions Questionnaire 11/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(1).getValue().getDocumentFileName());
}
assertEquals("DF 1 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(1).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 2 : 1).getValue().getDocumentFileName());
if (featureToggleService.isCaseProgressionEnabled()) {
assertEquals("DF 1 Directions Questionnaire 12/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(3).getValue().getDocumentFileName());
}
assertEquals("DF 2 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(2).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 4 : 2).getValue().getDocumentFileName());
assertEquals("DF 2 Directions Questionnaire 11/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(3).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 5 : 3).getValue().getDocumentFileName());
assertEquals("DF 2 Directions Questionnaire 10/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(4).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 6 : 4).getValue().getDocumentFileName());
assertEquals("Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(5).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 7 : 5).getValue().getDocumentFileName());
assertEquals("Directions Order 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getOrdersDocuments().get(0).getValue().getDocumentFileName());
assertEquals("Order 10/02/2023",
Expand Down Expand Up @@ -172,11 +185,14 @@ void testBundleRequestMapperWithAllDocs() {

}

@Test
void testBundleRequestMapperWithAllDocsAndCaseEvenEnable() {
@ParameterizedTest
@ValueSource(booleans = {true, false})
void testBundleRequestMapperWithAllDocsAndCaseEvenEnable(boolean caseProgressionCuiEnabled) {
// Given
//Add all type of documents and other request details in case data
CaseData caseData = getCaseDataNoCategoryId();

given(featureToggleService.isCaseProgressionEnabled()).willReturn(caseProgressionCuiEnabled);
given(featureToggleService.isAmendBundleEnabled()).willReturn(true);

// When
Expand Down Expand Up @@ -228,16 +244,24 @@ void testBundleRequestMapperWithAllDocsAndCaseEvenEnable() {
bundleCreateRequest.getCaseDetails().getCaseData().getStatementsOfCaseDocuments().get(7).getValue().getDocumentFileName());
assertEquals("CL 1 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(0).getValue().getDocumentFileName());
if (featureToggleService.isCaseProgressionEnabled()) {
assertEquals("CL 1 Directions Questionnaire 11/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(1).getValue().getDocumentFileName());
}
assertEquals("DF 1 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(1).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 2 : 1).getValue().getDocumentFileName());
if (featureToggleService.isCaseProgressionEnabled()) {
assertEquals("DF 1 Directions Questionnaire 12/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(3).getValue().getDocumentFileName());
}
assertEquals("DF 2 Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(2).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 4 : 2).getValue().getDocumentFileName());
assertEquals("DF 2 Directions Questionnaire 11/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(3).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 5 : 3).getValue().getDocumentFileName());
assertEquals("DF 2 Directions Questionnaire 10/03/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(4).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 6 : 4).getValue().getDocumentFileName());
assertEquals("Directions Questionnaire 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(5).getValue().getDocumentFileName());
bundleCreateRequest.getCaseDetails().getCaseData().getDirectionsQuestionnaires().get(caseProgressionCuiEnabled ? 7 : 5).getValue().getDocumentFileName());
assertEquals("Directions Order 10/02/2023",
bundleCreateRequest.getCaseDetails().getCaseData().getOrdersDocuments().get(0).getValue().getDocumentFileName());
assertEquals("Order 10/02/2023",
Expand Down Expand Up @@ -822,12 +846,28 @@ private List<Element<CaseDocument>> setupSystemGeneratedCaseDocs() {
.documentFileName("DQ_NO_CATEGORY_ID").build())
.createdDatetime(LocalDateTime.of(2023, 2, 10, 2,
2, 2)).build();
CaseDocument caseDocumentDQApp1LiP =
CaseDocument.builder()
.documentType(DocumentType.DIRECTIONS_QUESTIONNAIRE)
.documentLink(Document.builder().documentUrl(TEST_URL).categoryID(DocCategory.DQ_APP1.getValue())
.documentFileName(TEST_FILE_NAME).build())
.createdDatetime(LocalDateTime.of(2023, 3, 11, 2,
2, 2)).build();
CaseDocument caseDocumentDQDef1LiP =
CaseDocument.builder()
.documentType(DocumentType.DIRECTIONS_QUESTIONNAIRE)
.documentLink(Document.builder().documentUrl(TEST_URL).categoryID(DocCategory.DQ_DEF1.getValue())
.documentFileName(TEST_FILE_NAME).build())
.createdDatetime(LocalDateTime.of(2023, 3, 12, 2,
2, 2)).build();
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQDef1));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQApp1));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQDef22));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQDef21));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQDef23));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQNoId));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQApp1LiP));
systemGeneratedCaseDocuments.add(ElementUtils.element(caseDocumentDQDef1LiP));
CaseDocument caseDocumentDJ =
CaseDocument.builder()
.documentType(DocumentType.DEFAULT_JUDGMENT_SDO_ORDER)
Expand Down

0 comments on commit b99e434

Please sign in to comment.