annotate Lib/test/test_multifile.py @ 54294:dba767bc3155 legacy-trunk

remove mention of old ctypes version
author Benjamin Peterson <benjamin@python.org>
date Sat, 23 May 2009 20:59:09 +0000
parents 2f14518f300b
children 30086aa33123 7caf54ce529e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
46935
2f14518f300b Deprecate the multifile module as per PEP 4.
Brett Cannon <bcannon@gmail.com>
parents: 32921
diff changeset
1 from test import test_support
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
2 import mimetools
46935
2f14518f300b Deprecate the multifile module as per PEP 4.
Brett Cannon <bcannon@gmail.com>
parents: 32921
diff changeset
3 multifile = test_support.import_module('multifile', deprecated=True)
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
4 import cStringIO
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
5
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
6 msg = """Mime-Version: 1.0
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
7 Content-Type: multipart/mixed;
25479
bbf8cf5ee9f9 Whitespace normalization (get rid of tabs).
Guido van Rossum <guido@python.org>
parents: 25337
diff changeset
8 boundary="=====================_590453667==_"
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
9 X-OriginalArrivalTime: 05 Feb 2002 03:43:23.0310 (UTC) FILETIME=[42D88CE0:01C1ADF7]
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
10
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
11 --=====================_590453667==_
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
12 Content-Type: multipart/alternative;
25479
bbf8cf5ee9f9 Whitespace normalization (get rid of tabs).
Guido van Rossum <guido@python.org>
parents: 25337
diff changeset
13 boundary="=====================_590453677==_.ALT"
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
14
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
15 --=====================_590453677==_.ALT
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
16 Content-Type: text/plain; charset="us-ascii"; format=flowed
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
17
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
18 test A
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
19 --=====================_590453677==_.ALT
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
20 Content-Type: text/html; charset="us-ascii"
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
21
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
22 <html>
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
23 <b>test B</font></b></html>
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
24
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
25 --=====================_590453677==_.ALT--
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
26
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
27 --=====================_590453667==_
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
28 Content-Type: text/plain; charset="us-ascii"
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
29 Content-Disposition: attachment; filename="att.txt"
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
30
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
31 Attached Content.
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
32 Attached Content.
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
33 Attached Content.
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
34 Attached Content.
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
35
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
36 --=====================_590453667==_--
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
37
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
38 """
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
39
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
40 def getMIMEMsg(mf):
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
41 global boundaries, linecount
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
42 msg = mimetools.Message(mf)
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
43
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
44 #print "TYPE: %s" % msg.gettype()
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
45 if msg.getmaintype() == 'multipart':
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
46 boundary = msg.getparam("boundary")
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
47 boundaries += 1
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
48
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
49 mf.push(boundary)
25479
bbf8cf5ee9f9 Whitespace normalization (get rid of tabs).
Guido van Rossum <guido@python.org>
parents: 25337
diff changeset
50 while mf.next():
bbf8cf5ee9f9 Whitespace normalization (get rid of tabs).
Guido van Rossum <guido@python.org>
parents: 25337
diff changeset
51 getMIMEMsg(mf)
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
52 mf.pop()
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
53 else:
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
54 lines = mf.readlines()
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
55 linecount += len(lines)
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
56
27912
c5ebacbba0be Actually run these tests from regrtest.py.
Neal Norwitz <nnorwitz@gmail.com>
parents: 25479
diff changeset
57 def test_main():
32921
3824fa29be49 More "noone expected this to run twice"ness removal.
Michael W. Hudson <mwh@python.net>
parents: 27912
diff changeset
58 global boundaries, linecount
3824fa29be49 More "noone expected this to run twice"ness removal.
Michael W. Hudson <mwh@python.net>
parents: 27912
diff changeset
59 boundaries = 0
3824fa29be49 More "noone expected this to run twice"ness removal.
Michael W. Hudson <mwh@python.net>
parents: 27912
diff changeset
60 linecount = 0
25337
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
61 f = cStringIO.StringIO(msg)
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
62 getMIMEMsg(multifile.MultiFile(f))
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
63 assert boundaries == 2
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
64 assert linecount == 9
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
65
b529ac2f9ab6 Back out multifile.py 1.19 and 1.20. Fixes #514676.
Martin v. Löwis <martin@v.loewis.de>
parents:
diff changeset
66 if __name__ == '__main__':
27912
c5ebacbba0be Actually run these tests from regrtest.py.
Neal Norwitz <nnorwitz@gmail.com>
parents: 25479
diff changeset
67 test_main()