]> source.dussan.org Git - poi.git/commitdiff
Junit 5: Run some tests which change static BYTE_ARRAY_MAX_OVERRIDE in isolation
authorDominik Stadler <centic@apache.org>
Thu, 15 Apr 2021 14:25:44 +0000 (14:25 +0000)
committerDominik Stadler <centic@apache.org>
Thu, 15 Apr 2021 14:25:44 +0000 (14:25 +0000)
Otherwise many other tests can become flaky if the value is set very low

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

poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/BaseTestPPTIterating.java
poi-scratchpad/src/test/java/org/apache/poi/hslf/dev/TestSlideShowDumper.java
poi/src/main/java/org/apache/poi/util/IOUtils.java
poi/src/test/java/org/apache/poi/util/TestIOUtils.java

index 6722f00f41bb06bf5d57547903f4f92475d16173..980d6538e85a360b219d4efe94384c70c59c384f 100644 (file)
@@ -21,7 +21,6 @@ import static org.junit.jupiter.api.Assertions.assertThrows;
 
 import java.io.File;
 import java.io.PrintStream;
-import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -38,10 +37,12 @@ import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.NullPrintStream;
 import org.junit.jupiter.api.AfterEach;
 import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.parallel.Isolated;
 import org.junit.jupiter.params.ParameterizedTest;
 import org.junit.jupiter.params.provider.Arguments;
 import org.junit.jupiter.params.provider.MethodSource;
 
+@Isolated      // this test changes global static BYTE_ARRAY_MAX_OVERRIDE
 public abstract class BaseTestPPTIterating {
     protected static final Set<String> OLD_FILES = new HashSet<>();
     static {
@@ -76,7 +77,7 @@ public abstract class BaseTestPPTIterating {
     private final PrintStream save = System.out;
 
     @BeforeEach
-    void setUpBase() throws UnsupportedEncodingException {
+    void setUpBase() {
         // set a higher max allocation limit as some test-files require more
         IOUtils.setByteArrayMaxOverride(5*1024*1024);
 
index 51b9ee5d694b5cf17ce47e6ebd3b294b65a187ed..5eecf4370fd34081284defe85de4f77e3fa9ffe8 100644 (file)
@@ -29,7 +29,9 @@ import org.apache.poi.EmptyFileException;
 import org.apache.poi.hslf.HSLFTestDataSamples;
 import org.apache.poi.util.IOUtils;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Isolated;
 
+@Isolated      // this test changes global static BYTE_ARRAY_MAX_OVERRIDE
 public class TestSlideShowDumper extends BaseTestPPTIterating {
     private static final Set<String> FAILING = new HashSet<>();
     static {
index 7853f68ac17eb73f43c777ac148add246e8bba8b..ec348b67a2b38a35c32b6ff82e375301b661e53e 100644 (file)
@@ -526,7 +526,7 @@ public final class IOUtils {
 
     private static void throwRFE(long length, int maxLength) {
         throw new RecordFormatException(String.format(Locale.ROOT, "Tried to allocate an array of length %,d" +
-                ", but the maximum lenght for this record type is %,d.\n" +
+                ", but the maximum length for this record type is %,d.\n" +
                 "If the file is not corrupt, please open an issue on bugzilla to request \n" +
                 "increasing the maximum allowable size for this record type.\n"+
                 "As a temporary workaround, consider setting a higher override value with " +
index 19b64dd3c17fa546fdf0701abc191999cc676b63..d09dc5912e69e9e35ee84c36facb46cc07e36859 100644 (file)
@@ -43,7 +43,9 @@ import org.apache.poi.EmptyFileException;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.parallel.Isolated;
 
+@Isolated      // this test changes global static BYTE_ARRAY_MAX_OVERRIDE
 final class TestIOUtils {
     private static File TMP;
     private static final long LENGTH = 300 + new Random().nextInt(9000);
@@ -531,7 +533,7 @@ final class TestIOUtils {
         }
     }
 
-    public class NullInputStream extends InputStream {
+    public static class NullInputStream extends InputStream {
         private final int bytes;
         private final boolean exception;