]>
diplodocus.org Git - nmh/blob - test/mhlist/test-mhlist
2 ######################################################
6 ######################################################
10 if test -z "${MH_OBJ_DIR}"; then
11 srcdir
=`dirname $0`/..
/..
12 MH_OBJ_DIR
=`cd $srcdir && pwd`; export MH_OBJ_DIR
15 .
"$MH_OBJ_DIR/test/common.sh"
19 expected
=$MH_TEST_DIR/$$.expected
20 actual
=$MH_TEST_DIR/$$.actual
23 # check with no options and no current message
24 run_test
'mhlist' 'mhlist: no cur message'
26 # check with no options and current message
27 folder
+inbox
5 > /dev
/null
29 msg part type/subtype size description
33 check
$expected $actual 'keep first'
36 run_test
'mhlist 5 -noheaders' ' 5 text/plain 25'
39 mhlist
-noheaders -headers > $actual 2>&1
40 check
$expected $actual 'keep first'
42 # check with folder and current message
43 mhlist
+inbox
> $actual 2>&1
44 check
$expected $actual 'keep first'
46 # check with specified message
47 mhlist
5 > $actual 2>&1
48 check
$expected $actual 'keep first'
51 mhlist
-file "$MH_TEST_DIR/Mail/inbox/5" > $actual 2>&1
52 check
$expected $actual
56 msg part type/subtype size description
59 mhlist
-file - < "$MH_TEST_DIR/Mail/inbox/5" > $actual 2>&1
60 check
$expected $actual
62 # check message number greater than highest
63 run_test
'mhlist 11' "mhlist: message 11 doesn't exist"
65 # check multiple messages
67 msg part type/subtype size description
71 mhlist
2 8 > $actual 2>&1
72 check
$expected $actual
74 # Write message with a text/plain subpart.
77 To: recipient@example.com
78 From: sender@example.com
81 Content-Type: multipart/mixed; boundary="----- =_aaaaaaaaaa0"
84 Content-Type: multipart/related;
85 type="multipart/alternative";
86 boundary="subpart__1.1"
89 Content-Type: text/plain; charset="iso-8859-1"
90 Content-Disposition: attachment; filename="test1"
92 This is the first text/plain part, in a subpart.
97 Content-Type: text/plain; charset="iso-8859-1"
98 Content-Disposition: attachment; filename="test2"
99 Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA==
100 Content-Transfer-Encoding: quoted-printable
102 This is the second text/plain part.
104 ------- =_aaaaaaaaaa0
105 Content-Type: text/plain; charset="iso-8859-1"; name="test3"
106 Content-Disposition: attachment; filename="test3"
108 This is the third text/plain part.
110 ------- =_aaaaaaaaaa0
111 Content-Type: text/plain; charset="iso-8859-1"
112 Content-Disposition: attachment; filename="test4"
113 Content-Transfer-Encoding: base64
115 VGhpcyBpcyB0aGUgZm91cnRoIHRleHQvcGxhaW4gcGFydC4K
117 ------- =_aaaaaaaaaa0--
121 run_test
'mhlist last -part 3 -noheader' \
122 ' 11 multipart/mixed 936
123 1 multipart/related 180
126 # check -part of a subpart
127 run_test
'mhlist last -part 1.1 -noheader' \
128 ' 11 multipart/mixed 936
129 1 multipart/related 180
133 run_test
'mhlist last -type text/plain -noheader' \
134 ' 11 multipart/mixed 936
135 1 multipart/related 180
142 run_test
'mhlist last -part 4 -noheader -norealsize' \
143 ' 11 multipart/mixed 936
144 1 multipart/related 180
147 # check -realsize, the default
148 run_test
'mhlist last -part 4 -noheader -norealsize -realsize' \
149 ' 11 multipart/mixed 936
150 1 multipart/related 180
154 run_test
'mhlist last -part 2 -noheader -check' \
155 ' 11 multipart/mixed 936
156 1 multipart/related 180
159 # check -check with bad MD5 checksum
160 sed 's/\(Content-MD5: \)kq+Hnc/\1BADBAD/' $msgfile > $MH_TEST_DIR/$$.tmp
161 mv -f $MH_TEST_DIR/$$.tmp
$msgfile
162 run_test
'mhlist last -part 2 -noheader -check' \
163 ' 11 multipart/mixed 936
164 1 multipart/related 180
166 mhlist: content integrity suspect (digest mismatch) -- continuing
167 (content text/plain in message 11, part 2)'
169 # check -nocheck, the default
170 run_test
'mhlist last -part 2 -noheader -check -nocheck' \
171 ' 11 multipart/mixed 936
172 1 multipart/related 180
176 # Set the cur sequence to 1 to test default behavior of changecur after
180 mark
1 -sequence cur
-add -zero
183 run_test
'mhlist 11 -verbose -noheader' \
184 ' 11 multipart/mixed 936
185 boundary="----- =_aaaaaaaaaa0"
186 1 multipart/related 180
187 type="multipart/alternative"
188 boundary="subpart__1.1"
197 charset="iso-8859-1"'
200 # Check default changecur behavior
203 run_test
'mark -sequence cur -list' 'cur: 11'
206 # Now test -nochangecur
209 mhlist
-nochangecur 1 >/dev
/null
211 run_test
'mark -sequence cur -list' 'cur: 11'
213 # check MIME parser and m_getfld
214 cat > $expected <<EOF
215 msg part type/subtype size description
216 12 multipart/related 204
217 1 multipart/alternative 74
224 To: recipient@example.com, recipient@example.com, recipient@example.com,
225 recipient@example.com, recipient@example.com, recipient@example.com,
226 recipient@example.com, recipient@example.com, recipient@example.com,
227 recipient@example.com, recipient@example.com, recipient@example.com,
228 recipient@example.com, recipient@example.com, recipient@example.com,
229 recipient@example.com, recipient@example.com, recipient@example.com,
230 recipient@example.com, recipient@example.com, recipient@example.com,
231 recipient@example.com, recipient@example.com, recipient@example.com,
232 recipient@example.com, recipient@example.com, recipient@example.com,
233 recipient@example.com, recipient@example.com, recipient@example.com,
234 recipient@example.com, recipient@example.com, recipient@example.com,
235 recipient@example.com, recipient@example.com, recipient@example.com,
236 recipient@example.com, recipient@example.com, recipient@example.com,
237 recipient@example.com, recipient@example.com, recipient@example.com,
238 recipient@example.com, recipient@example.com, recipient@example.com,
239 recipient@example.com, recipient@example.com, recipient@example.com,
240 recipient@example.com, recipient@example.com, recipient@example.com,
241 recipient@example.com, recipient@example.com, recipient@example.com,
242 recipient@example.com, recipient@example.com, recipient@example.com,
243 recipient@example.com, recipient@example.com, recipient@example.com,
244 recipient@example.com, recipient@example.com, recipient@example.com,
245 recipient@example.com, recipient@example.com, recipient@example.com,
246 recipient@example.com, recipient@example.com, recipient@example.com,
247 recipient@example.com, recipient@example.com, recipient@example.com,
248 recipient@example.com, recipient@example.com, recipient@example.com,
249 recipient@example.com, recipient@example.com, recipient@example.com,
250 recipient@example.com, recipient@example.com, recipient@example.com,
251 recipient@example.com, recipient@example.com, recipient@example.com,
252 recipient@example.com, recipient@example.com, recipient@example.com,
253 recipient@example.com, recipient@example.com, recipient@example.com,
254 recipient@example.com, recipient@example.com, recipient@example.com,
255 recipient@example.com, recipient@example.com, recipient@example.com,
256 recipient@example.com, recipient@example.com, recipient@example.com,
257 recipient@example.com, recipient@example.com, recipient@example.com,
258 recipient@example.com, recipient@example.com, recipient@example.com,
259 recipient@example.com, recipient@example.com, recipient@example.com,
260 recipient@example.com, recipient@example.com, recipient@example.com,
261 recipient@example.com, recipient@example.com, recipient@example.com,
262 recipient@example.com, recipient@example.com, recipient@example.com,
263 recipient@example.com, recipient@example.com, recipient@example.com,
264 recipient@example.com, recipient@example.com, recipient@example.com,
265 recipient@example.com, recipient@example.com, recipient@example.com,
266 recipient@example.com, recipient@example.com, recipient@example.com,
267 recipient@example.com, recipient@example.com, recipient@example.com,
268 recipient@example.com, recipient@example.com, recipient@example.com,
269 recipient@example.com, recipient@example.com, recipient@example.com,
270 recipient@example.com, recipient@example.com, recipient@example.com,
271 recipient@example.com, recipient@example.com, recipient@example.com,
272 recipient@example.com, recipient@example.com, recipient@example.com,
273 recipient@example.com, recipient@example.com, recipient@example.com,
274 recipient@example.com, recipient@example.com, recipient@example.com,
275 recipient@example.com, recipient@example.com, recipient@example.com,
276 recipient@example.com, recipient@example.com, recipient@example.com,
277 recipient@example.com, recipient@example.com, recipient@example.com,
278 recipient@example.com, recipient@example.com, recipient@example.com,
279 recipient@example.com, recipient@example.com, recipient@example.com,
280 recipient@example.com, recipient@example.com, recipient@example.com,
281 recipient@example.com, recipient@example.com, recipient@example.com,
282 recipient@example.com, recipient@example.com, recipient@example.com,
283 recipient@example.com, recipient@example.com, recipient@example.com,
284 recipient@example.com, recipient@example.com, recipient@example.com,
285 recipient@example.com, recipient@example.com, recipient@example.com,
286 recipient@example.com, recipient@example.com, recipient@example.com,
287 recipient@example.com, recipient@example.com, recipient@example.com,
288 recipient@example.com, recipient@example.com, recipient@example.com,
289 recipient@example.com, recipient@example.com, recipient@example.com,
290 recipient@example.com, recipient@example.com, recipient@example.com,
291 recipient@example.com, recipient@example.com, recipient@example.com,
292 recipient@example.com, recipient@example.com, recipient@example.com,
293 recipient@example.com, recipient@example.com, recipient@example.com,
294 recipient@example.com, recipient@example.com, recipient@example.com,
295 recipient@example.com, recipient@example.com, recipient@example.com,
296 recipient@example.com, recipient@example.com, recipient@example.com,
297 recipient@example.com, recipient@example.com, recipient@example.com,
298 recipient@example.com, recipient@example.com, recipient@example.com,
299 recipient@example.com, recipient@example.com, recipient@example.com,
300 recipient@example.com, recipient@example.com, recipient@example.com,
301 recipient@example.com, recipient@example.com, recipient@example.com,
302 recipient@example.com, recipient@example.com, recipient@example.com,
303 recipient@example.com, recipient@example.com, recipient@example.com,
304 recipient@example.com, recipient@example.com, recipient@example.com,
305 recipient@example.com, recipient@example.com, recipient@example.com,
306 recipient@example.com, recipient@example.com, recipient@example.com,
307 recipient@example.com, recipient@example.com, recipient@example.com,
308 recipient@example.com, recipient@example.com, recipient@example.com,
309 recipient@example.com, recipient@example.com, recipient@example.com,
310 recipient@example.com, recipient@example.com, recipient@example.com,
311 recipient@example.com, recipient@example.com, recipient@example.com,
312 recipient@example.com, recipient@example.com, recipient@example.com,
313 recipient@example.com, recipient@example.com, recipient@example.com,
314 recipient@example.com, recipient@example.com, recipient@example.com,
315 recipient@example.com, recipient@example.com, recipient@example.com,
316 recipient@example.com, recipient@example.com, recipient@example.com,
317 recipient@example.com, recipient@example.com, recipient@example.com,
318 recipient@example.com, recipient@example.com, recipient@example.com,
319 recipient@example.com, recipient@example.com, recipient@example.com,
320 recipient@example.com, recipient@example.com, recipient@example.com,
321 recipient@example.com, recipient@example.com, recipient@example.com,
322 recipient@example.com, recipient@example.com, recipient@example.com,
323 recipient@example.com, recipient@example.com, recipient@example.com,
324 recipient@example.com, recipient@example.com, recipient@example.com,
325 recipient@example.com, recipient@example.com, recipient@example.com,
326 recipient@example.com, recipient@example.com, recipient@example.com,
327 recipient@example.com, recipient@example.com, recipient@example.com,
328 recipient@example.com, recipient@example.com, recipient@example.com,
329 recipient@example.com, recipient@example.com, recipient@example.com,
330 recipient@example.com, recipient@example.com, recipient@example.com,
331 recipient@example.com, recipient@example.com, recipient@example.com,
332 recipient@example.com, recipient@example.com, recipient@example.com,
333 recipient@example.com, recipient@example.com, recipient@example.com,
334 recipient@example.com, recipient@example.com, recipient@example.com,
335 recipient@example.com, recipient@example.com, recipient@example.com,
337 From: sender@example.com
338 Subject: very long header
339 Date: Wed, 4 Dec 2013 21:12:00 -0500
341 Content-Type: multipart/related; boundary="1"
344 Content-Type: multipart/alternative; boundary="2"
347 Content-Type: text/plain; charset="us-ascii"
355 Content-Type: text/plain; charset="us-ascii"
363 mhlist last
> $actual 2>&1
364 check
$expected $actual