diff --git a/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest.java b/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest.java
index 0f4fe82..8e15a9c 100644
--- a/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest.java
+++ b/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest.java
@@ -43,22 +43,23 @@ import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import org.apache.commons.io.FileUtils;
-import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
public class FlowRunnerTest extends FlowRunnerTestBase {
private static final File TEST_DIR = ExecutionsTestUtil.getFlowDir("exectest1");
+ @Rule
+ public TemporaryFolder temporaryFolder = new TemporaryFolder();
private File workingDir;
private JobTypeManager jobtypeManager;
-
@Mock
private ProjectLoader fakeProjectLoader;
-
@Mock
private ExecutorLoader loader;
@@ -66,12 +67,7 @@ public class FlowRunnerTest extends FlowRunnerTestBase {
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
when(this.loader.updateExecutableReference(anyInt(), anyLong())).thenReturn(true);
- System.out.println("Create temp dir");
- this.workingDir = new File("build/tmp/_AzkabanTestDir_" + System.currentTimeMillis());
- if (this.workingDir.exists()) {
- FileUtils.deleteDirectory(this.workingDir);
- }
- this.workingDir.mkdirs();
+ this.workingDir = temporaryFolder.newFolder();
this.jobtypeManager =
new JobTypeManager(null, null, this.getClass().getClassLoader());
final JobTypePluginSet pluginSet = this.jobtypeManager.getJobTypePluginSet();
@@ -83,17 +79,6 @@ public class FlowRunnerTest extends FlowRunnerTestBase {
InteractiveTestJob.clearTestJobs();
}
- @After
- public void tearDown() throws IOException {
- System.out.println("Teardown temp dir");
- synchronized (this) {
- if (this.workingDir != null) {
- FileUtils.deleteDirectory(this.workingDir);
- this.workingDir = null;
- }
- }
- }
-
@Test
public void exec1Normal() throws Exception {
final EventCollectorListener eventCollector = new EventCollectorListener();
diff --git a/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest2.java b/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest2.java
index 6d1f35a..8c1126b 100644
--- a/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest2.java
+++ b/azkaban-exec-server/src/test/java/azkaban/execapp/FlowRunnerTest2.java
@@ -39,14 +39,13 @@ import azkaban.test.Utils;
import azkaban.test.executions.ExecutionsTestUtil;
import azkaban.utils.Props;
import java.io.File;
-import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
-import org.apache.commons.io.FileUtils;
import org.apache.log4j.Logger;
-import org.junit.After;
import org.junit.Before;
+import org.junit.Rule;
import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
/**
* Test the flow run, especially with embedded flows.
@@ -98,6 +97,8 @@ public class FlowRunnerTest2 extends FlowRunnerTestBase {
private static int id = 101;
private final Logger logger = Logger.getLogger(FlowRunnerTest2.class);
+ @Rule
+ public TemporaryFolder temporaryFolder = new TemporaryFolder();
private File workingDir;
private JobTypeManager jobtypeManager;
private ExecutorLoader fakeExecutorLoader;
@@ -106,12 +107,7 @@ public class FlowRunnerTest2 extends FlowRunnerTestBase {
@Before
public void setUp() throws Exception {
- System.out.println("Create temp dir");
- this.workingDir = new File("build/tmp/_AzkabanTestDir_" + System.currentTimeMillis());
- if (this.workingDir.exists()) {
- FileUtils.deleteDirectory(this.workingDir);
- }
- FileUtils.forceMkdir(this.workingDir);
+ this.workingDir = this.temporaryFolder.newFolder();
this.jobtypeManager = new JobTypeManager(null, null,
this.getClass().getClassLoader());
final JobTypePluginSet pluginSet = this.jobtypeManager.getJobTypePluginSet();
@@ -131,15 +127,6 @@ public class FlowRunnerTest2 extends FlowRunnerTestBase {
InteractiveTestJob.clearTestJobs();
}
- @After
- public void tearDown() throws IOException {
- System.out.println("Teardown temp dir");
- if (this.workingDir != null) {
- FileUtils.deleteDirectory(this.workingDir);
- this.workingDir = null;
- }
- }
-
/**
* Tests the basic successful flow run, and also tests all output variables from each job.
*/