Commit 27c1914c authored by R. David Murray's avatar R. David Murray

Merged revisions 87415 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r87415 | r.david.murray | 2010-12-21 13:07:59 -0500 (Tue, 21 Dec 2010) | 4 lines

  Fix the change made for issue 1243654.

  Surprisingly, it turns out there was no test that exercised this code path.
........
parent 08d3c1e7
...@@ -186,7 +186,8 @@ class Generator: ...@@ -186,7 +186,8 @@ class Generator:
# Create a boundary that doesn't appear in any of the # Create a boundary that doesn't appear in any of the
# message texts. # message texts.
alltext = NL.join(msgtexts) alltext = NL.join(msgtexts)
msg.set_boundary(self._make_boundary(alltext)) boundary = _make_boundary(alltext)
msg.set_boundary(boundary)
# If there's a preamble, write it out, with a trailing CRLF # If there's a preamble, write it out, with a trailing CRLF
if msg.preamble is not None: if msg.preamble is not None:
print(msg.preamble, file=self._fp) print(msg.preamble, file=self._fp)
......
...@@ -178,6 +178,17 @@ class TestMessageAPI(TestEmailBase): ...@@ -178,6 +178,17 @@ class TestMessageAPI(TestEmailBase):
self.assertRaises(errors.HeaderParseError, self.assertRaises(errors.HeaderParseError,
msg.set_boundary, 'BOUNDARY') msg.set_boundary, 'BOUNDARY')
def test_make_boundary(self):
msg = MIMEMultipart('form-data')
# Note that when the boundary gets created is an implementation
# detail and might change.
self.assertEqual(msg.items()[0][1], 'multipart/form-data')
# Trigger creation of boundary
msg.as_string()
self.assertEqual(msg.items()[0][1][:33],
'multipart/form-data; boundary="==')
# XXX: there ought to be tests of the uniqueness of the boundary, too.
def test_message_rfc822_only(self): def test_message_rfc822_only(self):
# Issue 7970: message/rfc822 not in multipart parsed by # Issue 7970: message/rfc822 not in multipart parsed by
# HeaderParser caused an exception when flattened. # HeaderParser caused an exception when flattened.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment