Author: centic
Date: Sun Mar 20 08:20:05 2022
New Revision: 1899077

URL: http://svn.apache.org/viewvc?rev=1899077&view=rev
Log:
Avoid flaky tests with parallel execution

One test stores and deletes files named "-saved.xls", so
we need to prevent other tests from reading those

Modified:
    
poi/trunk/poi-integration/src/test/java/org/apache/poi/stress/TestAllFiles.java
    
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/BaseTestIteratingXLS.java

Modified: 
poi/trunk/poi-integration/src/test/java/org/apache/poi/stress/TestAllFiles.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi-integration/src/test/java/org/apache/poi/stress/TestAllFiles.java?rev=1899077&r1=1899076&r2=1899077&view=diff
==============================================================================
--- 
poi/trunk/poi-integration/src/test/java/org/apache/poi/stress/TestAllFiles.java 
(original)
+++ 
poi/trunk/poi-integration/src/test/java/org/apache/poi/stress/TestAllFiles.java 
Sun Mar 20 08:20:05 2022
@@ -136,6 +136,7 @@ public class TestAllFiles {
         final List<Arguments> result = new ArrayList<>(100);
         for (String file : scanner.getIncludedFiles()) {
                        // avoid running on files leftover from previous failed 
runs
+                       // or being created by tests run in parallel
                        if(file.endsWith("-saved.xls") || 
file.endsWith("TestHPSFWritingFunctionality.doc")) {
                                continue;
                        }

Modified: 
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/BaseTestIteratingXLS.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/BaseTestIteratingXLS.java?rev=1899077&r1=1899076&r2=1899077&view=diff
==============================================================================
--- 
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/BaseTestIteratingXLS.java 
(original)
+++ 
poi/trunk/poi/src/test/java/org/apache/poi/hssf/dev/BaseTestIteratingXLS.java 
Sun Mar 20 08:20:05 2022
@@ -91,6 +91,14 @@ public abstract class BaseTestIteratingX
     @ParameterizedTest
     @MethodSource("files")
     void testMain(File file, Class<? extends Throwable> t) throws Exception {
+        // avoid running files leftover from previous failed runs
+        // or created by tests running in parallel
+        // otherwise this would cause sporadic failures with
+        // parallel test execution
+        if(file.getName().endsWith("-saved.xls")) {
+            return;
+        }
+
         Executable ex = () -> runOneFile(file);
         if (t == null) {
             assertDoesNotThrow(ex);



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to