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\\"));
}
}