changeset 51983:46afce95e5a5

tests: skip `test-wsgicgi.t` on MSYS The test is attempting to set `PATH_INFO="/rev/\xe2\x80\x94"` into the environment, which it does. The problem is that when MSYS sees a leading '/' in an environment variable, it thinks it's a unix filesystem path, so it "helpfully" prepends the Windows path to the MSYS root directory before running a non-MSYS process. hgweb would then split this value on '/', so it would get 'C:' instead of 'rev', and return a 400 since that isn't a valid web command. I tried generating a *.bat file, but had trouble running that via `cmd.exe` inside the test. I also tried generating an equivalent *.py launcher that would set the environment variables itself. But there is no `os.environb` on Windows, and the value was getting mangled when put into the script. So, I give up. If it's encoding stuff on Windows, it's probably broken.
author Matt Harbison <matt_harbison@yahoo.com>
date Mon, 07 Oct 2024 13:19:16 -0400
parents aa7f4a45d8fa
children a878d260ec57
files tests/test-wsgicgi.t
diffstat 1 files changed, 2 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test-wsgicgi.t	Thu Jun 27 03:32:52 2024 +0200
+++ b/tests/test-wsgicgi.t	Mon Oct 07 13:19:16 2024 -0400
@@ -1,3 +1,5 @@
+#require no-msys
+
   $ hg init test
   $ cat >hgweb.cgi <<HGWEB
   > #!$PYTHON