Browse Source

Do not require NullPointerException to have a null-message on JDK < 16

It seems depending on the exact JDK some Exceptions have failure messages populated

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1886527 13f79535-47bb-0310-9956-ffa450edef68
tags/REL_5_1_0
Dominik Stadler 3 years ago
parent
commit
7a8f21b989
1 changed files with 1 additions and 7 deletions
  1. 1
    7
      src/integrationtest/org/apache/poi/stress/TestAllFiles.java

+ 1
- 7
src/integrationtest/org/apache/poi/stress/TestAllFiles.java View File

import static org.junit.jupiter.api.Assertions.assertDoesNotThrow; import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.junit.jupiter.api.Assertions.fail; import static org.junit.jupiter.api.Assertions.fail;
// also need to set JVM parameter: -Djunit.jupiter.execution.parallel.enabled=true // also need to set JVM parameter: -Djunit.jupiter.execution.parallel.enabled=true
@Execution(ExecutionMode.CONCURRENT) @Execution(ExecutionMode.CONCURRENT)
public class TestAllFiles { public class TestAllFiles {
private static final File ROOT_DIR = new File("test-data");
private static final int jreVersion =
Integer.parseInt(System.getProperty("java.version").replaceAll("^(?:1\\.)?(\\d+).*", "$1"));
public static final File ROOT_DIR = new File("test-data");


public static final String[] SCAN_EXCLUDES = { public static final String[] SCAN_EXCLUDES = {
"**/.svn/**", "**/.svn/**",
verify(file, exec, exClass, exMessage, password); verify(file, exec, exClass, exMessage, password);
} }



public static Stream<Arguments> handleFiles() throws IOException { public static Stream<Arguments> handleFiles() throws IOException {
return allfiles("handle"); return allfiles("handle");
} }
Exception e = assertThrows((Class<? extends Exception>)exClass, exec); Exception e = assertThrows((Class<? extends Exception>)exClass, exec);
String actMsg = pathReplace(e.getMessage()); String actMsg = pathReplace(e.getMessage());
if (NullPointerException.class.isAssignableFrom(exClass)) { if (NullPointerException.class.isAssignableFrom(exClass)) {
// with Java 16+ NullPointerExceptions may contain a message ... but apparently not always ?!
assertTrue(jreVersion >= 16 || actMsg == null, errPrefix);
if (actMsg != null) { if (actMsg != null) {
assertTrue(actMsg.contains(exMessage), errPrefix + "Message: "+actMsg+" - didn't contain: "+exMessage); assertTrue(actMsg.contains(exMessage), errPrefix + "Message: "+actMsg+" - didn't contain: "+exMessage);
} }

Loading…
Cancel
Save