From c517e73d0f116f8293f1fbc7f92bb60ea8047b0f Mon Sep 17 00:00:00 2001 From: Johannes Sixt Date: Thu, 14 Jun 2012 14:10:27 +0200 Subject: [PATCH] t7400: avoid path mangling issues A recently introduced test uses an absolute path. But when run on Windows using the MSYS bash, such a path is mangled into a Windows style path when it is passed to 'git config'. The subsequent 'test' then compares the mangled path to the unmangled version and reports a failure. A path beginning with two slashes denotes a network directory (//server/share path) and is not mangled. Use that trick to side-step the issue. Just in case that 'git submodule init' regresses in such a way that it accesses the URL, use a path name that is unlikely to exist on POSIX systems, and that cannot be a server name on Windows. Signed-off-by: Johannes Sixt Signed-off-by: Junio C Hamano --- t/t7400-submodule-basic.sh | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh index a899e6dbf5..c73bec9551 100755 --- a/t/t7400-submodule-basic.sh +++ b/t/t7400-submodule-basic.sh @@ -510,14 +510,19 @@ test_expect_success '../subrepo works with port-qualified URL - ssh://hostname:2 ) ' -test_expect_success '../subrepo path works with local path - /foo/repo' ' +# About the choice of the path in the next test: +# - double-slash side-steps path mangling issues on Windows +# - it is still an absolute local path +# - there cannot be a server with a blank in its name just in case the +# path is used erroneously to access a //server/share style path +test_expect_success '../subrepo path works with local path - //somewhere else/repo' ' ( cd reltest && cp pristine-.git-config .git/config && cp pristine-.gitmodules .gitmodules && - git config remote.origin.url /foo/repo && + git config remote.origin.url "//somewhere else/repo" && git submodule init && - test "$(git config submodule.sub.url)" = /foo/subrepo + test "$(git config submodule.sub.url)" = "//somewhere else/subrepo" ) ' -- 2.47.1