This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-compress.git
The following commit(s) were added to refs/heads/master by this push:
new 47e9e1fae Use NIO in tests
47e9e1fae is described below
commit 47e9e1faeb91bbf0e7d6c82809e4c02be5babfa1
Author: Gary Gregory <[email protected]>
AuthorDate: Tue Nov 14 11:42:10 2023 -0500
Use NIO in tests
---
.../org/apache/commons/compress/AbstractTest.java | 19 ++++++++++---------
.../archivers/tar/TarArchiveInputStreamTest.java | 5 +++--
2 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/src/test/java/org/apache/commons/compress/AbstractTest.java
b/src/test/java/org/apache/commons/compress/AbstractTest.java
index 2446d9549..f28b4bb56 100644
--- a/src/test/java/org/apache/commons/compress/AbstractTest.java
+++ b/src/test/java/org/apache/commons/compress/AbstractTest.java
@@ -32,6 +32,7 @@ import java.net.URISyntaxException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
+import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -149,25 +150,25 @@ public abstract class AbstractTest extends
AbstractTempDirTest {
*/
protected File checkArchiveContent(final ArchiveInputStream<?>
inputStream, final List<String> expected, final boolean cleanUp)
throws Exception {
- final File result = createTempDirectory("dir-result");
+ final Path result = createTempDirectory("dir-result");
try {
ArchiveEntry entry;
while ((entry = inputStream.getNextEntry()) != null) {
- final File outputFile = new File(result.getCanonicalPath() +
"/result/" + entry.getName());
+ final Path outputFile = Paths.get(result.toString(), "result",
entry.getName());
long bytesCopied = 0;
if (entry.isDirectory()) {
- outputFile.mkdirs();
+ Files.createDirectories(outputFile);
} else {
- outputFile.getParentFile().mkdirs();
- bytesCopied = Files.copy(inputStream, outputFile.toPath());
+ Files.createDirectories(outputFile.getParent());
+ bytesCopied = Files.copy(inputStream, outputFile);
}
final long size = entry.getSize();
if (size != ArchiveEntry.SIZE_UNKNOWN) {
assertEquals(size, bytesCopied, "Entry.size should equal
bytes read.");
}
- if (!outputFile.exists()) {
+ if (!Files.exists(outputFile)) {
fail("Extraction failed: " + entry.getName());
}
if (expected != null &&
!expected.remove(getExpectedString(entry))) {
@@ -186,7 +187,7 @@ public abstract class AbstractTest extends
AbstractTempDirTest {
forceDelete(result);
}
}
- return result;
+ return result.toFile();
}
/**
@@ -305,8 +306,8 @@ public abstract class AbstractTest extends
AbstractTempDirTest {
return archivePath;
}
- public File createTempDirectory(final String prefix) throws IOException {
- return Files.createTempDirectory(getTempDirPath(), prefix).toFile();
+ public Path createTempDirectory(final String prefix) throws IOException {
+ return Files.createTempDirectory(getTempDirPath(), prefix);
}
/**
diff --git
a/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
b/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
index 9c3b1a1a9..eb91675c4 100644
---
a/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
+++
b/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
@@ -34,6 +34,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
+import java.nio.file.Path;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
@@ -320,13 +321,13 @@ public class TarArchiveInputStreamTest extends
AbstractTest {
@Test
public void testShouldThrowAnExceptionOnTruncatedEntries() throws
Exception {
- final File dir = createTempDirectory("COMPRESS-279");
+ final Path dir = createTempDirectory("COMPRESS-279");
try (TarArchiveInputStream is = getTestStream("/COMPRESS-279.tar")) {
assertThrows(IOException.class, () -> {
TarArchiveEntry entry = is.getNextTarEntry();
int count = 0;
while (entry != null) {
- Files.copy(is, new File(dir,
String.valueOf(count)).toPath());
+ Files.copy(is, dir.resolve(String.valueOf(count)));
count++;
entry = is.getNextTarEntry();
}