diff options
Diffstat (limited to 't/t5550-http-fetch-dumb.sh')
| -rwxr-xr-x | t/t5550-http-fetch-dumb.sh | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/t/t5550-http-fetch-dumb.sh b/t/t5550-http-fetch-dumb.sh index 8f182a3cbf..5f16cbc58d 100755 --- a/t/t5550-http-fetch-dumb.sh +++ b/t/t5550-http-fetch-dumb.sh @@ -55,6 +55,21 @@ test_expect_success 'list refs from outside any repository' ' test_cmp expect actual ' + +test_expect_success 'list detached HEAD from outside any repository' ' + git clone --mirror "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" \ + "$HTTPD_DOCUMENT_ROOT_PATH/repo-detached.git" && + git -C "$HTTPD_DOCUMENT_ROOT_PATH/repo-detached.git" \ + update-ref --no-deref HEAD refs/heads/main && + git -C "$HTTPD_DOCUMENT_ROOT_PATH/repo-detached.git" update-server-info && + cat >expect <<-EOF && + $(git rev-parse main) HEAD + $(git rev-parse main) refs/heads/main + EOF + nongit git ls-remote "$HTTPD_URL/dumb/repo-detached.git" >actual && + test_cmp expect actual +' + test_expect_success 'create password-protected repository' ' mkdir -p "$HTTPD_DOCUMENT_ROOT_PATH/auth/dumb/" && cp -Rf "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" \ @@ -66,11 +81,11 @@ test_expect_success 'create empty remote repository' ' setup_post_update_server_info_hook "$HTTPD_DOCUMENT_ROOT_PATH/empty.git" ' -test_expect_success 'empty dumb HTTP repository has default hash algorithm' ' +test_expect_success 'empty dumb HTTP repository falls back to SHA1' ' test_when_finished "rm -fr clone-empty" && git clone $HTTPD_URL/dumb/empty.git clone-empty && git -C clone-empty rev-parse --show-object-format >empty-format && - test "$(cat empty-format)" = "$(test_oid algo)" + test "$(cat empty-format)" = sha1 ' setup_askpass_helper @@ -376,7 +391,7 @@ test_expect_success 'git client send an empty Accept-Language' ' test_expect_success 'remote-http complains cleanly about malformed urls' ' test_must_fail git remote-http http::/example.com/repo.git 2>stderr && - test_i18ngrep "url has no scheme" stderr + test_grep "url has no scheme" stderr ' # NEEDSWORK: Writing commands to git-remote-curl can race against the latter @@ -385,7 +400,7 @@ test_expect_success 'remote-http complains cleanly about malformed urls' ' test_expect_success 'remote-http complains cleanly about empty scheme' ' test_must_fail ok=sigpipe git ls-remote \ http::${HTTPD_URL#http}/dumb/repo.git 2>stderr && - test_i18ngrep "url has no scheme" stderr + test_grep "url has no scheme" stderr ' test_expect_success 'redirects can be forbidden/allowed' ' @@ -397,7 +412,7 @@ test_expect_success 'redirects can be forbidden/allowed' ' test_expect_success 'redirects are reported to stderr' ' # just look for a snippet of the redirected-to URL - test_i18ngrep /dumb/ stderr + test_grep /dumb/ stderr ' test_expect_success 'non-initial redirects can be forbidden' ' @@ -466,7 +481,7 @@ test_expect_success 'can redirect through non-"info/refs?service=git-upload-pack test_expect_success 'print HTTP error when any intermediate redirect throws error' ' test_must_fail git clone "$HTTPD_URL/redir-to/502" 2> stderr && - test_i18ngrep "unable to access.*/redir-to/502" stderr + test_grep "unable to access.*/redir-to/502" stderr ' test_expect_success 'fetching via http alternates works' ' |
