git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/5] test scripts: refactor start_httpd helper

From
Jeff King <peff@peff.net>
Date
Feb 15, 2009, 06:10 UTC
Message-ID
<20090215061015.GA30414@coredump.intra.peff.net>
In-Reply-To
<20090215060815.GA7473@coredump.intra.peff.net>

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>
---
Cleanup for the next patch.
 t/lib-httpd.sh       |    9 +++++++--
 t/t5540-http-push.sh |    8 +-------
 2 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh
index 3824020..88cfc51 100644
--- a/t/lib-httpd.sh
+++ b/t/lib-httpd.sh
@@ -82,13 +82,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() {
diff --git a/t/t5540-http-push.sh b/t/t5540-http-push.sh
index c236b5e..5b93e5a 100755
--- a/t/t5540-http-push.sh
+++ b/t/t5540-http-push.sh
@@ -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" &&
-- 
1.6.2.rc0.256.gf004c.dirty
Previous: Jeff KingNext: Jeff King
Message 25 of 41 in “remote HEAD improvements take 2”
  1. 0/4 remote HEAD improvements take 2Jay Soffian, Feb 13, 2009
  2. 1/4 builtin-clone: move locate_head() to remote.c so it can be re-usedJay Soffian, Feb 13, 2009
  3. 2/4 builtin-remote: move duplicated cleanup code its own functionJay Soffian, Feb 13, 2009
  4. 3/4 builtin-remote: teach show to display remote HEADJay Soffian, Feb 13, 2009
  5. 4/4 builtin-remote: add set-head verbJay Soffian, Feb 13, 2009
  6. Junio C HamanoFeb 13, 2009
  7. Jay SoffianFeb 13, 2009
  8. 4/4 builtin-remote: add set-head subcommandJay Soffian, Feb 13, 2009
  9. Junio C HamanoFeb 13, 2009
  10. Jay SoffianFeb 13, 2009
  11. Jeff KingFeb 14, 2009
  12. Junio C HamanoFeb 14, 2009
  13. Jeff KingFeb 14, 2009
  14. Jay SoffianFeb 14, 2009
  15. Jay SoffianFeb 14, 2009
  16. Jeff KingFeb 14, 2009
  17. builtin-remote: better handling of multiple remote HEADsJay Soffian, Feb 14, 2009
  18. Jeff KingFeb 14, 2009
  19. Jay SoffianFeb 14, 2009
  20. Jeff KingFeb 14, 2009
  21. Junio C HamanoFeb 14, 2009
  22. Daniel BarkalowFeb 14, 2009
  23. Jeff KingFeb 14, 2009
  24. Jeff KingFeb 15, 2009
  25. 1/5 test scripts: refactor start_httpd helperJeff King, Feb 15, 2009
  26. 2/5 add basic http clone/fetch testsJeff King, Feb 15, 2009
  27. Junio C HamanoFeb 15, 2009
  28. 3/5 refactor find_refs_by_name to accept const listJeff King, Feb 15, 2009
  29. 4/5 remote: refactor guess_remote_headJeff King, Feb 15, 2009
  30. 5/5 remote: use exact HEAD lookup if it is availableJeff King, Feb 15, 2009
  31. Jay SoffianFeb 15, 2009
  32. Jeff KingFeb 15, 2009
  33. 1/2 transport: cleanup duplicated ref fetching codeJeff King, Feb 15, 2009
  34. 2/2 transport: unambiguously determine local HEADJeff King, Feb 15, 2009
  35. Jeff KingFeb 15, 2009
  36. Jeff KingFeb 15, 2009
  37. Jay SoffianFeb 15, 2009
  38. Jeff KingFeb 15, 2009
  39. Junio C HamanoFeb 16, 2009
  40. Jay SoffianFeb 16, 2009
  41. Jay SoffianFeb 13, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.