diff --git a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RulesTest.java b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RulesTest.java index 6bcfa394..c33dbbbf 100644 --- a/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RulesTest.java +++ b/redaction-service-v1/redaction-service-server-v1/src/test/java/com/iqser/red/service/redaction/v1/server/RulesTest.java @@ -85,7 +85,9 @@ import com.iqser.red.storage.commons.StorageAutoConfiguration; import com.iqser.red.storage.commons.service.StorageService; import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +@Slf4j @RunWith(SpringRunner.class) @SpringBootTest(classes = Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @Import(RulesTest.RulesTestConfiguration.class) @@ -249,10 +251,31 @@ public class RulesTest { @Test public void analyseAllFilesAndCompareRedactionLogs() { - Set files = getFileNames(new HashSet<>(), FileSystems.getDefault().getPath(RESOURCES_PATH)); - System.out.println("Will analyse " + files.size() + " files and compare its RedactionLogs."); - fileSize = files.size(); - files.forEach(this::analyseFileAndCompareRedactionLog); + Set fileNames = getFileNames(new HashSet<>(), FileSystems.getDefault().getPath(RESOURCES_PATH)); + System.out.println("Will analyse " + fileNames.size() + " files and compare its RedactionLogs."); + fileSize = fileNames.size(); + + Map failedFiles = new HashMap<>(); + + for (String fileName : fileNames) { + + try { + analyseFileAndCompareRedactionLog(fileName); + } catch (AssertionError assertionError) { + failedFiles.put(fileName, assertionError); + } + } + + if (!failedFiles.isEmpty()) { + log.warn("WARNING: {} files from {} failed", failedFiles.size(), fileSize); + for (String fileName : failedFiles.keySet()) { + log.warn(" - '{}' failed with Error: {} See line {} in {}", fileName, failedFiles.get(fileName), failedFiles.get(fileName) + .getStackTrace()[0].getLineNumber(), failedFiles.get(fileName).getStackTrace()[0].getClassName()); + } + } + + assertThat(failedFiles).isEmpty(); + } @@ -313,7 +336,11 @@ public class RulesTest { assertThat(redactionLog.getRulesVersion()).isEqualTo(savedRedactionLog.getRulesVersion()); assertThat(redactionLog.getLegalBasisVersion()).isEqualTo(savedRedactionLog.getLegalBasisVersion()); - assertThat(redactionLog.getRedactionLogEntry().stream().filter(r -> !r.isFalsePositive()).collect(Collectors.toSet()).size()).isEqualTo(savedRedactionLog.getRedactionLogEntry().stream().filter(r -> !r.isFalsePositive()).collect(Collectors.toSet()).size()); + assertThat(redactionLog.getRedactionLogEntry() + .stream() + .filter(r -> !r.isFalsePositive()) + .collect(Collectors.toSet()) + .size()).isEqualTo(savedRedactionLog.getRedactionLogEntry().stream().filter(r -> !r.isFalsePositive()).collect(Collectors.toSet()).size()); assertThat(redactionLog.getLegalBasis().size()).isEqualTo(savedRedactionLog.getLegalBasis().size()); for (RedactionLogLegalBasis redactionLegalBasis : redactionLog.getLegalBasis()) {