[FLINK-5817] [test] (followup) Fix temporary folder and temp file path 
generation

This makes sure the TemporaryFolder rule is already evaluated by the time
the temp files are generated.

This also injects a random parent directory to ensure that even for fix 
directory/file
names, the absolute path is randomized.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/1456f0a7
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/1456f0a7
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/1456f0a7

Branch: refs/heads/master
Commit: 1456f0a7084f45056ea9b09e3f85b1aae6b11c6e
Parents: 709fa1d
Author: Stephan Ewen <[email protected]>
Authored: Sun Feb 19 16:21:07 2017 +0100
Committer: Stephan Ewen <[email protected]>
Committed: Mon Feb 20 01:01:23 2017 +0100

----------------------------------------------------------------------
 .../org/apache/flink/test/util/AbstractTestBase.java   | 13 ++++++-------
 .../java/org/apache/flink/test/util/TestBaseUtils.java |  4 ++++
 2 files changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/1456f0a7/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/AbstractTestBase.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/AbstractTestBase.java
 
b/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/AbstractTestBase.java
index 544d473..be9b0b7 100644
--- 
a/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/AbstractTestBase.java
+++ 
b/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/AbstractTestBase.java
@@ -24,7 +24,7 @@ import com.google.common.io.Files;
 import org.apache.flink.configuration.Configuration;
 import org.apache.flink.runtime.minicluster.LocalFlinkMiniCluster;
 
-import org.junit.Rule;
+import org.junit.ClassRule;
 import org.junit.rules.TemporaryFolder;
 
 import scala.concurrent.duration.FiniteDuration;
@@ -49,8 +49,8 @@ public abstract class AbstractTestBase extends TestBaseUtils {
 
        protected int numTaskManagers = 1;
 
-       @Rule
-       public final TemporaryFolder temporaryFolder = new TemporaryFolder();
+       @ClassRule
+       public static final TemporaryFolder temporaryFolder = new 
TemporaryFolder();
 
 
        /** The mini cluster that runs the test programs */
@@ -106,12 +106,12 @@ public abstract class AbstractTestBase extends 
TestBaseUtils {
        // 
--------------------------------------------------------------------------------------------
 
        public String getTempDirPath(String dirName) throws IOException {
-               File f = temporaryFolder.newFolder(dirName);
+               File f = createAndRegisterTempFile(dirName);
                return f.toURI().toString();
        }
 
        public String getTempFilePath(String fileName) throws IOException {
-               File f = temporaryFolder.newFile(fileName);
+               File f = createAndRegisterTempFile(fileName);
                return f.toURI().toString();
        }
 
@@ -122,7 +122,6 @@ public abstract class AbstractTestBase extends 
TestBaseUtils {
        }
 
        public File createAndRegisterTempFile(String fileName) throws 
IOException {
-               return temporaryFolder.newFile(fileName);
+               return new File(temporaryFolder.newFolder(), fileName);
        }
-
 }

http://git-wip-us.apache.org/repos/asf/flink/blob/1456f0a7/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/TestBaseUtils.java
----------------------------------------------------------------------
diff --git 
a/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/TestBaseUtils.java
 
b/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/TestBaseUtils.java
index 8431226..cc7c0e2 100644
--- 
a/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/TestBaseUtils.java
+++ 
b/flink-test-utils-parent/flink-test-utils/src/main/java/org/apache/flink/test/util/TestBaseUtils.java
@@ -74,6 +74,8 @@ import java.util.concurrent.TimeUnit;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+import static org.apache.flink.util.Preconditions.checkArgument;
+
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
@@ -283,6 +285,8 @@ public class TestBaseUtils extends TestLogger {
                        String resultPath,
                        String[] excludePrefixes,
                        boolean inOrderOfFiles) throws IOException {
+               
+               checkArgument(resultPath != null, "resultPath cannot be be 
null");
 
                final BufferedReader[] readers = getResultReader(resultPath, 
excludePrefixes, inOrderOfFiles);
                try {

Reply via email to