Jeff King wrote: > On Sun, Aug 25, 2013 at 12:54:12PM -0700, Jonathan Nieder wrote: >> [setup split across three tests] >> >> This is kind of an old-fashioned test, since each step of the setup is >> treated as a separate test assertion. I don't really mind until we >> get better automation to make it easy to skip or rearrange tests. >> Just for reference, I think the usual way to do this now is > > I don't see that splitting it up more hurts this. If we wanted more > automatic rearranging or skipping of tests, we would need tests to > declare dependencies on their setup. And we would need to be able to > declare dependencies on multiple tests, since having a single setup test > does not work in all cases (e.g., sometimes you are testing each step, > and the final step relies on earlier steps). Actually dependencies can already be inferred for most test scripts using the following rule: Each test depends on all tests with the word "setup" or the phrase "set up" in their title that precede it. And while there's no existing automation for testing that that's all the tests rely on (by automatically skipping or reordering tests, or running non-setup tests in separate sandboxes in parallel), in practice it is still already useful since it makes it safe to use GIT_SKIP_TESTS subject to the following constraint: In each test script, for every setup test skipped, all later tests are skipped as well. I don't care as much about GIT_SKIP_TESTS as about being able to introduce new tests in the middle of a file. Of course splitting up the setup into 3 steps neither helps nor hurts that. What I was complaining about is splitting the filter-branch from the verification that filter-branch had the right result. Sorry for the confusion, Jonathan -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html