This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch mvnd-1.x
in repository https://gitbox.apache.org/repos/asf/maven-mvnd.git


The following commit(s) were added to refs/heads/mvnd-1.x by this push:
     new acf872f2 Test the Cygwin path fallback instead of skipping it (#1796)
acf872f2 is described below

commit acf872f238fe0c697ae00b92dc0370212f897f5d
Author: Sylwester Lachiewicz <[email protected]>
AuthorDate: Mon Oct 26 01:06:12 2026 +0100

    Test the Cygwin path fallback instead of skipping it (#1796)
    
    testCygwin tested toCygwin(), which runs cygpath when it is on the PATH,
    as on Git for Windows; it now tests the fallback conversion instead.
---
 daemon/src/main/java/org/mvndaemon/mvnd/cli/EnvHelper.java  | 13 ++++++++++---
 .../src/test/java/org/mvndaemon/mvnd/cli/EnvHelperTest.java |  7 +++----
 2 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/daemon/src/main/java/org/mvndaemon/mvnd/cli/EnvHelper.java 
b/daemon/src/main/java/org/mvndaemon/mvnd/cli/EnvHelper.java
index 50a1df4a..2317e6df 100644
--- a/daemon/src/main/java/org/mvndaemon/mvnd/cli/EnvHelper.java
+++ b/daemon/src/main/java/org/mvndaemon/mvnd/cli/EnvHelper.java
@@ -103,14 +103,21 @@ public class EnvHelper {
                 String p = path.endsWith("\\") ? path.substring(0, 
path.length() - 1) : path;
                 return ExecHelper.exec(false, "cygpath", p).trim();
             } catch (IOException e) {
-                String root = path.substring(0, 1);
-                String p = path.substring(3);
-                return "/cygdrive/" + root.toLowerCase(Locale.ROOT) + "/" + 
p.replace('\\', '/');
+                return toCygdrive(path);
             }
         }
         return path;
     }
 
+    /**
+     * The conversion {@link #toCygwin(String)} falls back to when {@code 
cygpath} cannot be run.
+     */
+    static String toCygdrive(String path) {
+        String root = path.substring(0, 1);
+        String p = path.substring(3);
+        return "/cygdrive/" + root.toLowerCase(Locale.ROOT) + "/" + 
p.replace('\\', '/');
+    }
+
     static void chDir(String workingDir) throws Exception {
         CLibrary.chdir(workingDir);
         System.setProperty("user.dir", workingDir);
diff --git a/daemon/src/test/java/org/mvndaemon/mvnd/cli/EnvHelperTest.java 
b/daemon/src/test/java/org/mvndaemon/mvnd/cli/EnvHelperTest.java
index 69d6a49e..f946cb8d 100644
--- a/daemon/src/test/java/org/mvndaemon/mvnd/cli/EnvHelperTest.java
+++ b/daemon/src/test/java/org/mvndaemon/mvnd/cli/EnvHelperTest.java
@@ -28,7 +28,6 @@ import java.util.Locale;
 import java.util.Map;
 import java.util.UUID;
 
-import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.mvndaemon.mvnd.common.Os;
 
@@ -72,8 +71,8 @@ public class EnvHelperTest {
     }
 
     @Test
-    @Disabled
-    void testCygwin() throws Exception {
-        assertEquals("/cygdrive/c/work/tmp/", 
EnvHelper.toCygwin("C:\\work\\tmp\\"));
+    void testCygwin() {
+        // toCygwin() itself runs cygpath when it is on the PATH (Git for 
Windows ships one), so test the fallback
+        assertEquals("/cygdrive/c/work/tmp/", 
EnvHelper.toCygdrive("C:\\work\\tmp\\"));
     }
 }

Reply via email to