To recap: 't5561-http-backend.sh' is prone to occasional failures;
luckily it's not 'git-http-backend's fault, but the test script is a
bit racy; patch 3/3's commit message discusses the details at length.
Changes since v2:
- Use 'test_when_finished' to clear the access log in the first
patch. (and necessary adjustments to the subsequent patches
because of conflicts)
Interdiff included below. (I wanted to include range-diff, but it
didn't make any sense)
SZEDER Gábor (3):
t5541: clean up truncating access log
t/lib-httpd: add the strip_access_log() helper function
t/lib-httpd: avoid occasional failures when checking access.log
t/lib-httpd.sh | 21 +++++++++++++++++++++
t/t5541-http-push-smart.sh | 28 ++++++----------------------
t/t5551-http-fetch-smart.sh | 8 +-------
t/t5561-http-backend.sh | 8 +-------
4 files changed, 29 insertions(+), 36 deletions(-)
--
2.18.0.305.g66e9e0a543
diff --git a/t/t5541-http-push-smart.sh b/t/t5541-http-push-smart.sh
index a481e3989a..a9836e4af0 100755
--- a/t/t5541-http-push-smart.sh
+++ b/t/t5541-http-push-smart.sh
@@ -38,6 +38,10 @@ GET /smart/test_repo.git/info/refs?service=git-upload-pack
HTTP/1.1 200
POST /smart/test_repo.git/git-upload-pack HTTP/1.1 200
EOF
test_expect_success 'no empty path components' '
+ # Clear the log, so that it does not affect the "used receive-pack
+ # service" test which reads the log too.
+ test_when_finished ">\"$HTTPD_ROOT_PATH\"/access.log" &&
+
# In the URL, add a trailing slash, and see if git appends yet another
# slash.
cd "$ROOT_PATH" &&
@@ -46,12 +50,6 @@ test_expect_success 'no empty path components' '
check_access_log exp
'
-test_expect_success 'clear access log' '
- # Clear the log, so that it does not affect the "used receive-pack
- # service" test which reads the log too.
- >"$HTTPD_ROOT_PATH"/access.log
-'
-
test_expect_success 'clone remote repository' '
rm -rf test_repo_clone &&
git clone $HTTPD_URL/smart/test_repo.git test_repo_clone &&