Subject: Re: [PATCH] lib-httpd.sh: print error.log on error

From: Duy Nguyen <[email-masked]>
Date: Mon, 13 Jun 2016 18:40:14 +0700

On Sun, Jun 12, 2016 at 08:59:21AM -0400, Jeff King wrote:
> On Sun, Jun 12, 2016 at 05:41:54PM +0700, Nguyễn Thái Ngọc Duy wrote:
> 
> > Failure to bring up httpd for testing is not considered an error, so the
> > trash directory, which contains this error.log file, is removed and we
> > don't know what made httpd fail to start. Improve the situation a bit.
> > 
> > Signed-off-by: Nguyễn Thái Ngọc Duy <[email-masked]>
> > ---
> >  t/lib-httpd.sh | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh
> > index f9f3e5f..5b8de38 100644
> > --- a/t/lib-httpd.sh
> > +++ b/t/lib-httpd.sh
> > @@ -180,6 +180,7 @@ start_httpd() {
> >  	if test $? -ne 0
> >  	then
> >  		trap 'die' EXIT
> > +		cat "$HTTPD_ROOT_PATH"/error.log 2>/dev/null
> >  		test_skip_or_die $GIT_TEST_HTTPD "web server setup failed"
> >  	fi
> 
> I like the idea of giving more data on error, but I think this will
> break the TAP output and confuse anything parsing the output of the
> tests, like prove (I think arbitrary output should have "#" prepended).
> 
> Also (or alternatively), it should probably only happen when we are in
> verbose mode (it's not taken care of for us as usual because tests call
> start_httpd outside of a test_expect_ block). I think this eliminates
> the need to deal with the TAP thing (because our usual "-v" output is
> not TAP-compliant).

I like the verbose route, so here's v2

-- 8< --
Subject: [PATCH v2] lib-httpd.sh: print error.log on error

Failure to bring up httpd for testing is not considered an error, so
the trash directory, which contains this error.log file, is removed
and we don't know why httpd failed. Improve the situation a bit, print
error.log but only in verbose mode.

Signed-off-by: Nguyễn Thái Ngọc Duy <[email-masked]>
---
 t/lib-httpd.sh | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh
index f9f3e5f..67bc7ad 100644
--- a/t/lib-httpd.sh
+++ b/t/lib-httpd.sh
@@ -180,6 +180,8 @@ start_httpd() {
 	if test $? -ne 0
 	then
 		trap 'die' EXIT
+		test "$verbose" = t && \
+			cat "$HTTPD_ROOT_PATH"/error.log 2>/dev/null
 		test_skip_or_die $GIT_TEST_HTTPD "web server setup failed"
 	fi
 }
-- 
2.8.2.524.g6ff3d78
-- 8< --