Subject: Re: [RFC/PATCH] t3300-*.sh: Fix a TAP parse error

From: Ramsay Jones <[email-masked]>
Date: Sun, 19 Aug 2012 18:57:37 +0100

Junio C Hamano wrote:
> Jonathan Nieder <[email-masked]> writes:
>> Ramsay Jones wrote:
>>> Junio C Hamano wrote:
>>
>>>> Observing that all well-written test scripts we have begin with this
>>>> boilerplate line:
>>>>
>>>> 	test_expect_success setup '
>>>>
>>>> I wouldn't mind introducing a new helper function test_setup that
>>>> behaves like test_expect_success but is meant to be used in the
>>>> first "set-up" phase of the tests in a test script.
>>
>> Neat.  This could be used for later set-up tests, too, perhaps with a
>> long-term goal of making non set-up tests independent of each other
>> (reorderable and skippable).
>>
>> [...]
>>> [1] For example, what should/will happen if someone uses test_must_fail,
>>> test_might_fail, etc., within the test_fixture script? Should they simply
>>> be banned within a text_fixture?
>>
>> Why wouldn't they act just like they do in test_expect_success blocks?
>>
>> FWIW I find Junio's test_setup name more self-explanatory.  What
>> mnemonic should I be using to remember the _fixture name?
> 
> I see that I was distracted by the "where does the fixture come
> from" and did not follow through.
> 
> I think what it does makes sense (I haven't checked all the
> redirections, though).  Do we want to resurrect the topic?  It needs
> a paragraph in the proposed commit log and t/README to explain the
> motivation and the usage.

Yes, this is on my TODO list.

I will name the function 'test_setup' rather than 'test_fixture'.

Also, the test_fixture function had a single script parameter, since
I didn't see the point of having a "title" like test_expect_success.
However, I'm now in two minds about this; if it were to take a title
it may be useful to include the title in the error message, if the
test contained multiple calls to test_setup. I'm still inclined to
*not* include a title parameter ...

ATB,
Ramsay Jones