Jonathan Nieder [off-list ref] writes:
Ramsay Jones wrote:
quoted
Junio C Hamano wrote:
quoted
quoted
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).
[...]
quoted
[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.
Thanks.
Junio C Hamano wrote:
Jonathan Nieder [off-list ref] writes:
quoted
Ramsay Jones wrote:
quoted
Junio C Hamano wrote:
quoted
quoted
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).
[...]
quoted
[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