On Tue, Nov 05 2019, David Bremner wrote: > Tomi Ollila <tomi.ollila@iki.fi> writes: > > >> >> probably >> >> test_expect_success "${NOTMUCH_PYTHON} -m pytest \ >> --log-file=$TMP_DIRECTORY/test.output \ >> $NOTMUCH_SRCDIR/bindings/python-cffi/build/stage" >> >> worked (which reminds me out-of-tree... ;) >> > > despite looking prettier this does not work because it looks for the > "notdb" module in the current directory. It could work (maybe) if we set > PYTHONPATH. Would that be better than the 'cd'? So that would basically be: test_expect_success "PYTHONPATH=$PWD${PYTHONPATH:+:$PYTHONPATH} \ ${NOTMUCH_PYTHON} -m pytest \ --log-file=$TMP_DIRECTORY/test.output \ $NOTMUCH_SRCDIR/bindings/python-cffi/build/stage" (if it worked) perhaps 'cd' in subshell is clearer (i also wonder what --rootdir= does (and how new pytest is needed for that) >> It prints the version, then exists. Could not figure out how to request >> specific version in quick look (10 min search/trial/error session), >> parsing version output is so... :/ > > I think something like > > conf=$(mktemp) > printf "[pytest]\nminversion=3.0\n" > $conf > if pytest-3 -c $conf --version >/dev/null; then > have_pytest=1 > else > have_pytest=0 > fi > rm -f $(conf) > > should work. Right -- just that pytest-3 may not be available -- to iterate (tested)... if ${NOTMUCH_PYTHON} -m pytest -c $conf --version >/dev/null 2>&1; then (in this particular case redirecting both stdout and stderr is needed to silence noise in all 'ordinary' cases, being 1) pytest module not available -- silence stderr 2) pytest version not new enough -- silence stderr 3) pytest exists and is new enought -- silence stdout ) _______________________________________________ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch