From dc27adc847f182146ec90ded44d4a5aa1d260fca Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Fri, 26 Apr 2024 14:56:59 +0100 Subject: [PATCH 01/12] Sonar fix issues --- build.gradle | 4 ++ .../DocumentGeneratorController.java | 61 ++++++++++--------- .../helper/GlobalExceptionHandler.java | 8 +-- .../mapper/TemplateDataMapper.java | 7 ++- .../service/DocumentManagementService.java | 3 +- .../service/PDFGenerationService.java | 3 +- .../DocmosisPDFGenerationServiceImpl.java | 43 ++++++------- .../impl/DocumentManagementServiceImpl.java | 3 +- .../DocumentGeneratorControllerUTest.java | 3 +- .../DocumentGenerateAndStoreE2ETest.java | 39 +++--------- ...DocmosisPdfGenerationServiceImplUTest.java | 3 +- .../DocumentManagementServiceImplTest.java | 3 +- .../util/NullOrEmptyValidatorUTest.java | 5 -- 13 files changed, 86 insertions(+), 99 deletions(-) diff --git a/build.gradle b/build.gradle index 1c6c0e0a..cdaef36b 100644 --- a/build.gradle +++ b/build.gradle @@ -449,6 +449,10 @@ sourceSets { } } +test { + useJUnitPlatform() +} + dependencies { integrationTestImplementation(sourceSets.test.output) integrationTestAnnotationProcessor group: 'org.projectlombok', name: 'lombok', version: versions.lombok diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorController.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorController.java index 6033d72a..3583c7a1 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorController.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorController.java @@ -19,6 +19,7 @@ import uk.gov.hmcts.reform.prl.documentgenerator.domain.response.GeneratedDocumentInfo; import uk.gov.hmcts.reform.prl.documentgenerator.service.DocumentManagementService; +import java.io.IOException; import javax.validation.Valid; @RestController @@ -27,24 +28,26 @@ @Slf4j public class DocumentGeneratorController { + private final DocumentManagementService documentManagementService; + @Autowired - private DocumentManagementService documentManagementService; + public DocumentGeneratorController(DocumentManagementService documentManagementService) { + this.documentManagementService = documentManagementService; + } @Operation(description = "Generate PDF document based on the supplied template name and placeholder " - + "texts and saves it in the evidence management.", tags = {"Document Generation"}) - @ApiResponses({ - @ApiResponse(responseCode = "200", description = "PDF was generated successfully and stored in the " - + "evidence management. Returns the url to the stored document.", content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "400", description = "Returned when input parameters are invalid " - + "or template not found", content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "503", description = "Returned when the PDF Service or Evidence " - + "Management Client Api cannot be reached", content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "500", description = "Returned when there is an unknown server error", - content = @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) - }) + + "texts and saves it in the evidence management.", tags = {"Document Generation"}) + @ApiResponse(responseCode = "200", description = "PDF was generated successfully and stored in the " + + "evidence management. Returns the url to the stored document.", content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "400", description = "Returned when input parameters are invalid " + + "or template not found", content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "503", description = "Returned when the PDF Service or Evidence " + + "Management Client Api cannot be reached", content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "500", description = "Returned when there is an unknown server error", + content = @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) @PostMapping("/generatePDF") public GeneratedDocumentInfo generateAndUploadPdf( @RequestHeader(value = "Authorization", required = false) @@ -63,19 +66,19 @@ public GeneratedDocumentInfo generateAndUploadPdf( @Operation(description = "Generate draft PDF document based on the supplied template name and placeholder texts " + "and saves it in the evidence management.", tags = {"Document Generation"}) - @ApiResponses({ - @ApiResponse(responseCode = "200", description = "PDF was generated successfully and stored in the " - + "evidence management. Returns the url to the stored document.",content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "400", description = "Returned when input parameters are invalid or " - + "template not found", content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "503", description = "Returned when the PDF Service or Evidence Management " - + "Client Api cannot be reached", content = - @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))), - @ApiResponse(responseCode = "500", description = "Returned when there is an unknown server error", - content = @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) - }) + + @ApiResponse(responseCode = "200", description = "PDF was generated successfully and stored in the " + + "evidence management. Returns the url to the stored document.",content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "400", description = "Returned when input parameters are invalid or " + + "template not found", content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "503", description = "Returned when the PDF Service or Evidence Management " + + "Client Api cannot be reached", content = + @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @ApiResponse(responseCode = "500", description = "Returned when there is an unknown server error", + content = @Content(mediaType = "application/json", schema = @Schema(implementation = String.class))) + @PostMapping("/generateDraftPDF") public GeneratedDocumentInfo generateAndUploadDraftPdf( @RequestHeader(value = "Authorization", required = false) @@ -103,7 +106,7 @@ public GeneratedDocumentInfo convertDocumentToPdf( + "templateName and the placeholder text map", required = true) @RequestBody @Valid - GenerateDocumentRequest templateData) { + GenerateDocumentRequest templateData) throws IOException { //This service is internal to Divorce system. No need to do service authentication here log.info("convertDocumentToPdf is getting called"); return documentManagementService.converToPdf( diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandler.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandler.java index 0a9358db..bdd6caa2 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandler.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandler.java @@ -31,13 +31,13 @@ public ResponseEntity handleTemplateLoadingException(ErrorLoadingTemplat public ResponseEntity handleDocumentStorageAndPDFGenerationException(Exception exception) { log.error(exception.getMessage(), exception); - if (exception.getCause() instanceof HttpClientErrorException) { - HttpStatus httpClientErrorException = ((HttpClientErrorException) exception.getCause()).getStatusCode(); + if (exception.getCause() instanceof HttpClientErrorException httpClientErrorException) { + HttpStatus httpClientStatus = httpClientErrorException.getStatusCode(); - if (httpClientErrorException == HttpStatus.BAD_REQUEST) { + if (httpClientStatus == HttpStatus.BAD_REQUEST) { return ResponseEntity.status(HttpStatus.SERVICE_UNAVAILABLE).body(exception.getMessage()); } else { - return ResponseEntity.status(httpClientErrorException).body(exception.getMessage()); + return ResponseEntity.status(httpClientStatus).body(exception.getMessage()); } } diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/mapper/TemplateDataMapper.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/mapper/TemplateDataMapper.java index 2fc66d3c..4be52b9a 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/mapper/TemplateDataMapper.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/mapper/TemplateDataMapper.java @@ -21,8 +21,13 @@ @Component public class TemplateDataMapper { + + private final DocmosisBasePdfConfig docmosisBasePdfConfig; + @Autowired - private DocmosisBasePdfConfig docmosisBasePdfConfig; + public TemplateDataMapper(DocmosisBasePdfConfig docmosisBasePdfConfig) { + this.docmosisBasePdfConfig = docmosisBasePdfConfig; + } @SuppressWarnings("unchecked") public Map map(Map placeholders) { diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/DocumentManagementService.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/DocumentManagementService.java index 745edc15..0cece245 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/DocumentManagementService.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/DocumentManagementService.java @@ -2,6 +2,7 @@ import uk.gov.hmcts.reform.prl.documentgenerator.domain.response.GeneratedDocumentInfo; +import java.io.IOException; import java.util.Map; public interface DocumentManagementService { @@ -15,5 +16,5 @@ GeneratedDocumentInfo generateAndStoreDraftDocument(String templateName, Map placeholders); - GeneratedDocumentInfo converToPdf(Map placeholders, String authorizationToken, String filename); + GeneratedDocumentInfo converToPdf(Map placeholders, String authorizationToken, String filename) throws IOException; } diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/PDFGenerationService.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/PDFGenerationService.java index a10d2795..2cafce61 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/PDFGenerationService.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/PDFGenerationService.java @@ -1,11 +1,12 @@ package uk.gov.hmcts.reform.prl.documentgenerator.service; +import java.io.IOException; import java.util.Map; public interface PDFGenerationService { byte[] generate(String templateName, Map placeholders); - byte[] converToPdf(Map placeholders, String fileName); + byte[] converToPdf(Map placeholders, String fileName) throws IOException; } diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPDFGenerationServiceImpl.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPDFGenerationServiceImpl.java index 9cc11dd6..10a611aa 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPDFGenerationServiceImpl.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPDFGenerationServiceImpl.java @@ -33,11 +33,15 @@ @Slf4j public class DocmosisPDFGenerationServiceImpl implements PDFGenerationService { - @Autowired - private RestTemplate restTemplate; + private final RestTemplate restTemplate; + + private final TemplateDataMapper templateDataMapper; @Autowired - private TemplateDataMapper templateDataMapper; + public DocmosisPDFGenerationServiceImpl(RestTemplate restTemplate,TemplateDataMapper templateDataMapper) { + this.restTemplate = restTemplate; + this.templateDataMapper = templateDataMapper; + } @Value("${docmosis.service.pdf-service.uri}") private String docmosisPdfServiceEndpoint; @@ -88,26 +92,19 @@ private PdfDocumentRequest request(String templateName, Map plac } @Override - public byte[] converToPdf(Map placeholders, String fileName) { - - try { - String filename = FilenameUtils.getBaseName(fileName) + ".pdf"; - ObjectMapper objectMapper = new ObjectMapper(); - byte[] docInBytes = objectMapper.convertValue(placeholders.get("fileName"), byte[].class); - File file = new File(fileName); - Files.write(docInBytes, file); - - return restTemplate - .postForObject( - docmosisPdfConvertEndpoint, - createRequest(file, filename), - byte[].class - ); - - } catch (IOException e) { - throw new RuntimeException(e); - } - + public byte[] converToPdf(Map placeholders, String fileName) throws IOException { + String filename = FilenameUtils.getBaseName(fileName) + ".pdf"; + ObjectMapper objectMapper = new ObjectMapper(); + byte[] docInBytes = objectMapper.convertValue(placeholders.get("fileName"), byte[].class); + File file = new File(fileName); + Files.write(docInBytes, file); + + return restTemplate + .postForObject( + docmosisPdfConvertEndpoint, + createRequest(file, filename), + byte[].class + ); } diff --git a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImpl.java b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImpl.java index b984c4c1..604e6b90 100644 --- a/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImpl.java +++ b/src/main/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImpl.java @@ -15,6 +15,7 @@ import uk.gov.hmcts.reform.prl.documentgenerator.service.DocumentManagementService; import uk.gov.hmcts.reform.prl.documentgenerator.service.PDFGenerationService; +import java.io.IOException; import java.text.SimpleDateFormat; import java.time.Clock; import java.util.Arrays; @@ -141,7 +142,7 @@ private String getCaseId(Map placeholders) { } @Override - public GeneratedDocumentInfo converToPdf(Map placeholders, String authorizationToken, String fileName) { + public GeneratedDocumentInfo converToPdf(Map placeholders, String authorizationToken, String fileName) throws IOException { log.debug( "Generate document requested with templateName [{}], placeholders of size[{}]", placeholders.size() diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorControllerUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorControllerUTest.java index 99716ed7..fd657bff 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorControllerUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/DocumentGeneratorControllerUTest.java @@ -9,6 +9,7 @@ import uk.gov.hmcts.reform.prl.documentgenerator.domain.response.GeneratedDocumentInfo; import uk.gov.hmcts.reform.prl.documentgenerator.service.DocumentManagementService; +import java.io.IOException; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -66,7 +67,7 @@ public void whenGeneratePDF_thenReturnGeneratedDraftPDFDocumentInfo() { } @Test - public void whenConvertPDF_thenReturnConvertedPDFDocumentInfo() { + public void whenConvertPDF_thenReturnConvertedPDFDocumentInfo() throws IOException { final String templateName = "templateName"; Map placeholder = new HashMap<>(); diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/functionaltest/DocumentGenerateAndStoreE2ETest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/functionaltest/DocumentGenerateAndStoreE2ETest.java index ac94c667..746385de 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/functionaltest/DocumentGenerateAndStoreE2ETest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/functionaltest/DocumentGenerateAndStoreE2ETest.java @@ -5,6 +5,10 @@ import org.junit.ClassRule; import org.junit.Ignore; import org.junit.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvSource; +import org.junit.jupiter.params.provider.NullSource; +import org.junit.jupiter.params.provider.ValueSource; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; @@ -68,37 +72,10 @@ public class DocumentGenerateAndStoreE2ETest { @ClassRule public static WireMockClassRule serviceAuthServer = new WireMockClassRule(4502); - @Test - public void givenTemplateNameIsNull_whenGenerateAndStoreDocument_thenReturnHttp400() throws Exception { - final String template = null; - final Map values = Collections.emptyMap(); - - final GenerateDocumentRequest generateDocumentRequest = new GenerateDocumentRequest(template, values); - - webClient.perform(post(API_URL) - .content(ObjectMapperTestUtil.convertObjectToJsonString(generateDocumentRequest)) - .contentType(MediaType.APPLICATION_JSON) - .accept(MediaType.APPLICATION_JSON)) - .andExpect(status().isBadRequest()); - } - - @Test - public void givenTemplateNameIsBlank_whenGenerateAndStoreDocument_thenReturnHttp400() throws Exception { - final String template = " "; - final Map values = Collections.emptyMap(); - - final GenerateDocumentRequest generateDocumentRequest = new GenerateDocumentRequest(template, values); - - webClient.perform(post(API_URL) - .content(ObjectMapperTestUtil.convertObjectToJsonString(generateDocumentRequest)) - .contentType(MediaType.APPLICATION_JSON) - .accept(MediaType.APPLICATION_JSON)) - .andExpect(status().isBadRequest()); - } - - @Test - public void givenTemplateNotFound_whenGenerateAndStoreDocument_thenReturnHttp400() throws Exception { - final String template = "nonExistingTemplate"; + @ParameterizedTest + @NullSource + @ValueSource(strings = {" ", "nonExistingTemplate"}) + void givenTemplateNameIsNull_whenGenerateAndStoreDocument_thenReturnHttp400(String template) throws Exception { final Map values = Collections.emptyMap(); final GenerateDocumentRequest generateDocumentRequest = new GenerateDocumentRequest(template, values); diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPdfGenerationServiceImplUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPdfGenerationServiceImplUTest.java index 9df07550..db34eba5 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPdfGenerationServiceImplUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocmosisPdfGenerationServiceImplUTest.java @@ -50,7 +50,8 @@ public class DocmosisPdfGenerationServiceImplUTest { @InjectMocks @Spy - private final DocmosisPDFGenerationServiceImpl classUnderTest = new DocmosisPDFGenerationServiceImpl(); + private final DocmosisPDFGenerationServiceImpl classUnderTest = new + DocmosisPDFGenerationServiceImpl(restTemplate,templateDataMapper); @Before public void before() throws IllegalAccessException { diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImplTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImplTest.java index 3b24f7bf..fc47b84a 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImplTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/service/impl/DocumentManagementServiceImplTest.java @@ -15,6 +15,7 @@ import uk.gov.hmcts.reform.prl.documentgenerator.config.TemplatesConfiguration; import uk.gov.hmcts.reform.prl.documentgenerator.service.PDFGenerationService; +import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -110,7 +111,7 @@ public void testGenerateAndStoreDraftDocument_WithDraftPrefixMock() { } @Test - public void testConvertToPdf() { + public void testConvertToPdf() throws IOException { final Map placeholders = new HashMap<>(); byte[] test = "Any String you want".getBytes(); diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/util/NullOrEmptyValidatorUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/util/NullOrEmptyValidatorUTest.java index fbed4f23..d28e0ad8 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/util/NullOrEmptyValidatorUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/util/NullOrEmptyValidatorUTest.java @@ -28,13 +28,11 @@ public void testConstructorPrivate() throws Exception { } @Test(expected = IllegalArgumentException.class) - @Ignore public void givenArrayIsNull_whenRequireNonEmpty_thenThrowsIllegalArgumentException() { NullOrEmptyValidator.requireNonEmpty(null); } @Test(expected = IllegalArgumentException.class) - @Ignore public void givenArrayIsEmpty_whenRequireNonEmpty_thenThrowsIllegalArgumentException() { NullOrEmptyValidator.requireNonEmpty(ArrayUtils.EMPTY_BYTE_ARRAY); } @@ -49,19 +47,16 @@ public void givenArrayIsNotEmptyOrNull_whenRequireNonEmpty_thenDoesNotThrowExcep } @Test(expected = IllegalArgumentException.class) - @Ignore public void givenTextIsNull_whenRequireNonBlank_thenThrowsIllegalArgumentException() { NullOrEmptyValidator.requireNonBlank(null); } @Test(expected = IllegalArgumentException.class) - @Ignore public void givenTextIsEmpty_whenRequireNonBlank_thenThrowsIllegalArgumentException() { NullOrEmptyValidator.requireNonBlank(EMPTY_STRING); } @Test(expected = IllegalArgumentException.class) - @Ignore public void givenTextIsBlank_whenRequireNonBlank_thenThrowsIllegalArgumentException() { NullOrEmptyValidator.requireNonBlank(BLANK_STRING); } From cbae5e8fae9b373dda9043ac75a7a0c8cf22c81a Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Sat, 27 Apr 2024 20:36:20 +0100 Subject: [PATCH 02/12] Sonar fix issues --- .../controller/helper/GlobalExceptionHandlerUTest.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java index 8cff87c5..d8bc46f9 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java @@ -1,8 +1,9 @@ package uk.gov.hmcts.reform.prl.documentgenerator.controller.helper; -import org.junit.Test; + +import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; -import org.junit.runners.BlockJUnit4ClassRunner; +import org.mockito.junit.MockitoJUnitRunner; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.client.HttpClientErrorException; @@ -11,7 +12,7 @@ import static org.junit.Assert.assertEquals; -@RunWith(BlockJUnit4ClassRunner.class) +@RunWith(MockitoJUnitRunner.class) public class GlobalExceptionHandlerUTest { private final GlobalExceptionHandler classUnderTest = new GlobalExceptionHandler(); From 7e5e5e592850ceb7f8dba8b3e34d7ce5397eccce Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Sat, 27 Apr 2024 21:34:59 +0100 Subject: [PATCH 03/12] Sonar fix issues --- .../helper/GlobalExceptionHandlerUTest.java | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java index d8bc46f9..731a5303 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java @@ -13,12 +13,11 @@ import static org.junit.Assert.assertEquals; @RunWith(MockitoJUnitRunner.class) -public class GlobalExceptionHandlerUTest { +class GlobalExceptionHandlerUTest { private final GlobalExceptionHandler classUnderTest = new GlobalExceptionHandler(); - @Test - public void whenHandleBadRequestException_thenReturnBadRequest() { + void whenHandleBadRequestException_thenReturnBadRequest() { final Exception exception = new Exception(); ResponseEntity response = classUnderTest.handleBadRequestException(exception); @@ -27,7 +26,7 @@ public void whenHandleBadRequestException_thenReturnBadRequest() { } @Test - public void whenHandleTemplateLoadingException_thenReturnBadRequest() { + void whenHandleTemplateLoadingException_thenReturnBadRequest() { final String message = "some message"; final Exception exception = new Exception(); final ErrorLoadingTemplateException errorLoadingTemplateException = @@ -40,7 +39,7 @@ public void whenHandleTemplateLoadingException_thenReturnBadRequest() { } @Test - public void givenHttpClientErrorExceptionWrappedIn_whenHandleDocumentStorageAndPDFGenerationException_thenReturnStatusCodeOfHttpClientErrorException() { + void givenHttpClientErrorExceptionWrappedIn_whenHandleDocumentStorageAndPDFGenerationException_thenReturnStatusCodeOfHttpClientErrorException() { final HttpStatus httpStatus = HttpStatus.MOVED_PERMANENTLY; final HttpClientErrorException httpClientErrorException = new HttpClientErrorException(httpStatus); @@ -57,7 +56,7 @@ public void givenHttpClientErrorExceptionWrappedIn_whenHandleDocumentStorageAndP } @Test - public void givenHttpClientErrorResponseCode200_whenHandleDocumentStorageAndPDFGenerationException_thenReturnStatus503() { + void givenHttpClientErrorResponseCode200_whenHandleDocumentStorageAndPDFGenerationException_thenReturnStatus503() { final HttpStatus httpStatus = HttpStatus.BAD_REQUEST; final HttpClientErrorException httpClientErrorException = new HttpClientErrorException(httpStatus); @@ -74,7 +73,7 @@ public void givenHttpClientErrorResponseCode200_whenHandleDocumentStorageAndPDFG } @Test - public void givenWrappedInExceptionIsNull_whenHandleDocumentStorageAndPDFGenerationException_thenReturnInternalServerError() { + void givenWrappedInExceptionIsNull_whenHandleDocumentStorageAndPDFGenerationException_thenReturnInternalServerError() { final String message = "some message"; PDFGenerationException pdfGenerationException = new PDFGenerationException(message, null); @@ -87,7 +86,7 @@ public void givenWrappedInExceptionIsNull_whenHandleDocumentStorageAndPDFGenerat } @Test - public void givenWrappedInIsNotHttpClientErrorException_whenHandleDocumentStorageAndPDFGenerationException_thenReturnInternalServerError() { + void givenWrappedInIsNotHttpClientErrorException_whenHandleDocumentStorageAndPDFGenerationException_thenReturnInternalServerError() { final String message = "some message"; final Exception exception = new Exception(); From 26577018339e52f09ed4d49a6e36cab1021fcb78 Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Sat, 27 Apr 2024 21:37:55 +0100 Subject: [PATCH 04/12] Sonar fix issues --- .../controller/helper/GlobalExceptionHandlerUTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java index 731a5303..b5f956da 100644 --- a/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java +++ b/src/test/java/uk/gov/hmcts/reform/prl/documentgenerator/controller/helper/GlobalExceptionHandlerUTest.java @@ -16,6 +16,7 @@ class GlobalExceptionHandlerUTest { private final GlobalExceptionHandler classUnderTest = new GlobalExceptionHandler(); + @Test void whenHandleBadRequestException_thenReturnBadRequest() { final Exception exception = new Exception(); From e4736afac96b53847bd94ecba52803bcf35683a4 Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Sat, 27 Apr 2024 22:07:42 +0100 Subject: [PATCH 05/12] point ccd --- charts/prl-dgs/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/values.preview.template.yaml b/charts/prl-dgs/values.preview.template.yaml index 9cc70731..0911883d 100644 --- a/charts/prl-dgs/values.preview.template.yaml +++ b/charts/prl-dgs/values.preview.template.yaml @@ -21,7 +21,7 @@ java: MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIMETOLIVE: "30000" DOCMOSIS_SERVICE_DEV_MODE_FLAG: "true" PDF_TEST_ENABLED: "true" - CCD_CASE_DOCS_AM_API: "http://ccd-case-document-am-api-aat.service.core-compute-aat.internal" + CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2158-cdam" AUTH_PROVIDER_SERVICE_CLIENT_BASEURL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" IDAM_S2S_URL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" DOCMOSIS_SERVICE_BASE_URL: "https://docmosis.aat.platform.hmcts.net" From e450c38f6bfc36bc604429370c24269abeab0113 Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Mon, 29 Apr 2024 10:58:12 +0100 Subject: [PATCH 06/12] chart version upgrade --- charts/prl-dgs/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/Chart.yaml b/charts/prl-dgs/Chart.yaml index c0a7b3b8..e83d1b2a 100644 --- a/charts/prl-dgs/Chart.yaml +++ b/charts/prl-dgs/Chart.yaml @@ -5,5 +5,5 @@ name: prl-dgs version: 0.0.49 dependencies: - name: java - version: 5.0.0 + version: 5.2.0 repository: "https://hmctspublic.azurecr.io/helm/v1/repo/" From 60d34f80230d991332cefa80564f8e7c8dc245ed Mon Sep 17 00:00:00 2001 From: hmcts-jenkins-j-to-z <61242337+hmcts-jenkins-j-to-z[bot]@users.noreply.github.com> Date: Mon, 29 Apr 2024 09:59:16 +0000 Subject: [PATCH 07/12] Bumping chart version/ fixing aliases --- charts/prl-dgs/Chart.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/Chart.yaml b/charts/prl-dgs/Chart.yaml index e83d1b2a..c7877164 100644 --- a/charts/prl-dgs/Chart.yaml +++ b/charts/prl-dgs/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 appVersion: "1.0" description: Family Private Law - Document Generator Service name: prl-dgs -version: 0.0.49 +version: 0.0.50 dependencies: - name: java version: 5.2.0 From 6455712cfcaad8ca067dbafbaebceec368927d2b Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Mon, 29 Apr 2024 11:53:14 +0100 Subject: [PATCH 08/12] contract test fix --- src/contractTest/resources/application.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/contractTest/resources/application.yml b/src/contractTest/resources/application.yml index 836fb42a..7f877e63 100644 --- a/src/contractTest/resources/application.yml +++ b/src/contractTest/resources/application.yml @@ -12,8 +12,10 @@ docmosis: pdf-service: accessKey: ${DOCMOSIS_SERVICE_ACCESS_KEY:23432} renderEndpoint: "/rs/render" + convertEndpoint: "/rs/convert" uri: ${DOCMOSIS_SERVICE_BASE_URL:http://localhost:5501}${docmosis.service.pdf-service.renderEndpoint} health: ${DOCMOSIS_SERVICE_BASE_URL:http://localhost:5501}/health + convert: ${DOCMOSIS_SERVICE_BASE_URL:http://localhost:5501}${docmosis.service.pdf-service.convertEndpoint} devMode: ${DOCMOSIS_SERVICE_DEV_MODE_FLAG:false} case_document_am: From 6ab3738b788ae5f9ca6e6fa4fb143ed03398c02b Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Mon, 29 Apr 2024 12:10:42 +0100 Subject: [PATCH 09/12] pointing to ccd --- charts/prl-dgs/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/values.preview.template.yaml b/charts/prl-dgs/values.preview.template.yaml index 0911883d..5cab8eb1 100644 --- a/charts/prl-dgs/values.preview.template.yaml +++ b/charts/prl-dgs/values.preview.template.yaml @@ -21,7 +21,7 @@ java: MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIMETOLIVE: "30000" DOCMOSIS_SERVICE_DEV_MODE_FLAG: "true" PDF_TEST_ENABLED: "true" - CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2158-cdam" + CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170-cdam" AUTH_PROVIDER_SERVICE_CLIENT_BASEURL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" IDAM_S2S_URL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" DOCMOSIS_SERVICE_BASE_URL: "https://docmosis.aat.platform.hmcts.net" From 3a59ad22f9c3081a5dd300ed415e5603221f8178 Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Mon, 29 Apr 2024 13:01:55 +0100 Subject: [PATCH 10/12] pointing to ccd --- charts/prl-dgs/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/values.preview.template.yaml b/charts/prl-dgs/values.preview.template.yaml index 5cab8eb1..8e732910 100644 --- a/charts/prl-dgs/values.preview.template.yaml +++ b/charts/prl-dgs/values.preview.template.yaml @@ -21,7 +21,7 @@ java: MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIMETOLIVE: "30000" DOCMOSIS_SERVICE_DEV_MODE_FLAG: "true" PDF_TEST_ENABLED: "true" - CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170-cdam" + CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170" AUTH_PROVIDER_SERVICE_CLIENT_BASEURL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" IDAM_S2S_URL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" DOCMOSIS_SERVICE_BASE_URL: "https://docmosis.aat.platform.hmcts.net" From 493302f67164320f69834cc842c1248ec1c782be Mon Sep 17 00:00:00 2001 From: Sahitya Desireddy Date: Mon, 29 Apr 2024 14:47:11 +0100 Subject: [PATCH 11/12] pointing to ccd --- charts/prl-dgs/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/values.preview.template.yaml b/charts/prl-dgs/values.preview.template.yaml index 8e732910..5cab8eb1 100644 --- a/charts/prl-dgs/values.preview.template.yaml +++ b/charts/prl-dgs/values.preview.template.yaml @@ -21,7 +21,7 @@ java: MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIMETOLIVE: "30000" DOCMOSIS_SERVICE_DEV_MODE_FLAG: "true" PDF_TEST_ENABLED: "true" - CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170" + CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170-cdam" AUTH_PROVIDER_SERVICE_CLIENT_BASEURL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" IDAM_S2S_URL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" DOCMOSIS_SERVICE_BASE_URL: "https://docmosis.aat.platform.hmcts.net" From c375b194a6c564e04ceee3ca2d59aceb2ba45ff8 Mon Sep 17 00:00:00 2001 From: Aloknath Datta Date: Mon, 14 Oct 2024 10:20:05 +0100 Subject: [PATCH 12/12] Update values.preview.template.yaml --- charts/prl-dgs/values.preview.template.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/prl-dgs/values.preview.template.yaml b/charts/prl-dgs/values.preview.template.yaml index 91ec8eda..5c6cabc5 100644 --- a/charts/prl-dgs/values.preview.template.yaml +++ b/charts/prl-dgs/values.preview.template.yaml @@ -32,7 +32,7 @@ java: MANAGEMENT_ENDPOINT_HEALTH_CACHE_TIMETOLIVE: "30000" DOCMOSIS_SERVICE_DEV_MODE_FLAG: "true" PDF_TEST_ENABLED: "true" - CCD_CASE_DOCS_AM_API: "http://prl-ccd-definitions-pr-2170-cdam" + CCD_CASE_DOCS_AM_API: http://prl-ccd-definitions-pr-2170-cdam AUTH_PROVIDER_SERVICE_CLIENT_BASEURL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" IDAM_S2S_URL: "http://rpe-service-auth-provider-{{ .Values.global.environment }}.service.core-compute-{{ .Values.global.environment }}.internal" DOCMOSIS_SERVICE_BASE_URL: "https://docmosis.aat.platform.hmcts.net"