From: David Bremner <bremner@debian.org> We start modestly, with a (slightly modified) test case from Kazuo Teramoto. Originally it just made sure the bindings didn't crash; here we check that by comparing the output with that of notmuch search. --- test/notmuch-test | 1 + test/python | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 0 deletions(-) create mode 100755 test/python diff --git a/test/notmuch-test b/test/notmuch-test index adfd589..e77f3c5 100755 --- a/test/notmuch-test +++ b/test/notmuch-test @@ -46,6 +46,7 @@ TESTS=" symbol-hiding search-folder-coherence atomicity + python " TESTS=${NOTMUCH_TESTS:=$TESTS} diff --git a/test/python b/test/python new file mode 100755 index 0000000..28a8aab --- /dev/null +++ b/test/python @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +test_description="python bindings" +. ./test-lib.sh + +add_email_corpus + +# This test relies on the output from the python Thread.__str__ +# method being byte compatible with that from notmuch search. + +test_begin_subtest "compare with notmuch search" +python <<EOF > OUTPUT +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 unicode(t) +EOF +notmuch search tag:inbox > EXPECTED +test_expect_equal_file OUTPUT EXPECTED +test_done -- 1.7.7.3