From f3254667283bc51b97a2d35aa8438420528ba9b3 Mon Sep 17 00:00:00 2001 From: Dmitry Kurochkin Date: Sun, 27 Nov 2011 22:36:15 +0400 Subject: [PATCH] test: skip all subtests if external dependencies are missing during init Some tests (e.g. crypto) do a common initialization required for all subtests. The patch adds a check for missing external dependencies during this initialization. If any prerequisites are missing, all subtests are skipped. The check is run on the first call of test_reset_state_ function, so no changes for the tests are needed. --- test/test-lib.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/test-lib.sh b/test/test-lib.sh index df867a5f..99b9e8b8 100644 --- a/test/test-lib.sh +++ b/test/test-lib.sh @@ -902,10 +902,20 @@ test_emacs () { } test_reset_state_ () { + test -z "$test_init_done_" && test_init_ + test_subtest_known_broken_= test_subtest_missing_external_prereqs_= } +# called once before the first subtest +test_init_ () { + test_init_done_=t + + # skip all tests if there were external prerequisites missing during init + test_check_missing_external_prereqs_ "all tests in $this_test" && test_done +} + find_notmuch_path () { -- 2.43.0