From 951a9017027b198c2ffaaa134afd2b0f89e12294 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominique=20Eifl=C3=A4nder?= Date: Mon, 26 Apr 2021 09:41:57 +0200 Subject: [PATCH] RED-1186: Return mocked placeholders in unittest --- .../report/v1/server/client/Placeholder.java | 13 +++++++++++++ .../v1/server/client/PlaceholderClient.java | 11 +++++++++++ .../service/WordReportGenerationService.java | 9 +++++++++ ...anitisation justification Appendix A1.docx | Bin 98275 -> 98630 bytes .../RedactionReportIntegrationTest.java | 16 ++++++++++++++-- 5 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/Placeholder.java create mode 100644 redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/PlaceholderClient.java diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/Placeholder.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/Placeholder.java new file mode 100644 index 0000000..0ad800f --- /dev/null +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/Placeholder.java @@ -0,0 +1,13 @@ +package com.iqser.red.service.redaction.report.v1.server.client; + +import lombok.Builder; +import lombok.Data; + +@Data +@Builder +public class Placeholder { + + private String placeholder; + private String value; + +} diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/PlaceholderClient.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/PlaceholderClient.java new file mode 100644 index 0000000..a016b36 --- /dev/null +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/client/PlaceholderClient.java @@ -0,0 +1,11 @@ +package com.iqser.red.service.redaction.report.v1.server.client; + +import java.util.List; + +import org.springframework.cloud.openfeign.FeignClient; + +@FeignClient(name = "PlaceholderResource", url = "${configuration-service.url}") +public interface PlaceholderClient { + + List getPlaceholders(); +} diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java index 49264ac..62b969e 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/java/com/iqser/red/service/redaction/report/v1/server/service/WordReportGenerationService.java @@ -16,6 +16,8 @@ import org.apache.poi.xwpf.usermodel.XWPFTableRow; import org.springframework.stereotype.Service; import com.iqser.red.service.redaction.report.v1.api.model.ReportType; +import com.iqser.red.service.redaction.report.v1.server.client.Placeholder; +import com.iqser.red.service.redaction.report.v1.server.client.PlaceholderClient; import com.iqser.red.service.redaction.report.v1.server.model.ReportRedactionEntry; import com.iqser.red.service.redaction.report.v1.server.utils.ResourceLoader; @@ -27,6 +29,7 @@ public class WordReportGenerationService { private byte[] appendixA1Template; private byte[] appendixA2Template; + private PlaceholderClient placeholderClient; @PostConstruct @@ -39,6 +42,10 @@ public class WordReportGenerationService { public byte[] generateReport(ReportType reportType, List reportEntries, String filename) { + + List placeholder = placeholderClient.getPlaceholders(); + + byte[] template; if (reportType.equals(ReportType.WORD_SINGLE_FILE_APPENDIX_A1_TEMPLATE)) { @@ -52,6 +59,8 @@ public class WordReportGenerationService { try (ByteArrayInputStream is = new ByteArrayInputStream(template)) { XWPFDocument doc = new XWPFDocument(is); + // Replace placeholders. + addTableRows(doc, reportEntries, filename); return toByteArray(doc); } catch (IOException e) { diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/templates/Sanitisation justification Appendix A1.docx b/redaction-report-service-v1/redaction-report-service-server-v1/src/main/resources/templates/Sanitisation justification Appendix A1.docx index 9defb470350a3ca61a1a39486e783176a14ca780..ca052782798545901ee2bd481d5f4a376eac4700 100644 GIT binary patch delta 18312 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 diff --git a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java index 72b19c9..c45845d 100644 --- a/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java +++ b/redaction-report-service-v1/redaction-report-service-server-v1/src/test/java/com/iqser/red/service/redaction/report/v1/server/RedactionReportIntegrationTest.java @@ -1,5 +1,6 @@ package com.iqser.red.service.redaction.report.v1.server; +import static org.mockito.Mockito.when; import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT; import java.io.FileOutputStream; @@ -8,6 +9,8 @@ import java.util.List; import org.junit.Test; import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.MockBean; @@ -20,6 +23,8 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.iqser.red.service.configuration.v1.api.model.LegalBasisMapping; import com.iqser.red.service.redaction.report.v1.api.model.ReportType; import com.iqser.red.service.redaction.report.v1.server.client.LegalBasisMappingClient; +import com.iqser.red.service.redaction.report.v1.server.client.Placeholder; +import com.iqser.red.service.redaction.report.v1.server.client.PlaceholderClient; import com.iqser.red.service.redaction.report.v1.server.configuration.MessagingConfiguration; import com.iqser.red.service.redaction.report.v1.server.model.ReportRedactionEntry; import com.iqser.red.service.redaction.report.v1.server.service.ExcelReportGenerationService; @@ -44,7 +49,7 @@ public class RedactionReportIntegrationTest { @MockBean private AmazonS3 s3Client; - @Autowired + @InjectMocks private WordReportGenerationService wordReportGenerationService; @Autowired @@ -56,10 +61,15 @@ public class RedactionReportIntegrationTest { @Autowired private RedactionLogConverterService redactionLogConverterService; + @Mock + private PlaceholderClient placeholderClient; + @Test public void testWordReportGeneration() throws IOException { + when(placeholderClient.getPlaceholders()).thenReturn(List.of(Placeholder.builder().placeholder("{{dossier.name}}").value("Dossier 1").build())); + ClassPathResource redactionLogResource = new ClassPathResource("files/RedactedLog.txt"); RedactionLog redactionLog = objectMapper.readValue(redactionLogResource.getInputStream(), RedactionLog.class); @@ -73,12 +83,14 @@ public class RedactionReportIntegrationTest { List reportEntries = redactionLogConverterService.convertAndSort(redactionLog, legalBasisMapping); - byte[] report = wordReportGenerationService.generateReport(ReportType.WORD_SINGLE_FILE_APPENDIX_A2_TEMPLATE, reportEntries, redactionLog + wordReportGenerationService.init(); + byte[] report = wordReportGenerationService.generateReport(ReportType.WORD_SINGLE_FILE_APPENDIX_A1_TEMPLATE, reportEntries, redactionLog .getFilename()); try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/efsa_template.docx")) { fileOutputStream.write(report); } + }