You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2023/01/27 22:27:12 UTC

[commons-vfs] branch master updated: Port some test code from IO to NIO APIs

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


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

commit ab6e5359bc512053d7db8e4882aa3a919fa6daa1
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Fri Jan 27 17:27:07 2023 -0500

    Port some test code from IO to NIO APIs
---
 .../webdav/test/WebdavProviderTestCase.java        | 43 ++++++++++------------
 .../webdav4/test/Webdav4ProviderTestCase.java      | 43 ++++++++++------------
 2 files changed, 40 insertions(+), 46 deletions(-)

diff --git a/commons-vfs2-jackrabbit1/src/test/java/org/apache/commons/vfs2/provider/webdav/test/WebdavProviderTestCase.java b/commons-vfs2-jackrabbit1/src/test/java/org/apache/commons/vfs2/provider/webdav/test/WebdavProviderTestCase.java
index a73272c2..069ace71 100644
--- a/commons-vfs2-jackrabbit1/src/test/java/org/apache/commons/vfs2/provider/webdav/test/WebdavProviderTestCase.java
+++ b/commons-vfs2-jackrabbit1/src/test/java/org/apache/commons/vfs2/provider/webdav/test/WebdavProviderTestCase.java
@@ -22,6 +22,8 @@ import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 
 import javax.jcr.Node;
 import javax.jcr.NodeIterator;
@@ -32,7 +34,7 @@ import javax.jcr.Session;
 import javax.jcr.SimpleCredentials;
 import javax.jcr.Value;
 
-import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.file.PathUtils;
 import org.apache.commons.vfs2.AbstractProviderTestConfig;
 import org.apache.commons.vfs2.FileObject;
 import org.apache.commons.vfs2.FileSystemManager;
@@ -69,7 +71,7 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
      */
     private static String ConnectionUri;
 
-    private static File RepoDirectory;
+    private static Path RepoDirectory;
 
     private static final boolean DEBUG = Boolean.getBoolean("WebdavProviderTestCase.Debug");
 
@@ -81,20 +83,13 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
         ConnectionUri = String.format("webdav://%s@localhost:%d/repository/default", USER_ID, SocketPort);
     }
 
