~malept/ubuntu/lucid/python2.6/dev-dependency-fix

« back to all changes in this revision

Viewing changes to Lib/test/test_mimetools.py

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-02-13 12:51:00 UTC
  • Revision ID: james.westby@ubuntu.com-20090213125100-uufgcb9yeqzujpqw
Tags: upstream-2.6.1
ImportĀ upstreamĀ versionĀ 2.6.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
import unittest
 
2
from test import test_support
 
3
 
 
4
import string
 
5
import StringIO
 
6
 
 
7
mimetools = test_support.import_module("mimetools", deprecated=True)
 
8
 
 
9
msgtext1 = mimetools.Message(StringIO.StringIO(
 
10
"""Content-Type: text/plain; charset=iso-8859-1; format=flowed
 
11
Content-Transfer-Encoding: 8bit
 
12
 
 
13
Foo!
 
14
"""))
 
15
 
 
16
class MimeToolsTest(unittest.TestCase):
 
17
 
 
18
    def test_decodeencode(self):
 
19
        start = string.ascii_letters + "=" + string.digits + "\n"
 
20
        for enc in ['7bit','8bit','base64','quoted-printable',
 
21
                    'uuencode', 'x-uuencode', 'uue', 'x-uue']:
 
22
            i = StringIO.StringIO(start)
 
23
            o = StringIO.StringIO()
 
24
            mimetools.encode(i, o, enc)
 
25
            i = StringIO.StringIO(o.getvalue())
 
26
            o = StringIO.StringIO()
 
27
            mimetools.decode(i, o, enc)
 
28
            self.assertEqual(o.getvalue(), start)
 
29
 
 
30
    def test_boundary(self):
 
31
        s = set([""])
 
32
        for i in xrange(100):
 
33
            nb = mimetools.choose_boundary()
 
34
            self.assert_(nb not in s)
 
35
            s.add(nb)
 
36
 
 
37
    def test_message(self):
 
38
        msg = mimetools.Message(StringIO.StringIO(msgtext1))
 
39
        self.assertEqual(msg.gettype(), "text/plain")
 
40
        self.assertEqual(msg.getmaintype(), "text")
 
41
        self.assertEqual(msg.getsubtype(), "plain")
 
42
        self.assertEqual(msg.getplist(), ["charset=iso-8859-1", "format=flowed"])
 
43
        self.assertEqual(msg.getparamnames(), ["charset", "format"])
 
44
        self.assertEqual(msg.getparam("charset"), "iso-8859-1")
 
45
        self.assertEqual(msg.getparam("format"), "flowed")
 
46
        self.assertEqual(msg.getparam("spam"), None)
 
47
        self.assertEqual(msg.getencoding(), "8bit")
 
48
 
 
49
def test_main():
 
50
    test_support.run_unittest(MimeToolsTest)
 
51
 
 
52
if __name__=="__main__":
 
53
    test_main()