test scripts: refactor start_httpd helper
authorJeff King <peff@peff.net>
Wed, 25 Feb 2009 08:32:08 +0000 (03:32 -0500)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Feb 2009 08:49:44 +0000 (00:49 -0800)
There are some redirects and some error checking that need
to be done by the caller; let's move both into the
start_httpd function so that all callers don't have to
repeat them (there is only one caller now, but another will
follow in this series).

This doesn't violate any assumptions that aren't already
being made by lib-httpd, which is happy to say "skipping"
and call test_done for a number of other cases.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/lib-httpd.sh
t/t5540-http-push.sh

index 86cdebc727c4964899a71366151a7782558153c7..589aaf82149916c43d42fad488567e34b26aebaa 100644 (file)
@@ -94,13 +94,18 @@ prepare_httpd() {
 }
 
 start_httpd() {
-       prepare_httpd
+       prepare_httpd >&3 2>&4
 
        trap 'stop_httpd; die' EXIT
 
        "$LIB_HTTPD_PATH" -d "$HTTPD_ROOT_PATH" \
                -f "$TEST_PATH/apache.conf" $HTTPD_PARA \
-               -c "Listen 127.0.0.1:$LIB_HTTPD_PORT" -k start
+               -c "Listen 127.0.0.1:$LIB_HTTPD_PORT" -k start \
+               >&3 2>&4
+       if ! test $? = 0; then
+               say "skipping test, web server setup failed"
+               test_done
+       fi
 }
 
 stop_httpd() {
index 11b343274ff36247f45de6eefbdbebce511915be..57a4411e983aa5634abaf263ee9c0f21db41b0c3 100755 (executable)
@@ -20,13 +20,7 @@ then
 fi
 
 . "$TEST_DIRECTORY"/lib-httpd.sh
-
-if ! start_httpd >&3 2>&4
-then
-       say "skipping test, web server setup failed"
-       test_done
-       exit
-fi
+start_httpd
 
 test_expect_success 'setup remote repository' '
        cd "$ROOT_PATH" &&