diff options
| author | Petri Lehtinen <petri@digip.org> | 2012-09-25 18:57:59 (GMT) |
|---|---|---|
| committer | Petri Lehtinen <petri@digip.org> | 2012-09-25 19:01:23 (GMT) |
| commit | a4fd0dc574ee61c08abc3b0e04d3eebe59883d1e (patch) | |
| tree | 547126ffd0500310a2fa6871e6eee7cef5e6814c /Lib/test/test_mailbox.py | |
| parent | ec2807c4359941bf0b936aa23ddcadcc115918dc (diff) | |
| download | cpython-a4fd0dc574ee61c08abc3b0e04d3eebe59883d1e.zip cpython-a4fd0dc574ee61c08abc3b0e04d3eebe59883d1e.tar.gz cpython-a4fd0dc574ee61c08abc3b0e04d3eebe59883d1e.tar.bz2 | |
#15222: Insert blank line after each message in mbox mailboxes
Diffstat (limited to 'Lib/test/test_mailbox.py')
| -rw-r--r-- | Lib/test/test_mailbox.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index 422b5fe..84c6cdd 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -1003,6 +1003,29 @@ class TestMbox(_TestMboxMMDF, unittest.TestCase): perms = st.st_mode self.assertFalse((perms & 0111)) # Execute bits should all be off. + def test_terminating_newline(self): + message = email.message.Message() + message['From'] = 'john@example.com' + message.set_payload('No newline at the end') + i = self._box.add(message) + + # A newline should have been appended to the payload + message = self._box.get(i) + self.assertEqual(message.get_payload(), 'No newline at the end\n') + + def test_message_separator(self): + # Check there's always a single blank line after each message + self._box.add('From: foo\n\n0') # No newline at the end + with open(self._path) as f: + data = f.read() + self.assertEqual(data[-3:], '0\n\n') + + self._box.add('From: foo\n\n0\n') # Newline at the end + with open(self._path) as f: + data = f.read() + self.assertEqual(data[-3:], '0\n\n') + + class TestMMDF(_TestMboxMMDF, unittest.TestCase): _factory = lambda self, path, factory=None: mailbox.MMDF(path, factory) |
