Mercurial > cpython-lru_cache-weakref
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 |
| 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() |
