--- test/qparser-test.cc | 6 +++--- test/qparser.expected-output/wildcards | 13 +++++++++++++ test/search | 12 ++++++++++++ 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/test/qparser-test.cc b/test/qparser-test.cc index ae6c8b9..7b145cc 100644 --- a/test/qparser-test.cc +++ b/test/qparser-test.cc @@ -100,9 +100,9 @@ static _notmuch_qparser_t * create_qparser (void *ctx) { _notmuch_qparser_t *qparser = _notmuch_qparser_create (ctx, notmuch); - _notmuch_qparser_add_db_prefix (qparser, "prob", "P", FALSE); - _notmuch_qparser_add_db_prefix (qparser, "lit", "L", TRUE); - _notmuch_qparser_add_db_prefix (qparser, "tag", "K", TRUE); + _notmuch_qparser_add_db_prefix (qparser, "prob", "P", FALSE, FALSE); + _notmuch_qparser_add_db_prefix (qparser, "lit", "L", TRUE, FALSE); + _notmuch_qparser_add_db_prefix (qparser, "tag", "K", TRUE, TRUE); return qparser; } diff --git a/test/qparser.expected-output/wildcards b/test/qparser.expected-output/wildcards index 6f62829..0558732 100644 --- a/test/qparser.expected-output/wildcards +++ b/test/qparser.expected-output/wildcards @@ -18,3 +18,16 @@ nosuchterm* AND x [parse] (AND "nosuchterm"* "x") [gen] (nosuchterm AND x:(pos=1)) [xapian] + +# Incompatible; Xapian doesn't accept wildcards in boolean prefixes +tag:* +[lex] PREFIX/tag "*" +[parse] (FILTER (PREFIX/tag '*')) +[gen] 0 * (Kinbox:(pos=1) SYNONYM Kunread:(pos=1)) +[xapian] 0 * K* + +tag:i* +[lex] PREFIX/tag "i*" +[parse] (FILTER (PREFIX/tag 'i*')) +[gen] 0 * Kinbox:(pos=1) +[xapian] 0 * Ki* diff --git a/test/search b/test/search index b180c7f..7d1dedb 100755 --- a/test/search +++ b/test/search @@ -113,6 +113,18 @@ thread:XXX 2000-01-01 [1/1] Notmuch Test Suite; search by to (name) (inbox unr thread:XXX 2000-01-01 [1/1] Notmuch Test Suite; subject search test (phrase) (inbox unread) thread:XXX 2000-01-01 [1/1] Notmuch Test Suite; this phrase should not match the subject search test (inbox unread)" +test_begin_subtest 'Search by wildcard tag ("at*")' +output=$(notmuch search 'tag:at*' | notmuch_search_sanitize) +test_expect_equal "$output" "thread:XXX 2009-11-18 [2/2] Lars Kellogg-Stedman; [notmuch] \"notmuch help\" outputs to stderr? (attachment inbox unread) +thread:XXX 2009-11-18 [1/2] Alex Botero-Lowry| Carl Worth; [notmuch] [PATCH] Error out if no query is supplied to search instead of going into an infinite loop (attachment inbox unread) +thread:XXX 2009-11-17 [1/2] Alex Botero-Lowry| Carl Worth; [notmuch] preliminary FreeBSD support (attachment inbox unread)" + +test_begin_subtest 'Search for untagged messages' +add_message '[subject]="untagged message"' +notmuch tag -inbox -unread id:$gen_msg_id +output=$(notmuch search 'NOT tag:*' | notmuch_search_sanitize) +test_expect_equal "$output" "thread:XXX 2001-01-05 [1/1] Notmuch Test Suite; untagged message ()" + test_begin_subtest "Search body (utf-8):" add_message '[subject]="utf8-message-body-subject"' '[date]="Sat, 01 Jan 2000 12:00:00 -0000"' '[body]="message body utf8: bödý"' output=$(notmuch search "bödý" | notmuch_search_sanitize) -- 1.7.2.3