notmuch/test/python
Thomas Jost 2621f6cef1 test: add a function to run Python tests
The new test_python() function makes writing Python tests a little easier:
- it sets the environment variables as needed
- it redirects stdout to the OUTPUT file (like test_emacs()).

This commit also declares python as an external prereq.

The stdout redirection is required to avoid trouble when running commands like
"python 'script' | sort > OUTPUT": in such a case, any error due to a missing
external prereq would be "swallowed" by sort, resulting to a failed test instead
of a skipped one.
2011-12-11 10:40:14 -04:00

17 lines
464 B
Bash
Executable file

#!/usr/bin/env bash
test_description="python bindings"
. ./test-lib.sh
add_email_corpus
test_begin_subtest "compare thread ids"
test_python <<EOF
import notmuch
db = notmuch.Database(mode=notmuch.Database.MODE.READ_WRITE)
q_new = notmuch.Query(db, 'tag:inbox')
for t in q_new.search_threads():
print t.get_thread_id()
EOF
notmuch search --output=threads tag:inbox | sed s/^thread:// | sort > EXPECTED
test_expect_equal_file <(sort OUTPUT) EXPECTED
test_done