]> git.notmuchmail.org Git - notmuch/blob - test/T750-gzip.sh
lib/message_file: open gzipped files
[notmuch] / test / T750-gzip.sh
1 #!/usr/bin/env bash
2 test_description='support for gzipped messages'
3 . $(dirname "$0")/test-lib.sh || exit 1
4
5 #######################################################################
6 # notmuch new
7 test_begin_subtest "Single new gzipped message"
8 generate_message
9 gzip $gen_msg_filename
10 output=$(NOTMUCH_NEW --debug)
11 test_expect_equal "$output" "Added 1 new message to the database."
12
13 test_begin_subtest "Single new gzipped message (full-scan)"
14 generate_message
15 gzip $gen_msg_filename
16 output=$(NOTMUCH_NEW --debug --full-scan 2>&1)
17 test_expect_equal "$output" "Added 1 new message to the database."
18
19 test_begin_subtest "Multiple new messages, one gzipped"
20 generate_message
21 gzip $gen_msg_filename
22 generate_message
23 output=$(NOTMUCH_NEW --debug)
24 test_expect_equal "$output" "Added 2 new messages to the database."
25
26 test_begin_subtest "Multiple new messages, one gzipped (full-scan)"
27 generate_message
28 gzip $gen_msg_filename
29 generate_message
30 output=$(NOTMUCH_NEW --debug --full-scan 2>&1)
31 test_expect_equal "$output" "Added 2 new messages to the database."
32
33 test_begin_subtest "Renamed (gzipped) message"
34 generate_message
35 echo $gen_message_filename
36 notmuch new > /dev/null
37 gzip $gen_msg_filename
38 output=$(NOTMUCH_NEW --debug)
39 test_expect_equal "$output" "(D) add_files, pass 2: queuing passed file ${gen_msg_filename} for deletion from database
40 No new mail. Detected 1 file rename."
41
42 ######################################################################
43 # notmuch search
44
45 test_begin_subtest "notmuch search with partially gzipped mail store"
46 notmuch search '*' | notmuch_search_sanitize > OUTPUT
47 cat <<EOF > EXPECTED
48 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Single new gzipped message (inbox unread)
49 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Single new gzipped message (full-scan) (inbox unread)
50 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Multiple new messages, one gzipped (inbox unread)
51 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Multiple new messages, one gzipped (inbox unread)
52 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Multiple new messages, one gzipped (full-scan) (inbox unread)
53 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Multiple new messages, one gzipped (full-scan) (inbox unread)
54 thread:XXX   2001-01-05 [1/1] Notmuch Test Suite; Renamed (gzipped) message (inbox unread)
55 EOF
56 test_expect_equal_file EXPECTED OUTPUT
57
58 test_begin_subtest "notmuch search --output=files with partially gzipped mail store"
59 notmuch search --output=files '*' | notmuch_search_files_sanitize > OUTPUT
60 cat <<EOF > EXPECTED
61 MAIL_DIR/msg-001.gz
62 MAIL_DIR/msg-002.gz
63 MAIL_DIR/msg-003.gz
64 MAIL_DIR/msg-004
65 MAIL_DIR/msg-005.gz
66 MAIL_DIR/msg-006
67 MAIL_DIR/msg-007.gz
68 EOF
69 test_expect_equal_file EXPECTED OUTPUT
70
71 ######################################################################
72 # notmuch show
73
74 test_begin_subtest "show un-gzipped message"
75 notmuch show id:msg-006@notmuch-test-suite | notmuch_show_sanitize > OUTPUT
76 cat <<EOF > EXPECTED
77 \fmessage{ id:msg-006@notmuch-test-suite depth:0 match:1 excluded:0 filename:/XXX/mail/msg-006
78 \fheader{
79 Notmuch Test Suite <test_suite@notmuchmail.org> (2001-01-05) (inbox unread)
80 Subject: Multiple new messages, one gzipped (full-scan)
81 From: Notmuch Test Suite <test_suite@notmuchmail.org>
82 To: Notmuch Test Suite <test_suite@notmuchmail.org>
83 Date: Fri, 05 Jan 2001 15:43:51 +0000
84 \fheader}
85 \fbody{
86 \fpart{ ID: 1, Content-type: text/plain
87 This is just a test message (#6)
88 \fpart}
89 \fbody}
90 \fmessage}
91 EOF
92 test_expect_equal_file EXPECTED OUTPUT
93
94 test_begin_subtest "show gzipped message"
95 test_subtest_known_broken
96 notmuch show id:msg-007@notmuch-test-suite | notmuch_show_sanitize > OUTPUT
97 cat <<EOF > EXPECTED
98 \fmessage{ id:msg-007@notmuch-test-suite depth:0 match:1 excluded:0 filename:/XXX/mail/msg-007.gz
99 \fheader{
100 Notmuch Test Suite <test_suite@notmuchmail.org> (2001-01-05) (inbox unread)
101 Subject: Renamed (gzipped) message
102 From: Notmuch Test Suite <test_suite@notmuchmail.org>
103 To: Notmuch Test Suite <test_suite@notmuchmail.org>
104 Date: Fri, 05 Jan 2001 15:43:50 +0000
105 \fheader}
106 \fbody{
107 \fpart{ ID: 1, Content-type: text/plain
108 This is just a test message (#7)
109 \fpart}
110 \fbody}
111 \fmessage}
112 EOF
113 test_expect_equal_file EXPECTED OUTPUT
114
115 test_done