12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- from test import test_support
- mimetools = test_support.import_module('mimetools', deprecated=True)
- multifile = test_support.import_module('multifile', deprecated=True)
- import cStringIO
- msg = """Mime-Version: 1.0
- Content-Type: multipart/mixed;
- boundary="=====================_590453667==_"
- X-OriginalArrivalTime: 05 Feb 2002 03:43:23.0310 (UTC) FILETIME=[42D88CE0:01C1ADF7]
- --=====================_590453667==_
- Content-Type: multipart/alternative;
- boundary="=====================_590453677==_.ALT"
- --=====================_590453677==_.ALT
- Content-Type: text/plain; charset="us-ascii"; format=flowed
- test A
- --=====================_590453677==_.ALT
- Content-Type: text/html; charset="us-ascii"
- <html>
- <b>test B</font></b></html>
- --=====================_590453677==_.ALT--
- --=====================_590453667==_
- Content-Type: text/plain; charset="us-ascii"
- Content-Disposition: attachment; filename="att.txt"
- Attached Content.
- Attached Content.
- Attached Content.
- Attached Content.
- --=====================_590453667==_--
- """
- def getMIMEMsg(mf):
- global boundaries, linecount
- msg = mimetools.Message(mf)
- #print "TYPE: %s" % msg.gettype()
- if msg.getmaintype() == 'multipart':
- boundary = msg.getparam("boundary")
- boundaries += 1
- mf.push(boundary)
- while mf.next():
- getMIMEMsg(mf)
- mf.pop()
- else:
- lines = mf.readlines()
- linecount += len(lines)
- def test_main():
- global boundaries, linecount
- boundaries = 0
- linecount = 0
- f = cStringIO.StringIO(msg)
- getMIMEMsg(multifile.MultiFile(f))
- assert boundaries == 2
- assert linecount == 9
- if __name__ == '__main__':
- test_main()
|