Subject: Re: [PATCH] test-lib: write test results to test-results/<basename>-<pid>

From: SZEDER Gábor <[email-masked]>
Date: Sat, 14 Mar 2009 13:16:17 +0100

Hi,

On Sat, Mar 14, 2009 at 12:53:06PM +0100, Johannes Schindelin wrote:
> Hi,
> 
> On Fri, 13 Mar 2009, SZEDER Gábor wrote:
> 
> > diff --git a/t/Makefile b/t/Makefile
> > index 0d65ced..2e6e205 100644
> > --- a/t/Makefile
> > +++ b/t/Makefile
> > @@ -14,14 +14,11 @@ SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
> >  T = $(wildcard t[0-9][0-9][0-9][0-9]-*.sh)
> >  TSVN = $(wildcard t91[0-9][0-9]-*.sh)
> >  
> > -all: pre-clean $(T) aggregate-results clean
> > +all: $(T) aggregate-results clean

Well, this part is wrong, or at least not up-to-date.  I just digged
up an ancient branch in my tree and sent out the diff, without
realizing that there were some conflicting changes since then.

> >  
> >  $(T):
> >  	@echo "*** $@ ***"; GIT_CONFIG=.git/config '$(SHELL_PATH_SQ)' $@ $(GIT_TEST_OPTS)
> >  
> > -pre-clean:
> > -	$(RM) -r test-results
> > -
> >  clean:
> >  	$(RM) -r 'trash directory' test-results
> >  
> > @@ -33,5 +30,5 @@ full-svn-test:
> >  	$(MAKE) $(TSVN) GIT_SVN_NO_OPTIMIZE_COMMITS=1 LC_ALL=C
> >  	$(MAKE) $(TSVN) GIT_SVN_NO_OPTIMIZE_COMMITS=0 LC_ALL=en_US.UTF-8
> >  
> > -.PHONY: pre-clean $(T) aggregate-results clean
> > +.PHONY: $(T) aggregate-results clean
> >  .NOTPARALLEL:
> 
> This is wrong.  If you have failing tests, or if you interrupt the tests, 
> it will never clean the test results, and after Hannes' patch you _will_ 
> have stale files lying around all the time.

If you have failing tests, or if you interrupt the tests, then you
will have stale files lying around _anyway_:  not only test results
are left there, but also trash directories.  To remove the trash
directories, you'll need to run 'make clean' (in t/), but that will
remove the test results, too, so there is no difference.  But even if
you don't run 'make clean' before running the test suite again, test
results cruft from the previous run doesn't matter, because they will
be overwritten.

Best,
Gábor