Re: [PATCH v4 0/3] test-lib: improve missing prereq handling
From: Adam Dinwoodie <hidden>
Date: 2021-12-01 21:05:55
On Wed, 1 Dec 2021 at 08:53, Fabian Stelzer [off-list ref] wrote:
The ssh signing feature was breaking tests when the broken openssh-8.7 was used. We have now fixed that by checking for this exact case in the GPGSSH prereq and I will improve that check further in a future patch. However we are now in a situation where a broken openssh in the future will result in successfull tests but not a working git build afterwards
Nit, purely because I just spotted it: "successfull" should be "successful".
(either not compiling in the expected feature or like in the ssh case runtime failures) resulting in a false sense of security in the tests. This patches try to improve this situation by showing which prereqs failed in the test summary and by adding an environment variable to enforce certain prereqs to succeed or abort the test otherwise.
I've not managed to keep up with the ongoing development of this function, but I've just tested a recent version (specifically, from Junio's tree, 1ade7d2334 (test-lib: make BAIL_OUT() work in tests and prereq, 2021-11-20)). This looks like it would have been fantastically useful when I was first taking over the maintainership of Git for Cygwin, and I'm looking forward to having the extra confidence of my builds and tests after I can add GIT_TEST_REQUIRE_PREREQ to my build scripts. Thank you!