summaryrefslogtreecommitdiff
path: root/t/t7400-submodule-basic.sh
diff options
context:
space:
mode:
authorJohannes Sixt <j6t@kdbg.org>2012-06-14 14:10:27 +0200
committerJunio C Hamano <gitster@pobox.com>2012-06-14 11:00:06 -0700
commitc517e73d0f116f8293f1fbc7f92bb60ea8047b0f (patch)
tree3e0ab03df78c74ccb71b7faed630794b48dabe82 /t/t7400-submodule-basic.sh
parent758615e2517db8b9fda9218afded06a3e1b42e20 (diff)
downloadgit-c517e73d0f116f8293f1fbc7f92bb60ea8047b0f.tar.gz
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 <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7400-submodule-basic.sh')
-rwxr-xr-xt/t7400-submodule-basic.sh11
1 files 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"
)
'