test: test GIT_CURL_VERBOSE=1 shows an error
This tests GIT_CURL_VERBOSE shows an error when an URL returns 500. This exercises the code in remote_curl. Signed-off-by: Masaya Suzuki <masayasuzuki@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Masaya Suzuki committed
Jan 10, 2019 at 11:33 UTC
e4871cd50c87610469a08b7fa8ef46677d2b8b7b
2 files changed
+29
t/lib-httpd/apache.conf
+1
@@ -115,6 +115,7 @@ Alias /auth/dumb/ www/auth/dumb/
115
SetEnv GIT_EXEC_PATH ${GIT_EXEC_PATH}
116
SetEnv GIT_HTTP_EXPORT_ALL
117
</LocationMatch>
118
+ScriptAliasMatch /error_git_upload_pack/(.*)/git-upload-pack error.sh/
119
ScriptAliasMatch /smart_*[^/]*/(.*) ${GIT_EXEC_PATH}/git-http-backend/$1
120
ScriptAlias /broken_smart/ broken-smart-http.sh/
121
ScriptAlias /error/ error.sh/
t/t5581-http-curl-verbose.sh
new
+28
@@ -0,0 +1,28 @@
1
+#!/bin/sh
2
+
3
+test_description='test GIT_CURL_VERBOSE'
4
+. ./test-lib.sh
5
+. "$TEST_DIRECTORY"/lib-httpd.sh
6
+start_httpd
7
+
8
+test_expect_success 'setup repository' '
9
+ mkdir "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
10
+ git -C "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" --bare init &&
11
+ git config push.default matching &&
12
+ echo content >file &&
13
+ git add file &&
14
+ git commit -m one &&
15
+ git remote add public "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
16
+ git push public master:master
17
+'
18
+
19
+test_expect_success 'failure in git-upload-pack is shown' '
20
+ test_might_fail env GIT_CURL_VERBOSE=1 \
21
+ git clone "$HTTPD_URL/error_git_upload_pack/smart/repo.git" \
22
+ 2>curl_log &&
23
+ grep "< HTTP/1.1 500 Intentional Breakage" curl_log
24
+'
25
+
26
+stop_httpd
27
+
28
+test_done