From 5dc0e1932ef3b67e825564cb690b99fce34eef20 Mon Sep 17 00:00:00 2001 From: Philipp Schramm Date: Thu, 7 Oct 2021 14:12:39 +0200 Subject: [PATCH] Get temporary directory for tests dynamically to prevent issues with Windows systems --- .../v1/server/RedactionIntegrationTest.java | 29 ++++++++++++------- .../PdfSegmentationServiceTest.java | 11 ++++++- 2 files changed, 29 insertions(+), 11 deletions(-) diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java index 525b161b..74977cfa 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RedactionIntegrationTest.java @@ -25,6 +25,7 @@ import com.iqser.red.storage.commons.StorageAutoConfiguration; import com.iqser.red.storage.commons.service.StorageService; import lombok.SneakyThrows; import org.apache.commons.io.IOUtils; +import org.apache.commons.lang3.StringUtils; import org.junit.After; import org.junit.Before; import org.junit.Ignore; @@ -575,7 +576,7 @@ public class RedactionIntegrationTest { .fileId(TEST_FILE_ID) .build()); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Annotated3.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Annotated3.pdf")) { fileOutputStream.write(annotateResponse.getDocument()); } long rstart = System.currentTimeMillis(); @@ -687,7 +688,7 @@ public class RedactionIntegrationTest { System.out.println("first analysis duration: " + (end - start)); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Test.json")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Test.json")) { fileOutputStream.write(objectMapper.writeValueAsBytes(redactionStorageService.getText(TEST_DOSSIER_ID, TEST_FILE_ID))); } @@ -759,7 +760,7 @@ public class RedactionIntegrationTest { .fileId(TEST_FILE_ID) .build()); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Annotated.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Annotated.pdf")) { fileOutputStream.write(annotateResponse.getDocument()); } @@ -795,7 +796,7 @@ public class RedactionIntegrationTest { .fileId(TEST_FILE_ID) .build()); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Annotated.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Annotated.pdf")) { fileOutputStream.write(annotateResponse.getDocument()); } long end = System.currentTimeMillis(); @@ -891,7 +892,7 @@ public class RedactionIntegrationTest { .fileId(TEST_FILE_ID) .build()); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Annotated.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Annotated.pdf")) { fileOutputStream.write(annotateResponse.getDocument()); } long end = System.currentTimeMillis(); @@ -917,7 +918,7 @@ public class RedactionIntegrationTest { RedactionResult result = redactionController.classify(redactionRequest); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Classified.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Classified.pdf")) { fileOutputStream.write(result.getDocument()); } } @@ -939,7 +940,7 @@ public class RedactionIntegrationTest { RedactionResult result = redactionController.sections(redactionRequest); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Sections.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Sections.pdf")) { fileOutputStream.write(result.getDocument()); } } @@ -961,7 +962,7 @@ public class RedactionIntegrationTest { RedactionResult result = redactionController.htmlTables(redactionRequest); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Tables.html")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Tables.html")) { fileOutputStream.write(result.getDocument()); } } @@ -983,7 +984,7 @@ public class RedactionIntegrationTest { RedactionResult result = redactionController.htmlTables(redactionRequest); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Tables.html")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Tables.html")) { fileOutputStream.write(result.getDocument()); } } @@ -1053,7 +1054,7 @@ public class RedactionIntegrationTest { .fileId(TEST_FILE_ID) .build()); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Annotated.pdf")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Annotated.pdf")) { fileOutputStream.write(annotateResponse.getDocument()); } long end = System.currentTimeMillis(); @@ -1081,4 +1082,12 @@ public class RedactionIntegrationTest { } } + private static String getTemporaryDirectory() { + String tmpdir = System.getProperty("java.io.tmpdir"); + if (StringUtils.isNotBlank(tmpdir)) { + return tmpdir; + } + return "/tmp"; + } + } diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationServiceTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationServiceTest.java index 2a2c3a37..e24dcbbf 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationServiceTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/segmentation/PdfSegmentationServiceTest.java @@ -13,6 +13,7 @@ import com.iqser.red.service.redaction.v1.server.tableextraction.service.RulingC import com.iqser.red.service.redaction.v1.server.tableextraction.service.TableExtractionService; import org.junit.Ignore; import org.junit.Test; +import org.junit.platform.commons.util.StringUtils; import org.junit.runner.RunWith; import org.kie.api.runtime.KieContainer; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -95,7 +96,7 @@ public class PdfSegmentationServiceTest { for (PdfImage image : page.getImages()) { try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) { ImageIO.write(image.getImage(), "png", baos); - try (FileOutputStream fileOutputStream = new FileOutputStream("/tmp/Image " + i + ".png")) { + try (FileOutputStream fileOutputStream = new FileOutputStream(getTemporaryDirectory() + "/Image " + i + ".png")) { fileOutputStream.write(baos.toByteArray()); } } @@ -239,4 +240,12 @@ public class PdfSegmentationServiceTest { .equals(firstTableHeaderCells))).isTrue(); } + private static String getTemporaryDirectory() { + String tmpdir = System.getProperty("java.io.tmpdir"); + if (StringUtils.isNotBlank(tmpdir)) { + return tmpdir; + } + return "/tmp"; + } + }