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
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
)
mimetools
.encode(i
, o
, enc
)
i
= StringIO
.StringIO(o
.getvalue())
mimetools
.decode(i
, o
, enc
)
self
.assertEqual(o
.getvalue(), start
)
nb
= mimetools
.choose_boundary()
self
.assert_(nb
not in s
)
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")
test_support
.run_unittest(MimeToolsTest
)