t5547-push-quarantine: run the path separator test on Windows, too
To perform the test case on Windows in a way that corresponds to the POSIX version, inject the semicolon in a directory name. Typically, an absolute POSIX style path, such as the one in $PWD, is translated into a Windows style path by bash when it invokes git.exe. However, the presence of the semicolon suppresses this translation; but the untranslated POSIX style path is useless for git.exe. Therefore, instead of $PWD pass the Windows style path that $(pwd) produces. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
aae2ae4f74
commit
eaa76de0df
@ -33,8 +33,7 @@ test_expect_success 'rejected objects are removed' '
|
||||
test_cmp expect actual
|
||||
'
|
||||
|
||||
# MINGW does not allow colons in pathnames in the first place
|
||||
test_expect_success !MINGW 'push to repo path with colon' '
|
||||
test_expect_success 'push to repo path with path separator (colon)' '
|
||||
# The interesting failure case here is when the
|
||||
# receiving end cannot access its original object directory,
|
||||
# so make it likely for us to generate a delta by having
|
||||
@ -43,13 +42,20 @@ test_expect_success !MINGW 'push to repo path with colon' '
|
||||
test-genrandom foo 4096 >file.bin &&
|
||||
git add file.bin &&
|
||||
git commit -m bin &&
|
||||
git clone --bare . xxx:yyy.git &&
|
||||
|
||||
if test_have_prereq MINGW
|
||||
then
|
||||
pathsep=";"
|
||||
else
|
||||
pathsep=":"
|
||||
fi &&
|
||||
git clone --bare . "xxx${pathsep}yyy.git" &&
|
||||
|
||||
echo change >>file.bin &&
|
||||
git commit -am change &&
|
||||
# Note that we have to use the full path here, or it gets confused
|
||||
# with the ssh host:path syntax.
|
||||
git push "$PWD/xxx:yyy.git" HEAD
|
||||
git push "$(pwd)/xxx${pathsep}yyy.git" HEAD
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Loading…
Reference in New Issue
Block a user