test "$#" = 2 && name=$2 || name="$binary(1)"
hash $binary 2>/dev/null || eval "
-$binary () {
test_missing_external_prereq_${binary}_=t
- echo -n \"\$test_subtest_missing_external_prereqs_\" | grep -e \" $name \" ||
- test_subtest_missing_external_prereqs_=\"$test_subtest_missing_external_prereqs_ $name\"
+$binary () {
+ echo -n \"\$test_subtest_missing_external_prereqs_ \" | grep -qe \" $name \" ||
+ test_subtest_missing_external_prereqs_=\"\$test_subtest_missing_external_prereqs_ $name\"
false
}"
}
}
test_emacs () {
+ # test dependencies beforehand to avoid the waiting loop below
+ test_require_external_prereq emacs || return
+ test_require_external_prereq emacsclient || return
+
if [ -z "$EMACS_SERVER" ]; then
server_name="notmuch-test-suite-$$"
# start a detached session with an emacs server