]> granicus.if.org Git - python/commitdiff
Add two new tests of recent email package fixes: CRLF line endings,
authorBarry Warsaw <barry@python.org>
Sun, 19 May 2002 23:52:54 +0000 (23:52 +0000)
committerBarry Warsaw <barry@python.org>
Sun, 19 May 2002 23:52:54 +0000 (23:52 +0000)
and explicit maxlinelen arguments to the Header constructor.

Lib/test/test_email.py

index 5d6adc001f84c4fbad1e015a9d45840d1502a595..c4b185a7533e0fb4e361459eacd157d592583f08 100644 (file)
@@ -1323,6 +1323,18 @@ Here's the message body
         eq(msg['message-id'], 'spam')
         eq(msg.get_payload(), "Here's the message body\n")
 
+    def test_crlf_separation(self):
+        eq = self.assertEqual
+        fp = openfile('msg_26.txt')
+        p = Parser()
+        msg = p.parse(fp)
+        eq(len(msg.get_payload()), 2)
+        part1 = msg.get_payload(0)
+        eq(part1.get_type(), 'text/plain')
+        eq(part1.get_payload(), 'Simple email with attachment.\r\n\r\n')
+        part2 = msg.get_payload(1)
+        eq(part2.get_type(), 'application/riscos')
+
 
 \f
 class TestBase64(unittest.TestCase):
@@ -1573,6 +1585,20 @@ class TestHeader(unittest.TestCase):
            [(g_head, "iso-8859-1"), (cz_head, "iso-8859-2"),
             (utf8_head, "utf-8")])
 
+    def test_explicit_maxlinelen(self):
+        eq = self.assertEqual
+        hstr = 'A very long line that must get split to something other than at the 76th character boundary to test the non-default behavior'
+        h = Header(hstr)
+        eq(h.encode(), '''\
+A very long line that must get split to something other than at the 76th cha
+ racter boundary to test the non-default behavior''')
+        h = Header(hstr, header_name='Subject')
+        eq(h.encode(), '''\
+A very long line that must get split to something other than at the
+  76th character boundary to test the non-default behavior''')
+        h = Header(hstr, maxlinelen=1024, header_name='Subject')
+        eq(h.encode(), hstr)
+
 
 \f
 def _testclasses():