[PATCH 2/3] ruby: allow build with RUNPATH
[notmuch-archives.git] / cf / 6e2720935c88c525c5975314ec18ce42241848
1 Return-Path: <amdragon@mit.edu>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id A0664431FC0\r
6         for <notmuch@notmuchmail.org>; Tue,  7 Aug 2012 14:21:51 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -0.7\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5\r
12         tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
13 Received: from olra.theworths.org ([127.0.0.1])\r
14         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
15         with ESMTP id ttP0WbXWpSrw for <notmuch@notmuchmail.org>;\r
16         Tue,  7 Aug 2012 14:21:49 -0700 (PDT)\r
17 Received: from dmz-mailsec-scanner-4.mit.edu (DMZ-MAILSEC-SCANNER-4.MIT.EDU\r
18         [18.9.25.15])\r
19         by olra.theworths.org (Postfix) with ESMTP id B7B26431FAF\r
20         for <notmuch@notmuchmail.org>; Tue,  7 Aug 2012 14:21:49 -0700 (PDT)\r
21 X-AuditID: 1209190f-b7f306d0000008b4-f9-502186ec59fb\r
22 Received: from mailhub-auth-4.mit.edu ( [18.7.62.39])\r
23         by dmz-mailsec-scanner-4.mit.edu (Symantec Messaging Gateway) with SMTP\r
24         id 73.66.02228.CE681205; Tue,  7 Aug 2012 17:21:48 -0400 (EDT)\r
25 Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103])\r
26         by mailhub-auth-4.mit.edu (8.13.8/8.9.2) with ESMTP id q77LLl1n018296; \r
27         Tue, 7 Aug 2012 17:21:47 -0400\r
28 Received: from drake.dyndns.org (26-4-181.dynamic.csail.mit.edu [18.26.4.181])\r
29         (authenticated bits=0)\r
30         (User authenticated as amdragon@ATHENA.MIT.EDU)\r
31         by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id q77LLkdC027381\r
32         (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT);\r
33         Tue, 7 Aug 2012 17:21:47 -0400 (EDT)\r
34 Received: from amthrax by drake.dyndns.org with local (Exim 4.77)\r
35         (envelope-from <amdragon@mit.edu>)\r
36         id 1SyrDm-0007b0-AX; Tue, 07 Aug 2012 17:21:46 -0400\r
37 From: Austin Clements <amdragon@MIT.EDU>\r
38 To: notmuch@notmuchmail.org\r
39 Subject: [PATCH] test: Add test for messages with missing headers\r
40 Date: Tue,  7 Aug 2012 17:21:41 -0400\r
41 Message-Id: <1344374501-28185-1-git-send-email-amdragon@mit.edu>\r
42 X-Mailer: git-send-email 1.7.10\r
43 X-Brightmail-Tracker:\r
44  H4sIAAAAAAAAA+NgFprNIsWRmVeSWpSXmKPExsUixG6nrvumTTHA4EQLj8X1mzOZHRg9nq26\r
45         xRzAGMVlk5Kak1mWWqRvl8CV8W7nC+aCKfoV7zbPZWtgPCDfxcjJISFgIvH57DFWCFtM4sK9\r
46         9WxdjFwcQgL7GCWWti5mhXDWM0rsfLedGcI5ySSxve8WE4Qzl1GiaeM6NpB+NgENiW37lzOC\r
47         2CIC0hI7784GaufgYBZQk/jTpQISFhZwlPjY85odxGYRUJW43vUbbDWvgIPE+qkroc6Ql3h6\r
48         v49tAiPvAkaGVYyyKblVurmJmTnFqcm6xcmJeXmpRbomermZJXqpKaWbGEFhwCnJv4Px20Gl\r
49         Q4wCHIxKPLzRyYoBQqyJZcWVuYcYJTmYlER5fzUDhfiS8lMqMxKLM+KLSnNSiw8xSnAwK4nw\r
50         trUC5XhTEiurUovyYVLSHCxK4rxXU276CwmkJ5akZqemFqQWwWRlODiUJHiFvIAaBYtS01Mr\r
51         0jJzShDSTBycIMN5gIZLtIEMLy5IzC3OTIfIn2JUlBLnPQWyVQAkkVGaB9cLi9NXjOJArwjz\r
52         SoO08wBjHK77FdBgJqDB3vJyIINLEhFSUg2M5SuTG1ZMvyN3v1xIdN5nX99av42Zi/fcjQoW\r
53         92z78mf9Xpmp4r9NzzAEzuU/usiOk//nA7m24vpD320q9jzSsj4iLeN2qW7f7/zGBP7gCfuO\r
54         3OVbpqI7U+RQosOUNXr7bDjXd3xS5mfzm7j1TaXjhM8uGbP/z71bpaWbMfHnUk1F/RtTJzSz\r
55         K7EUZyQaajEXFScCAAb1Wk+uAgAA\r
56 X-BeenThere: notmuch@notmuchmail.org\r
57 X-Mailman-Version: 2.1.13\r
58 Precedence: list\r
59 List-Id: "Use and development of the notmuch mail system."\r
60         <notmuch.notmuchmail.org>\r
61 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
62         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
63 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
64 List-Post: <mailto:notmuch@notmuchmail.org>\r
65 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
66 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
67         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
68 X-List-Received-Date: Tue, 07 Aug 2012 21:21:51 -0000\r
69 \r
70 Currently the JSON tests for search and show are broken because\r
71 notmuch attempts to dereference a NULL pointer.\r
72 ---\r
73 Things to bikeshed:\r
74 \r
75 * Should we include From and Subject in the headers object when there\r
76   are no from or subject headers?  Currently the schema says that\r
77   everything but those two and "Date" is optional (indeed, "To" is\r
78   missing from the second message) but that was just post facto\r
79   standardization.\r
80 \r
81 * How should we format expected JSON in the test suite, now that we\r
82   can format it however we want?  Here I've just pasted in the result\r
83   of python -mjson.tool.  While that was very easy and the result is\r
84   quite readable, it's the antithesis of compact and the keys have\r
85   been alphabetized.\r
86 \r
87  test/missing-headers |  162 ++++++++++++++++++++++++++++++++++++++++++++++++++\r
88  test/notmuch-test    |    1 +\r
89  2 files changed, 163 insertions(+)\r
90  create mode 100755 test/missing-headers\r
91 \r
92 diff --git a/test/missing-headers b/test/missing-headers\r
93 new file mode 100755\r
94 index 0000000..744c04e\r
95 --- /dev/null\r
96 +++ b/test/missing-headers\r
97 @@ -0,0 +1,162 @@\r
98 +#!/usr/bin/env bash\r
99 +test_description='messages with missing headers'\r
100 +. ./test-lib.sh\r
101 +\r
102 +# Notmuch requires at least one of from, subject, or to or it will\r
103 +# ignore the file.  Generate two messages so that together they cover\r
104 +# all possible missing headers.  We also give one of the messages a\r
105 +# date to ensure stable result ordering.\r
106 +\r
107 +cat <<EOF > "${MAIL_DIR}/msg-2"\r
108 +To: Notmuch Test Suite <test_suite@notmuchmail.org>\r
109 +Date: Fri, 05 Jan 2001 15:43:57 +0000\r
110 +\r
111 +Body\r
112 +EOF\r
113 +\r
114 +cat <<EOF > "${MAIL_DIR}/msg-1"\r
115 +From: Notmuch Test Suite <test_suite@notmuchmail.org>\r
116 +\r
117 +Body\r
118 +EOF\r
119 +\r
120 +NOTMUCH_NEW\r
121 +\r
122 +test_begin_subtest "Search: text"\r
123 +output=$(notmuch search '*' | notmuch_search_sanitize)\r
124 +test_expect_equal "$output" "\\r
125 +thread:XXX   2001-01-05 [1/1] (null);  (inbox unread)\r
126 +thread:XXX   1970-01-01 [1/1] Notmuch Test Suite;  (inbox unread)"\r
127 +\r
128 +test_begin_subtest "Search: json"\r
129 +test_subtest_known_broken\r
130 +output=$(notmuch search --format=json '*' | notmuch_search_sanitize)\r
131 +test_expect_equal_json "$output" '\r
132 +[\r
133 +    {\r
134 +        "authors": "",\r
135 +        "date_relative": "2001-01-05",\r
136 +        "matched": 1,\r
137 +        "subject": "",\r
138 +        "tags": [\r
139 +            "inbox",\r
140 +            "unread"\r
141 +        ],\r
142 +        "thread": "XXX",\r
143 +        "timestamp": 978709437,\r
144 +        "total": 1\r
145 +    },\r
146 +    {\r
147 +        "authors": "Notmuch Test Suite",\r
148 +        "date_relative": "1970-01-01",\r
149 +        "matched": 1,\r
150 +        "subject": "",\r
151 +        "tags": [\r
152 +            "inbox",\r
153 +            "unread"\r
154 +        ],\r
155 +        "thread": "XXX",\r
156 +        "timestamp": 0,\r
157 +        "total": 1\r
158 +    }\r
159 +]'\r
160 +\r
161 +test_begin_subtest "Show: text"\r
162 +output=$(notmuch show '*')\r
163 +test_expect_equal "$output" "\\r
164 +\f\r
165 message{ id:notmuch-sha1-7a6e4eac383ef958fcd3ebf2143db71b8ff01161 depth:0 match:1 excluded:0 filename:/tmp/nmtest/tmp.missing-headers/mail/msg-2\r
166 +\f\r
167 header{\r
168 + (2001-01-05) (inbox unread)\r
169 +Subject: (null)\r
170 +From: (null)\r
171 +To: Notmuch Test Suite <test_suite@notmuchmail.org>\r
172 +Date: Fri, 05 Jan 2001 15:43:57 +0000\r
173 +\f\r
174 header}\r
175 +\f\r
176 body{\r
177 +\f\r
178 part{ ID: 1, Content-type: text/plain\r
179 +Body\r
180 +\f\r
181 part}\r
182 +\f\r
183 body}\r
184 +\f\r
185 message}\r
186 +\f\r
187 message{ id:notmuch-sha1-ca55943aff7a72baf2ab21fa74fab3d632401334 depth:0 match:1 excluded:0 filename:/tmp/nmtest/tmp.missing-headers/mail/msg-1\r
188 +\f\r
189 header{\r
190 +Notmuch Test Suite <test_suite@notmuchmail.org> (1970-01-01) (inbox unread)\r
191 +Subject: (null)\r
192 +From: Notmuch Test Suite <test_suite@notmuchmail.org>\r
193 +Date: Thu, 01 Jan 1970 00:00:00 +0000\r
194 +\f\r
195 header}\r
196 +\f\r
197 body{\r
198 +\f\r
199 part{ ID: 1, Content-type: text/plain\r
200 +Body\r
201 +\f\r
202 part}\r
203 +\f\r
204 body}\r
205 +\f\r
206 message}"\r
207 +\r
208 +test_begin_subtest "Show: json"\r
209 +test_subtest_known_broken\r
210 +output=$(notmuch show --format=json '*' | notmuch_json_show_sanitize)\r
211 +test_expect_equal_json "$output" '\r
212 +[\r
213 +    [\r
214 +        [\r
215 +            {\r
216 +                "body": [\r
217 +                    {\r
218 +                        "content": "Body\n",\r
219 +                        "content-type": "text/plain",\r
220 +                        "id": 1\r
221 +                    }\r
222 +                ],\r
223 +                "date_relative": "2001-01-05",\r
224 +                "excluded": false,\r
225 +                "filename": "YYYYY",\r
226 +                "headers": {\r
227 +                    "Date": "Fri, 05 Jan 2001 15:43:57 +0000",\r
228 +                    "From": "",\r
229 +                    "Subject": "",\r
230 +                    "To": "Notmuch Test Suite <test_suite@notmuchmail.org>"\r
231 +                },\r
232 +                "id": "XXXXX",\r
233 +                "match": true,\r
234 +                "tags": [\r
235 +                    "inbox",\r
236 +                    "unread"\r
237 +                ],\r
238 +                "timestamp": 978709437\r
239 +            },\r
240 +            []\r
241 +        ]\r
242 +    ],\r
243 +    [\r
244 +        [\r
245 +            {\r
246 +                "body": [\r
247 +                    {\r
248 +                        "content": "Body\n",\r
249 +                        "content-type": "text/plain",\r
250 +                        "id": 1\r
251 +                    }\r
252 +                ],\r
253 +                "date_relative": "1970-01-01",\r
254 +                "excluded": false,\r
255 +                "filename": "YYYYY",\r
256 +                "headers": {\r
257 +                    "Date": "Thu, 01 Jan 1970 00:00:00 +0000",\r
258 +                    "From": "Notmuch Test Suite <test_suite@notmuchmail.org>",\r
259 +                    "Subject": ""\r
260 +                },\r
261 +                "id": "XXXXX",\r
262 +                "match": true,\r
263 +                "tags": [\r
264 +                    "inbox",\r
265 +                    "unread"\r
266 +                ],\r
267 +                "timestamp": 0\r
268 +            },\r
269 +            []\r
270 +        ]\r
271 +    ]\r
272 +]'\r
273 +\r
274 +\r
275 +test_done\r
276 diff --git a/test/notmuch-test b/test/notmuch-test\r
277 index ea39dfc..cc732c3 100755\r
278 --- a/test/notmuch-test\r
279 +++ b/test/notmuch-test\r
280 @@ -59,6 +59,7 @@ TESTS="\r
281    emacs-address-cleaning\r
282    emacs-hello\r
283    emacs-show\r
284 +  missing-headers\r
285  "\r
286  TESTS=${NOTMUCH_TESTS:=$TESTS}\r
287  \r
288 -- \r
289 1.7.10\r
290 \r