Re: [PATCH 1/2] t0003: do not chdir the whole test process
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:59:51
Jonathan Nieder [off-list ref] 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.