unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
blob c08985b93a73852431f2083b7ca284fcecc40c7f 2431 bytes (raw)
name: test/T730-user-header.sh 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
 
#!/usr/bin/env bash
test_description='indexing user specified headers'
. $(dirname "$0")/test-lib.sh || exit 1

test_begin_subtest "error adding user header before initializing DB"
test_expect_code 1 "notmuch config set index.header.list \"List-Id\""

add_email_corpus

notmuch search '*' | notmuch_search_sanitize > initial-threads
notmuch search --output=messages '*' > initial-message-ids
notmuch dump > initial-dump

test_begin_subtest "adding user header"
test_expect_code 0 "notmuch config set index.header.list \"List-Id\""

test_begin_subtest "adding existing user header"
test_expect_code 0 "notmuch config set index.header.list \"List-Id\""

test_begin_subtest "retrieve user header"
output=$(notmuch config get index.header.list)
test_expect_equal "List-Id" "$output"

test_begin_subtest 'reindex after adding header preserves threads'
notmuch reindex '*'
notmuch search '*' | notmuch_search_sanitize > OUTPUT
test_expect_equal_file initial-threads OUTPUT

test_begin_subtest "List all user headers"
notmuch config set index.header.spam "X-Spam"
notmuch config list | grep ^index.header | notmuch_config_sanitize > OUTPUT
cat <<EOF > EXPECTED
index.header.list=List-Id
index.header.spam=X-Spam
EOF
test_expect_equal_file EXPECTED OUTPUT

test_begin_subtest "parse user prefix"
NOTMUCH_DEBUG_QUERY=t notmuch count 'list:"notmuch"' 2>&1 | grep Tmail >OUTPUT
cat <<EOF > EXPECTED
Query((Tmail AND XUlist:notmuch@1))
EOF
test_expect_equal_file EXPECTED OUTPUT

test_begin_subtest "parse user prefix, stemmed"
NOTMUCH_DEBUG_QUERY=t notmuch count 'list:notmuch' 2>&1 | grep Tmail >OUTPUT
cat <<EOF > EXPECTED
Query((Tmail AND ZXUlist:notmuch@1))
EOF
test_expect_equal_file EXPECTED OUTPUT

test_begin_subtest "parse user prefix, phrase"
NOTMUCH_DEBUG_QUERY=t notmuch count 'list:notmuchmail.org' 2>&1 | grep Tmail >OUTPUT
cat <<EOF > EXPECTED
Query((Tmail AND (XUlist:notmuchmail@1 PHRASE 2 XUlist:org@2)))
EOF
test_expect_equal_file EXPECTED OUTPUT

test_begin_subtest "index user header"
notmuch config set index.header.list "List-Id"
notmuch reindex '*'
notmuch search --output=files list:notmuch | notmuch_search_files_sanitize | sort > OUTPUT
cat <<EOF > EXPECTED
MAIL_DIR/bar/baz/05:2,
MAIL_DIR/bar/baz/23:2,
MAIL_DIR/bar/baz/24:2,
MAIL_DIR/bar/cur/20:2,
MAIL_DIR/bar/new/21:2,
MAIL_DIR/bar/new/22:2,
MAIL_DIR/foo/cur/08:2,
MAIL_DIR/foo/new/03:2,
MAIL_DIR/new/04:2,
EOF
test_expect_equal_file EXPECTED OUTPUT

test_done

debug log:

solving c08985b9 ...
found c08985b9 in https://yhetil.org/notmuch/20190302154133.25642-7-david@tethera.net/
found 1531f1d6 in https://yhetil.org/notmuch/20190302154133.25642-4-david@tethera.net/
found ad32a5b4 in https://yhetil.org/notmuch/20190302154133.25642-3-david@tethera.net/

applying [1/3] https://yhetil.org/notmuch/20190302154133.25642-3-david@tethera.net/
diff --git a/test/T730-user-header.sh b/test/T730-user-header.sh
new file mode 100755
index 00000000..ad32a5b4


applying [2/3] https://yhetil.org/notmuch/20190302154133.25642-4-david@tethera.net/
diff --git a/test/T730-user-header.sh b/test/T730-user-header.sh
index ad32a5b4..1531f1d6 100755


applying [3/3] https://yhetil.org/notmuch/20190302154133.25642-7-david@tethera.net/
diff --git a/test/T730-user-header.sh b/test/T730-user-header.sh
index 1531f1d6..c08985b9 100755

Checking patch test/T730-user-header.sh...
Applied patch test/T730-user-header.sh cleanly.
Checking patch test/T730-user-header.sh...
Applied patch test/T730-user-header.sh cleanly.
Checking patch test/T730-user-header.sh...
Applied patch test/T730-user-header.sh cleanly.

index at:
100755 c08985b93a73852431f2083b7ca284fcecc40c7f	test/T730-user-header.sh

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).