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-io.git


The following commit(s) were added to refs/heads/master by this push:
     new b894d66c Port some test code from IO to NIO APIs
b894d66c is described below

commit b894d66cf07f8ab76f048779b8dcb91f7511f0ce
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Fri Jan 27 17:09:13 2023 -0500

    Port some test code from IO to NIO APIs
---
 .../java/org/apache/commons/io/file/PathUtils.java | 10 +++++++
 .../org/apache/commons/io/FilenameUtilsTest.java   | 32 ++++++++++++----------
 .../commons/io/input/AbstractInputStreamTest.java  | 15 +++++-----
 3 files changed, 34 insertions(+), 23 deletions(-)

diff --git a/src/main/java/org/apache/commons/io/file/PathUtils.java 
b/src/main/java/org/apache/commons/io/file/PathUtils.java
index 65900606..fd6cccbf 100644
--- a/src/main/java/org/apache/commons/io/file/PathUtils.java
+++ b/src/main/java/org/apache/commons/io/file/PathUtils.java
@@ -566,6 +566,16 @@ public final class PathUtils {
         return pathCounts;
     }
 
+    /**
+     * Delegates to {@link File#deleteOnExit()}.
+     *
+     * @param path the path to delete.
+     * @since 3.13.0
+     */
+    public static void deleteOnExit(Path path) {
+        Objects.requireNonNull(path.toFile()).deleteOnExit();
+    }
+
     /**
      * Compares the file sets of two Paths to determine if they are equal or 
not while considering file contents. The
      * comparison includes all files in all subdirectories.
diff --git a/src/test/java/org/apache/commons/io/FilenameUtilsTest.java 
b/src/test/java/org/apache/commons/io/FilenameUtilsTest.java
index d6dec780..68620673 100644
--- a/src/test/java/org/apache/commons/io/FilenameUtilsTest.java
+++ b/src/test/java/org/apache/commons/io/FilenameUtilsTest.java
@@ -26,6 +26,7 @@ import java.io.BufferedOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.nio.file.Files;
+import java.nio.file.Path;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
@@ -46,52 +47,53 @@ public class FilenameUtilsTest {
     private static final String SEP = "" + File.separatorChar;
 
     private static final boolean WINDOWS = File.separatorChar == '\\';
+
     @TempDir
-    public File temporaryFolder;
+    public Path temporaryFolder;
 
-    private File testFile1;
-    private File testFile2;
+    private Path testFile1;
+    private Path testFile2;
 
     private int testFile1Size;
     private int testFile2Size;
 
     @BeforeEach
     public void setUp() throws Exception {
-        testFile1 = File.createTempFile("test", "1", temporaryFolder);
-        testFile2 = File.createTempFile("test", "2", temporaryFolder);
+        testFile1 = Files.createTempFile(temporaryFolder, "test", "1");
+        testFile2 = Files.createTempFile(temporaryFolder, "test", "2");
 
-        testFile1Size = (int) testFile1.length();
-        testFile2Size = (int) testFile2.length();
-        if (!testFile1.getParentFile().exists()) {
+        testFile1Size = (int) Files.size(testFile1);
+        testFile2Size = (int) Files.size(testFile2);
+        if (!Files.exists(testFile1.getParent())) {
             throw new IOException("Cannot create file " + testFile1
                     + " as the parent directory does not exist");
         }
         try (BufferedOutputStream output3 =
-                new 
BufferedOutputStream(Files.newOutputStream(testFile1.toPath()))) {
+                new BufferedOutputStream(Files.newOutputStream(testFile1))) {
             TestUtils.generateTestData(output3, testFile1Size);
         }
-        if (!testFile2.getParentFile().exists()) {
+        if (!Files.exists(testFile2.getParent())) {
             throw new IOException("Cannot create file " + testFile2
                     + " as the parent directory does not exist");
         }
         try (BufferedOutputStream output2 =
-                new 
BufferedOutputStream(Files.newOutputStream(testFile2.toPath()))) {
+                new BufferedOutputStream(Files.newOutputStream(testFile2))) {
             TestUtils.generateTestData(output2, testFile2Size);
         }
-        if (!testFile1.getParentFile().exists()) {
+        if (!Files.exists(testFile1.getParent())) {
             throw new IOException("Cannot create file " + testFile1
                     + " as the parent directory does not exist");
         }
         try (BufferedOutputStream output1 =
-                new 
BufferedOutputStream(Files.newOutputStream(testFile1.toPath()))) {
+                new BufferedOutputStream(Files.newOutputStream(testFile1))) {
             TestUtils.generateTestData(output1, testFile1Size);
         }
-        if (!testFile2.getParentFile().exists()) {
+        if (!Files.exists(testFile2.getParent())) {
             throw new IOException("Cannot create file " + testFile2
                     + " as the parent directory does not exist");
         }
         try (BufferedOutputStream output =
-                new 
BufferedOutputStream(Files.newOutputStream(testFile2.toPath()))) {
+                new BufferedOutputStream(Files.newOutputStream(testFile2))) {
             TestUtils.generateTestData(output, testFile2Size);
         }
     }
diff --git 
a/src/test/java/org/apache/commons/io/input/AbstractInputStreamTest.java 
b/src/test/java/org/apache/commons/io/input/AbstractInputStreamTest.java
index 11435ba8..b8684781 100644
--- a/src/test/java/org/apache/commons/io/input/AbstractInputStreamTest.java
+++ b/src/test/java/org/apache/commons/io/input/AbstractInputStreamTest.java
@@ -18,12 +18,11 @@ package org.apache.commons.io.input;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
-import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
+import java.nio.file.Files;
+import java.nio.file.Path;
 
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.IOExceptionList;
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang3.RandomUtils;
 import org.junit.jupiter.api.AfterEach;
@@ -41,7 +40,7 @@ public abstract class AbstractInputStreamTest {
 
     private byte[] randomBytes;
 
-    protected File inputFile;
+    protected Path inputFile;
 
     protected InputStream[] inputStreams;
 
@@ -49,13 +48,13 @@ public abstract class AbstractInputStreamTest {
     public void setUp() throws IOException {
         // Create a byte array of size 2 MB with random bytes
         randomBytes = RandomUtils.nextBytes(2 * 1024 * 1024);
-        inputFile = File.createTempFile("temp-file", ".tmp");
-        FileUtils.writeByteArrayToFile(inputFile, randomBytes);
+        inputFile = Files.createTempFile("temp-file", ".tmp");
+        Files.write(inputFile, randomBytes);
     }
 
     @AfterEach
-    public void tearDown() throws IOExceptionList {
-        inputFile.delete();
+    public void tearDown() throws IOException {
+        Files.delete(inputFile);
         IOUtils.close(inputStreams);
     }
 

Reply via email to