-    static File createTempDirectory() throws IOException {
+    static Path createTempDirectory() throws IOException {
         // create base folder
-        final File base = new File("./target/test").getCanonicalFile();
-        base.mkdirs();
-
-        final File tempFile = File.createTempFile("WebdavProviderTestCase_", ".tmp", base);
-
-        if (!tempFile.delete()) {
-            throw new IOException("Could not delete temp file: " + tempFile.getAbsolutePath());
-        }
-
-        if (!tempFile.mkdir()) {
-            throw new IOException("Could not create temp directory: " + tempFile.getAbsolutePath());
-        }
+        final Path base = Paths.get("target/test").normalize();
+        Files.createDirectories(base);
+        final Path tempFile = Files.createTempFile(base, "WebdavProviderTestCase_", ".tmp");
+        Files.delete(tempFile);
+        Files.createDirectories(base);
 
         if (DEBUG) {
             System.out.println("Working in " + tempFile);
@@ -103,7 +98,7 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
         return tempFile;
     }
 
-    private static void dump(final File repoDirectory) throws Exception {
+    private static void dump(final Path repoDirectory) throws Exception {
         final TransientRepository repository = getTransientRepository(repoDirectory);
         try {
             final Session session = getSession(repository);
@@ -155,14 +150,14 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
         return System.getProperty(TEST_URI);
     }
 
-    private static TransientRepository getTransientRepository(final File repoDirectory) throws IOException {
+    private static TransientRepository getTransientRepository(final Path repoDirectory) throws IOException {
         // Jackrabbit 1.6:
         // TransientRepository repository = new TransientRepository(repoDirectory);
         // Jackrabbit 1.5.2:
-        return new TransientRepository(new File(repoDirectory, "repository.xml").toString(), repoDirectory.toString());
+        return new TransientRepository(repoDirectory.resolve("repository.xml").toString(), repoDirectory.toString());
     }
 
-    private static void importFiles(final File repoDirectory, final File sourceDir) throws Exception {
+    private static void importFiles(final Path repoDirectory, final File sourceDir) throws Exception {
         final TransientRepository repository = getTransientRepository(repoDirectory);
         try {
             final Session session = getSession(repository);
@@ -225,7 +220,7 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
      * @param repoDirectory
      * @throws Exception
      */
-    private static void startJackrabbit(final File repoDirectory) throws Exception {
+    private static void startJackrabbit(final Path repoDirectory) throws Exception {
         boolean quiet = false;
         if (!DEBUG) {
             Logger.getLogger("org.apache.jackrabbit").setLevel(Level.WARN);
@@ -280,12 +275,14 @@ public class WebdavProviderTestCase extends AbstractProviderTestConfig {
         // Remove repo dir
         try {
             message("Deleting temp directory " + RepoDirectory);
-            FileUtils.deleteDirectory(RepoDirectory);
+            PathUtils.deleteDirectory(RepoDirectory);
         } catch (final IOException e) {
             message(e);
-            if (RepoDirectory.exists()) {
+            try {
+                Files.delete(RepoDirectory);
+            } catch (IOException e1) {
                 message("Directory will be deleted on VM exit " + RepoDirectory);
-                RepoDirectory.deleteOnExit();
+                RepoDirectory.toFile().deleteOnExit();
             }
         }
     }
diff --git a/commons-vfs2-jackrabbit2/src/test/java/org/apache/commons/vfs2/provider/webdav4/test/Webdav4ProviderTestCase.java b/commons-vfs2-jackrabbit2/src/test/java/org/apache/commons/vfs2/provider/webdav4/test/Webdav4ProviderTestCase.java
index 37962987..2518b895 100644
--- a/commons-vfs2-jackrabbit2/src/test/java/org/apache/commons/vfs2/provider/webdav4/test/Webdav4ProviderTestCase.java
+++ b/commons-vfs2-jackrabbit2/src/test/java/org/apache/commons/vfs2/provider/webdav4/test/Webdav4ProviderTestCase.java
@@ -22,6 +22,8 @@ import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 
 import javax.jcr.Node;
 import javax.jcr.NodeIterator;
@@ -32,7 +34,7 @@ import javax.jcr.Session;
 import javax.jcr.SimpleCredentials;
 import javax.jcr.Value;
 
-import org.apache.commons.io.FileUtils;
+import org.apache.commons.io.file.PathUtils;
 import org.apache.commons.vfs2.AbstractProviderTestConfig;
 import org.apache.commons.vfs2.FileObject;
 import org.apache.commons.vfs2.FileSystemManager;
@@ -73,7 +75,7 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
      */
     private static String ConnectionUri;
 
-    private static File RepoDirectory;
+    private static Path RepoDirectory;
 
     private static final boolean DEBUG = Boolean.getBoolean("Webdav4ProviderTestCase.Debug");
 
@@ -85,20 +87,13 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
         ConnectionUri = String.format("webdav4://%s:%s@localhost:%d/repository/default", USER_ID, PASSWORD, SocketPort);
     }
 
-    static File createTempDirectory() throws IOException {
+    static Path createTempDirectory() throws IOException {
         // create base folder
-        final File base = new File("./target/test").getCanonicalFile();
-        base.mkdirs();
-
-        final File tempFile = File.createTempFile("Webdav4ProviderTestCase_", ".tmp", base);
-
-        if (!tempFile.delete()) {
-            throw new IOException("Could not delete temp file: " + tempFile.getAbsolutePath());
-        }
-
-        if (!tempFile.mkdir()) {
-            throw new IOException("Could not create temp directory: " + tempFile.getAbsolutePath());
-        }
+        final Path base = Paths.get("target/test").normalize();
+        Files.createDirectories(base);
+        final Path tempFile = Files.createTempFile(base, "WebdavProviderTestCase_", ".tmp");
+        Files.delete(tempFile);
+        Files.createDirectories(base);
 
         if (DEBUG) {
             System.out.println("Working in " + tempFile);
@@ -107,7 +102,7 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
         return tempFile;
     }
 
-    private static void dump(final File repoDirectory) throws Exception {
+    private static void dump(final Path repoDirectory) throws Exception {
         final TransientRepository repository = getTransientRepository(repoDirectory);
         try {
             final Session session = getSession(repository);
@@ -159,11 +154,11 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
         return System.getProperty(TEST_URI);
     }
 
-    private static TransientRepository getTransientRepository(final File repoDirectory) {
-        return new TransientRepository(new File(repoDirectory, "repository.xml"), repoDirectory);
+    private static TransientRepository getTransientRepository(final Path repoDirectory) {
+        return new TransientRepository(repoDirectory.resolve("repository.xml").toString(), repoDirectory.toString());
     }
 
-    private static void importFiles(final File repoDirectory, final File sourceDir) throws Exception {
+    private static void importFiles(final Path repoDirectory, final File sourceDir) throws Exception {
         final TransientRepository repository = getTransientRepository(repoDirectory);
         try {
             final Session session = getSession(repository);
@@ -226,7 +221,7 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
      * @param repoDirectory
      * @throws Exception
      */
-    private static void startJackrabbit(final File repoDirectory) throws Exception {
+    private static void startJackrabbit(final Path repoDirectory) throws Exception {
         boolean quiet = false;
 
         if (!DEBUG) {
@@ -289,12 +284,14 @@ public class Webdav4ProviderTestCase extends AbstractProviderTestConfig {
         // Remove repo dir
         try {
             message("Deleting temp directory " + RepoDirectory);
-            FileUtils.deleteDirectory(RepoDirectory);
+            PathUtils.deleteDirectory(RepoDirectory);
         } catch (final IOException e) {
             message(e);
-            if (RepoDirectory.exists()) {
+            try {
+                Files.delete(RepoDirectory);
+            } catch (IOException e1) {
                 message("Directory will be deleted on VM exit " + RepoDirectory);
-                RepoDirectory.deleteOnExit();
+                RepoDirectory.toFile().deleteOnExit();
             }
         }
     }