Move setting of ioready 'wait' earlier in call chain, to
[python/dscho.git] / Lib / test / test_multifile.py
blobcd89e5e6c09b8521dc08a3bf11c26affe70a3291
1 import mimetools
2 import multifile
3 import cStringIO
5 msg = """Mime-Version: 1.0
6 Content-Type: multipart/mixed;
7 boundary="=====================_590453667==_"
8 X-OriginalArrivalTime: 05 Feb 2002 03:43:23.0310 (UTC) FILETIME=[42D88CE0:01C1ADF7]
10 --=====================_590453667==_
11 Content-Type: multipart/alternative;
12 boundary="=====================_590453677==_.ALT"
14 --=====================_590453677==_.ALT
15 Content-Type: text/plain; charset="us-ascii"; format=flowed
17 test A
18 --=====================_590453677==_.ALT
19 Content-Type: text/html; charset="us-ascii"
21 <html>
22 <b>test B</font></b></html>
24 --=====================_590453677==_.ALT--
26 --=====================_590453667==_
27 Content-Type: text/plain; charset="us-ascii"
28 Content-Disposition: attachment; filename="att.txt"
30 Attached Content.
31 Attached Content.
32 Attached Content.
33 Attached Content.
35 --=====================_590453667==_--
37 """
39 boundaries = 0
40 linecount = 0
42 def getMIMEMsg(mf):
43 global boundaries, linecount
44 msg = mimetools.Message(mf)
46 #print "TYPE: %s" % msg.gettype()
47 if msg.getmaintype() == 'multipart':
48 boundary = msg.getparam("boundary")
49 boundaries += 1
51 mf.push(boundary)
52 while mf.next():
53 getMIMEMsg(mf)
54 mf.pop()
55 else:
56 lines = mf.readlines()
57 linecount += len(lines)
59 def test_main():
60 f = cStringIO.StringIO(msg)
61 getMIMEMsg(multifile.MultiFile(f))
62 assert boundaries == 2
63 assert linecount == 9
65 if __name__ == '__main__':
66 test_main()