Subject: Re: [PATCH 1/2] t0003: do not chdir the whole test process

From: Junio C Hamano <[email-masked]>
Date: Thu, 06 Feb 2014 13:26:39 -0800

Jonathan Nieder <[email-masked]> writes:

> For a while I've been wanting to teach GIT_SKIP_TESTS not to skip
> tests with 'setup' or 'set up' in their name, but I never got around
> to it.

Yeah, that would be a good thing.  As part of doing so, we might
want to come up with a way to test the tests, randomly skipping
pieces that are not "setup" and find ones that break the later tests
when skipped, and mark test scripts that fail such a test for fixing.

> If I try to skip the setup test this patch touches, then there
> is no bare.git and lots of later tests fail.  Perhaps it would be
> better for each test to do
>
> 	rm -fr bare.git &&
> 	git clone --bare . bare.git &&
> 	(
> 		cd bare.git &&
> 		...
> 	)
>
> for itself to make the state easier to think about.

That is a better and worse way to do it at the same time ;-)  It
definitely is better from maintainability POV to keep each test as
independent as possible.  It however also is worse if it forces us
to be repetitive X-<.

> On the other hand I agree that the 'cd' here is a bad practice.  I
> just don't think it's about skipping setup --- instead, it's about it
> being hard to remember the cwd in general.

Exactly.