RE: [PATCH v2] t1800: correct test to handle Cygwin
From: <hidden>
Date: 2022-09-15 08:52:08
On September 15, 2022 3:57 AM, Adam Dinwoodie wrote:
quoted hunk ↗ jump to hunk
On Cygwin, when failing to spawn a process using start_command, Git outputs the same error as on Linux systems, rather than using the GIT_WINDOWS_NATIVE- specific error output. The WINDOWS test prerequisite is set in both Cygwin and native Windows environments, which means it's not appropriate to use to anticipate the error output from start_command. Instead, use the MINGW test prerequisite, which is only set for Git in native Windows environments, and not for Cygwin. Signed-off-by: Adam Dinwoodie <redacted> Helped-by: Đoàn Trần Công Danh [off-list ref] --- With apologies to folk receiving this multiple times; it looks like my SMTP setup was causing problems for some servers, and while the mails seemed to be arriving with me, they didn't seem to be appearing at https://public-inbox.org/git/?q=t1800 t/t1800-hook.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)diff --git a/t/t1800-hook.sh b/t/t1800-hook.sh index 64096adac7..43fcb7c0bf100755--- a/t/t1800-hook.sh +++ b/t/t1800-hook.sh@@ -157,9 +157,9 @@ test_expect_success 'git hook run a hook with a badshebang' ' write_script bad-hooks/test-hook "/bad/path/no/spaces" </dev/null && # TODO: We should emit the same (or at least a more similar) - # error on Windows and !Windows. See the OS-specific code in - # start_command() - if test_have_prereq !WINDOWS + # error on MINGW (essentially Git for Windows) and all other + # platforms.. See the OS-specific code in start_command() + if test_have_prereq !MINGW then cat >expect <<-\EOF fatal: cannot run bad-hooks/test-hook: ... -- 2.34.1
I am not convinced this will solve the problem on NonStop where EPERM is reported instead of ENOENT. Apparently EPERM is allowed by POSIX, so text comparison of error messages are not going to work anyway.