From: Dominik Stadler Date: Fri, 16 Nov 2018 15:08:59 +0000 (+0000) Subject: One more try to avoid the test-failures related to ImageIO-cache dir X-Git-Tag: REL_4_0_1~16 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=b54c63f113e706e037058a4ba5b03c3bc1413fc2;p=poi.git One more try to avoid the test-failures related to ImageIO-cache dir git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1846719 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPictureData.java b/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPictureData.java index df7d7cf213..d82423b86e 100644 --- a/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPictureData.java +++ b/src/testcases/org/apache/poi/hssf/usermodel/TestHSSFPictureData.java @@ -19,7 +19,6 @@ package org.apache.poi.hssf.usermodel; import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; -import java.io.File; import java.io.IOException; import java.util.List; @@ -28,6 +27,7 @@ import javax.imageio.ImageIO; import junit.framework.TestCase; import org.apache.poi.hssf.HSSFTestDataSamples; +import org.junit.AfterClass; import org.junit.BeforeClass; /** @@ -37,19 +37,19 @@ import org.junit.BeforeClass; * @author Yegor Kozlov (yegor at apache dot org) * @author Trejkaz (trejkaz at trypticon dot org) */ -public final class TestHSSFPictureData extends TestCase{ +public final class TestHSSFPictureData extends TestCase { + private static boolean cacheBefore = ImageIO.getUseCache(); + @BeforeClass public static void setUpClass() { - // ensure that temp-dir exists because ImageIO requires it - String tmpDirProperty = System.getProperty("java.io.tmpdir"); - if(tmpDirProperty != null) { - final File tmpDir = new File(tmpDirProperty); - if(!tmpDir.exists()) { - if(!tmpDir.mkdirs()) { - throw new IllegalStateException("Could not create temporary directory " + tmpDirProperty + ", full path " + tmpDir.getAbsolutePath()); - } - } - } + // disable cache to avoid strange errors related to temporary directories in CI-builds + ImageIO.setUseCache(false); + } + + @AfterClass + public static void tearDownClass() { + // reset image cache to previous state + ImageIO.setUseCache(cacheBefore); } public void testPictures() throws IOException {