diff options
author | Andrew M. Kuchling <amk@amk.ca> | 2007-07-14 21:56:19 (GMT) |
---|---|---|
committer | Andrew M. Kuchling <amk@amk.ca> | 2007-07-14 21:56:19 (GMT) |
commit | 2b09ef0c6d8db26ff6c6c10d94130936b11783da (patch) | |
tree | 916681a97a36efe246bc07a86aa2ec91551cf6c2 /Lib/test | |
parent | 6111ce36670d79055d0e357acf246ded39f84529 (diff) | |
download | cpython-2b09ef0c6d8db26ff6c6c10d94130936b11783da.zip cpython-2b09ef0c6d8db26ff6c6c10d94130936b11783da.tar.gz cpython-2b09ef0c6d8db26ff6c6c10d94130936b11783da.tar.bz2 |
Avoid exception if there's a stray directory inside a Maildir folder.
The Maildir specification doesn't seem to say anything about this
situation, and it can happen if you're keeping a Maildir mailbox in
Subversion (.svn directories) or some similar system. The patch just
ignores directories in the cur/, new/, tmp/ folders.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_mailbox.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Lib/test/test_mailbox.py b/Lib/test/test_mailbox.py index 175c291..684aeb2 100644 --- a/Lib/test/test_mailbox.py +++ b/Lib/test/test_mailbox.py @@ -686,7 +686,18 @@ class TestMaildir(TestMailbox): folder1_alias = box.get_folder('folder1') self.assert_(folder1_alias._factory is dummy_factory) - + def test_directory_in_folder (self): + # Test that mailboxes still work if there's a stray extra directory + # in a folder. + for i in range(10): + self._box.add(mailbox.Message(_sample_message)) + + # Create a stray directory + os.mkdir(os.path.join(self._path, 'cur', 'stray-dir')) + + # Check that looping still works with the directory present. + for msg in self._box: + pass class _TestMboxMMDF(TestMailbox): |