]> rtime.felk.cvut.cz Git - notmuch.git/blob - test/T095-search-filter-by.sh
cli: search: Add configurable way to filter out duplicate addresses
[notmuch.git] / test / T095-search-filter-by.sh
1 #!/usr/bin/env bash
2 test_description='duplicite address filtering in "notmuch search --output=recipients"'
3 . ./test-lib.sh
4
5 add_message '[to]="Real Name <foo@example.com>, Real Name <bar@example.com>"'
6 add_message '[to]="Nickname <foo@example.com>"' '[cc]="Real Name <Bar@Example.COM>"'
7 add_message '[to]="Nickname <foo@example.com>"' '[bcc]="Real Name <Bar@Example.COM>"'
8
9 test_begin_subtest "--output=recipients"
10 notmuch search --output=recipients "*" >OUTPUT
11 cat <<EOF >EXPECTED
12 Real Name <foo@example.com>
13 Real Name <bar@example.com>
14 Nickname <foo@example.com>
15 Real Name <Bar@Example.COM>
16 EOF
17 test_expect_equal_file OUTPUT EXPECTED
18
19 test_begin_subtest "--output=recipients --filter-by=nameaddr"
20 notmuch search --output=recipients --filter-by=nameaddr "*" >OUTPUT
21 # The same as above
22 cat <<EOF >EXPECTED
23 Real Name <foo@example.com>
24 Real Name <bar@example.com>
25 Nickname <foo@example.com>
26 Real Name <Bar@Example.COM>
27 EOF
28 test_expect_equal_file OUTPUT EXPECTED
29
30 test_begin_subtest "--output=recipients --filter-by=name"
31 notmuch search --output=recipients --filter-by=name "*" >OUTPUT
32 cat <<EOF >EXPECTED
33 Real Name <foo@example.com>
34 Nickname <foo@example.com>
35 EOF
36 test_expect_equal_file OUTPUT EXPECTED
37
38 test_begin_subtest "--output=recipients --filter-by=addr"
39 notmuch search --output=recipients --filter-by=addr "*" >OUTPUT
40 cat <<EOF >EXPECTED
41 Real Name <foo@example.com>
42 Real Name <bar@example.com>
43 Real Name <Bar@Example.COM>
44 EOF
45 test_expect_equal_file OUTPUT EXPECTED
46
47 test_begin_subtest "--output=recipients --filter-by=addrfold"
48 notmuch search --output=recipients --filter-by=addrfold "*" >OUTPUT
49 cat <<EOF >EXPECTED
50 Real Name <foo@example.com>
51 Real Name <bar@example.com>
52 EOF
53 test_expect_equal_file OUTPUT EXPECTED
54
55 test_begin_subtest "--output=recipients --filter-by=nameaddrfold"
56 notmuch search --output=recipients --filter-by=nameaddrfold "*" >OUTPUT
57 cat <<EOF >EXPECTED
58 Real Name <foo@example.com>
59 Real Name <bar@example.com>
60 Nickname <foo@example.com>
61 EOF
62 test_expect_equal_file OUTPUT EXPECTED
63
64 test_done