test: skip clean-up when running under --immediate mode
commitb586744a864cf4d6886d6436d559302123b01fae
authorJunio C Hamano <gitster@pobox.com>
Mon, 27 Jun 2011 18:02:22 +0000 (27 11:02 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 29 Jun 2011 23:38:09 +0000 (29 16:38 -0700)
tree27a4ab1da47dddbaac8a467269d61e97afd38bfa
parent534cea3fce7d32fc924fd477520fa2e631288ca6
test: skip clean-up when running under --immediate mode

Some tests try to be too careful about cleaning themselves up and
do

    test_expect_success description '
        set-up some test refs and/or configuration &&
        test_when_finished "revert the above changes" &&
the real test
    '

Which is nice to make sure that a potential failure would not have
unexpected interaction with the next test. This however interferes when
"the real test" fails and we want to see what is going on, by running the
test with --immediate mode and descending into its trash directory after
the test stops. The precondition to run the real test and cause it to fail
is all gone after the clean-up procedure defined by test_when_finished is
done.

Update test_run_ which is the workhorse of running a test script
called from test_expect_success and test_expect_failure, so that we do not
run clean-up script defined with test_when_finished when a test that is
expected to succeed fails under the --immediate mode.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Acked-by: Jeff King <peff@peff.net>
t/test-lib.sh