diff options
Diffstat (limited to 't/t5547-push-quarantine.sh')
-rwxr-xr-x | t/t5547-push-quarantine.sh | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/t/t5547-push-quarantine.sh b/t/t5547-push-quarantine.sh index 462bfc9..113c870 100755 --- a/t/t5547-push-quarantine.sh +++ b/t/t5547-push-quarantine.sh @@ -33,6 +33,31 @@ test_expect_success 'rejected objects are removed' ' test_cmp expect actual ' +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 + # a non-trivial file with multiple versions. + + test-genrandom foo 4096 >file.bin && + git add file.bin && + git commit -m bin && + + 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${pathsep}yyy.git" HEAD +' + test_expect_success 'updating a ref from quarantine is forbidden' ' git init --bare update.git && write_script update.git/hooks/pre-receive <<-\EOF && |