[Python-checkins] python/dist/src/Lib/test test_mimetools.py,1.3,1.4

doerwalter@users.sourceforge.net doerwalter@users.sourceforge.net
Thu, 22 May 2003 10:32:42 -0700


Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1:/tmp/cvs-serv13285/Lib/test

Modified Files:
	test_mimetools.py 
Log Message:
Port test_mimetools.py to PyUnit and add various tests.

>From SF patch #736962.


Index: test_mimetools.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_mimetools.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** test_mimetools.py	23 Jul 2002 19:03:57 -0000	1.3
--- test_mimetools.py	22 May 2003 17:32:40 -0000	1.4
***************
*** 1,18 ****
! from test.test_support import TestFailed
! import mimetools
  
- import string,StringIO
- start = string.ascii_letters + "=" + string.digits + "\n"
- for enc in ['7bit','8bit','base64','quoted-printable']:
-     print enc,
-     i = StringIO.StringIO(start)
-     o = StringIO.StringIO()
-     mimetools.encode(i,o,enc)
-     i = StringIO.StringIO(o.getvalue())
-     o = StringIO.StringIO()
-     mimetools.decode(i,o,enc)
-     if o.getvalue()==start:
-         print "PASS"
-     else:
-         print "FAIL"
-         print o.getvalue()
--- 1,51 ----
! import unittest
! from test import test_support
! 
! import string, StringIO, mimetools, sets
! 
! msgtext1 = mimetools.Message(StringIO.StringIO(
! """Content-Type: text/plain; charset=iso-8859-1; format=flowed
! Content-Transfer-Encoding: 8bit
! 
! Foo!
! """))
! 
! class MimeToolsTest(unittest.TestCase):
! 
!     def test_decodeencode(self):
!         start = string.ascii_letters + "=" + string.digits + "\n"
!         for enc in ['7bit','8bit','base64','quoted-printable',
!                     'uuencode', 'x-uuencode', 'uue', 'x-uue']:
!             i = StringIO.StringIO(start)
!             o = StringIO.StringIO()
!             mimetools.encode(i, o, enc)
!             i = StringIO.StringIO(o.getvalue())
!             o = StringIO.StringIO()
!             mimetools.decode(i, o, enc)
!             self.assertEqual(o.getvalue(), start)
! 
!     def test_boundary(self):
!         s = sets.Set([""])
!         for i in xrange(100):
!             nb = mimetools.choose_boundary()
!             self.assert_(nb not in s)
!             s.add(nb)
! 
!     def test_message(self):
!         msg = mimetools.Message(StringIO.StringIO(msgtext1))
!         self.assertEqual(msg.gettype(), "text/plain")
!         self.assertEqual(msg.getmaintype(), "text")
!         self.assertEqual(msg.getsubtype(), "plain")
!         self.assertEqual(msg.getplist(), ["charset=iso-8859-1", "format=flowed"])
!         self.assertEqual(msg.getparamnames(), ["charset", "format"])
!         self.assertEqual(msg.getparam("charset"), "iso-8859-1")
!         self.assertEqual(msg.getparam("format"), "flowed")
!         self.assertEqual(msg.getparam("spam"), None)
!         self.assertEqual(msg.getencoding(), "8bit")
! 
! def test_main():
!     test_support.run_unittest(MimeToolsTest)
! 
! if __name__=="__main__":
!     test_main()