Skip to content

Commit 97b7dfa

Browse files
authored
Merge pull request #1210 from hugares/use-junit-temp-folder-rule
Use JUnit TemporaryFolder rule in CompressArchiveUtilTest
2 parents 9bdabc1 + 9900e7b commit 97b7dfa

File tree

1 file changed

+17
-28
lines changed

1 file changed

+17
-28
lines changed

src/test/java/com/github/dockerjava/core/CompressArchiveUtilTest.java

Lines changed: 17 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@
33
import com.github.dockerjava.core.util.CompressArchiveUtil;
44
import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
55
import org.apache.commons.compress.archivers.tar.TarArchiveInputStream;
6-
import org.apache.commons.io.FileUtils;
76
import org.apache.commons.io.IOUtils;
7+
import org.junit.Rule;
88
import org.junit.Test;
9+
import org.junit.rules.TemporaryFolder;
910

1011
import java.io.BufferedInputStream;
1112
import java.io.File;
@@ -22,30 +23,24 @@
2223

2324
public class CompressArchiveUtilTest {
2425

26+
@Rule
27+
public TemporaryFolder tempFolder = new TemporaryFolder();
28+
2529
@Test
2630
public void testExecutableFlagIsPreserved() throws Exception {
27-
File executableFile = createExecutableFile();
28-
File archive = CompressArchiveUtil.archiveTARFiles(executableFile.getParentFile(), asList(executableFile),
31+
File executableFile = tempFolder.newFile("executableFile.sh");
32+
executableFile.setExecutable(true);
33+
assertThat(executableFile.canExecute(), is(true));
34+
35+
File archive = CompressArchiveUtil.archiveTARFiles(tempFolder.getRoot(), asList(executableFile),
2936
"archive");
3037
File expectedFile = extractFileByName(archive, "executableFile.sh", "executableFile.sh.result");
3138

3239
assertThat("should be executable", expectedFile.canExecute());
33-
expectedFile.delete();
34-
archive.delete();
35-
}
36-
37-
private File createExecutableFile() throws IOException {
38-
File baseDir = new File(FileUtils.getTempDirectoryPath());
39-
File executableFile = new File(baseDir, "executableFile.sh");
40-
executableFile.createNewFile();
41-
executableFile.setExecutable(true);
42-
assertThat(executableFile.canExecute(), is(true));
43-
return executableFile;
4440
}
4541

4642
private File extractFileByName(File archive, String filenameToExtract, String outputName) throws IOException {
47-
File baseDir = new File(FileUtils.getTempDirectoryPath());
48-
File expectedFile = new File(baseDir, outputName);
43+
File expectedFile = new File(tempFolder.newFolder(), outputName);
4944
expectedFile.delete();
5045
assertThat(expectedFile.exists(), is(false));
5146

@@ -71,26 +66,23 @@ private File extractFileByName(File archive, String filenameToExtract, String ou
7166

7267
@Test
7368
public void testSymbolicLinkDir() throws IOException {
74-
Path uploadDir = Files.createTempDirectory("upload");
75-
Path linkTarget = Files.createTempDirectory("ink-target");
69+
Path uploadDir = tempFolder.newFolder("upload").toPath();
70+
Path linkTarget = tempFolder.newFolder("link-target").toPath();
7671
Path tmpFile = Files.createTempFile(linkTarget, "link-dir", "rand");
7772
Files.createSymbolicLink(uploadDir.resolve("link-folder"), linkTarget);
78-
Path tarGzFile = Files.createTempFile("docker-java", ".tar.gz");
73+
Path tarGzFile = tempFolder.newFile("docker-java.tar.gz").toPath();
7974
//follow link only works for childrenOnly=false
8075
CompressArchiveUtil.tar(uploadDir, tarGzFile, true, false);
8176
File expectedFile = extractFileByName(tarGzFile.toFile(), tmpFile.toFile().getName(), "foo1");
8277
assertThat(expectedFile.canRead(), is(true));
83-
uploadDir.toFile().delete();
84-
linkTarget.toFile().delete();
85-
tarGzFile.toFile().delete();
8678
}
8779

8880
@Test
8981
public void testSymbolicLinkFile() throws IOException {
90-
Path uploadDir = Files.createTempDirectory("upload");
91-
Path tmpFile = Files.createTempFile("src", "");
82+
Path uploadDir = tempFolder.newFolder("upload").toPath();
83+
Path tmpFile = tempFolder.newFile("src").toPath();
9284
Files.createSymbolicLink(uploadDir.resolve("link-file"), tmpFile);
93-
Path tarGzFile = Files.createTempFile("docker-java", ".tar.gz");
85+
Path tarGzFile = tempFolder.newFile("docker-java.tar.gz").toPath();
9486
boolean childrenOnly = false;
9587
CompressArchiveUtil.tar(uploadDir, tarGzFile, true, childrenOnly);
9688
File expectedFile = extractFileByName(tarGzFile.toFile(), "link-file", "foo1");
@@ -99,8 +91,5 @@ public void testSymbolicLinkFile() throws IOException {
9991
CompressArchiveUtil.tar(uploadDir, tarGzFile, true, childrenOnly);
10092
extractFileByName(tarGzFile.toFile(), "link-file", "foo1");
10193
assertThat(expectedFile.canRead(), is(true));
102-
uploadDir.toFile().delete();
103-
tmpFile.toFile().delete();
104-
tarGzFile.toFile().delete();
10594
}
10695
}

0 commit comments

Comments
 (0)