]> source.dussan.org Git - poi.git/commitdiff
Enable running more integration tests from Gradle.
authorMarius Volkhart <mariusvolkhart@apache.org>
Fri, 26 Feb 2021 22:14:17 +0000 (22:14 +0000)
committerMarius Volkhart <mariusvolkhart@apache.org>
Fri, 26 Feb 2021 22:14:17 +0000 (22:14 +0000)
This is particularly relevant for developers who import the Gradle project into their IDE and run tests using the Gradle test runner. Those developers were previously unable to debug integration tests.

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1886962 13f79535-47bb-0310-9956-ffa450edef68

build.gradle
src/integrationtest/org/apache/poi/stress/TestAllFiles.java

index 70684aadc5876faf21285afa7628e29caca923ba..f57452864601f3f9a97988f5c867c8cad6a843e5 100644 (file)
@@ -421,7 +421,6 @@ project('integrationtest') {
 
     test {
         // exclude these from the normal test-run
-        exclude '**/TestAllFiles.class'
         exclude '**/*FileHandler.class'
     }
 
index 8fbfd43c2fbe6722c66cc684ce7d67cdb5a494fa..55777d12ee0dcb9f67589512a870dd5913bdd17c 100644 (file)
@@ -70,7 +70,8 @@ import org.opentest4j.AssertionFailedError;
 // also need to set JVM parameter: -Djunit.jupiter.execution.parallel.enabled=true
 @Execution(ExecutionMode.CONCURRENT)
 public class TestAllFiles {
-    public static final File ROOT_DIR = new File("test-data");
+    private static final String DEFAULT_TEST_DATA_PATH = "test-data";
+    public static final File ROOT_DIR = new File(System.getProperty("POI.testdata.path", DEFAULT_TEST_DATA_PATH));
 
     public static final String[] SCAN_EXCLUDES = {
         "**/.svn/**",
@@ -183,7 +184,18 @@ public class TestAllFiles {
     }
 
     private static String pathReplace(String msg) {
+        if (msg == null) return null;
+
         // Windows path replacement
-        return msg == null ? null : msg.replace('\\', '/');
+        msg = msg.replace('\\', '/');
+
+        // Adjust file paths to remove unwanted file path info.
+        int filePathIndex = msg.indexOf(ROOT_DIR.toString());
+        if (filePathIndex > 0) {
+            int testDataDirectoryIndex = msg.indexOf(DEFAULT_TEST_DATA_PATH);
+            msg = msg.substring(0, filePathIndex) + msg.substring(testDataDirectoryIndex);
+        }
+
+        return msg;
     }
 }