summaryrefslogtreecommitdiff
path: root/Documentation/RelNotes/1.7.9.3.txt
diff options
context:
space:
mode:
authorLibravatar Jeff King <peff@peff.net>2021-01-28 01:32:32 -0500
committerLibravatar Junio C Hamano <gitster@pobox.com>2021-01-28 12:06:26 -0800
commitefd2600e6f998f0799aff362d45914fb22fecbf3 (patch)
tree548c6f3d66dc9efedbadb4c4a0ed55cb27b7c15a /Documentation/RelNotes/1.7.9.3.txt
parentt0000: keep clean-up tests together (diff)
downloadtgif-efd2600e6f998f0799aff362d45914fb22fecbf3.tar.xz
t0000: run prereq tests inside sub-test
We test the behavior of prerequisites in t0000 by setting up fake ones in the main test script, trying to run some tests, and then seeing if those tests impacted the environment correctly. If they didn't, then we write a message and manually call exit. Instead, let's push these down into a sub-test, like many of the other tests covering the framework itself. This has a few advantages: - it does not pollute the test output with mention of skipped tests (that we know are uninteresting -- the point of the test was to see that these are skipped). - when running in a TAP harness, we get a useful test failure message (whereas when the script exits early, a tool like "prove" simply says "Dubious, test returned 1"). - we do not have to worry about different test environments, such as when GIT_TEST_FAIL_PREREQS_INTERNAL is set. Our sub-test helpers already give us a known environment. - the tests themselves are a bit easier to read, as we can just check the test-framework output to see what happened (and get the usual test_cmp diff if it failed) A few notes on the implementation: - we could do one sub-test per each individual test_expect_success. I broke it up here into a few logical groups, as I think this makes it more readable - the original tests modified environment variables inside the test bodies. Instead, I've used "true" as the body of a test we expect to run and "false" otherwise. Technically this does not confirm that the body of the "true" test actually ran. We are trusting the framework output to believe that it truly ran, which is sufficient for these tests. And I think the end result is much simpler to follow. - the nested_prereq test uses a few bare "test -f" calls; I converted these to our usual test_path_is_* helpers while moving the code around. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/RelNotes/1.7.9.3.txt')
0 files changed, 0 insertions, 0 deletions