1010except os .error :
1111 pass
1212
13-
13+ FROM_ = "From [email protected] Sat Jul 24 13:43:35 2004 \n " 1414DUMMY_MESSAGE = """\
1515161617+ Subject: Simple Test
1718
1819This is a dummy message.
1920"""
2021
21-
2222class MaildirTestCase (unittest .TestCase ):
2323
2424 def setUp (self ):
@@ -38,7 +38,7 @@ def tearDown(self):
3838 os .rmdir (os .path .join (self ._dir , "new" ))
3939 os .rmdir (self ._dir )
4040
41- def createMessage (self , dir ):
41+ def createMessage (self , dir , mbox = False ):
4242 t = int (time .time () % 1000000 )
4343 pid = self ._counter
4444 self ._counter += 1
@@ -47,6 +47,8 @@ def createMessage(self, dir):
4747 newname = os .path .join (self ._dir , dir , filename )
4848 fp = open (tmpname , "w" )
4949 self ._msgfiles .append (tmpname )
50+ if mbox :
51+ fp .write (FROM_ )
5052 fp .write (DUMMY_MESSAGE )
5153 fp .close ()
5254 if hasattr (os , "link" ):
@@ -56,6 +58,7 @@ def createMessage(self, dir):
5658 fp .write (DUMMY_MESSAGE )
5759 fp .close ()
5860 self ._msgfiles .append (newname )
61+ return tmpname
5962
6063 def test_empty_maildir (self ):
6164 """Test an empty maildir mailbox"""
@@ -93,6 +96,18 @@ def test_nonempty_maildir_both(self):
9396 self .assert_ (self .mbox .next () is None )
9497 self .assert_ (self .mbox .next () is None )
9598
99+ def test_unix_mbox (self ):
100+ ### should be better!
101+ import email .Parser
102+ fname = self .createMessage ("cur" , True )
103+ n = 0
104+ for msg in mailbox .PortableUnixMailbox (open (fname ),
105+ email .Parser .Parser ().parse ):
106+ n += 1
107+ self .assertEqual (msg ["subject" ], "Simple Test" )
108+ self .assertEqual (len (str (msg )), len (FROM_ )+ len (DUMMY_MESSAGE ))
109+ self .assertEqual (n , 1 )
110+
96111 # XXX We still need more tests!
97112
98113
0 commit comments