adding date Header to email devel
authorSandro Knauß <knauss@netzguerilla.net>
Wed, 21 Mar 2012 17:30:16 +0100
branchdevel
changeset 235 c5d8384caf68
parent 234 08fcc2b6df99
child 236 63662db5ff25
adding date Header to email
iro/model/message.py
iro/tests/smtp.py
--- a/iro/model/message.py	Wed Mar 21 17:24:46 2012 +0100
+++ b/iro/model/message.py	Wed Mar 21 17:30:16 2012 +0100
@@ -2,6 +2,7 @@
 
 from email.mime.text import MIMEText
 from email.header import Header
+from email.Utils import formatdate
 
 class Message:
     def __init__(self,content, typ="Message"):
@@ -55,9 +56,10 @@
 
 class Mail(Message):
     def __init__(self, subject, body, frm):
-        con=MIMEText(body.encode("utf-8"), _charset='utf-8')
-        sub=Header(subject.encode('utf-8'), 'utf-8')
-        con['Subject']=sub
+        con = MIMEText(body.encode("utf-8"), _charset='utf-8')
+        sub = Header(subject.encode('utf-8'), 'utf-8')
+        con['Subject'] = sub
+        con['Date'] = formatdate(localtime=True)
         self.subject = subject
         self.body = body
         self.frm=frm
--- a/iro/tests/smtp.py	Wed Mar 21 17:24:46 2012 +0100
+++ b/iro/tests/smtp.py	Wed Mar 21 17:30:16 2012 +0100
@@ -37,7 +37,9 @@
         ret.load(_c.items())
         return ret
 
-    def testSendMail(self):
+    @patch("iro.model.message.formatdate")
+    def testSendMail(self,mock_f):
+        mock_f.return_value="Wed, 21 Mar 2012 17:16:11 +0100"
         p=self.getSMTP()
         content = "sadfadfgwertsdgsdf\n\nsdfgaerasdfsad\nadfasdf"
         p.send("t@t.de", Mail("sub", content, None))
@@ -51,6 +53,7 @@
         self.assertEqual(msg.get_all("From"),["send@t.de"])
         self.assertEqual(toaddrs,["t@t.de"])
         self.assertEqual(msg.get_all("To"),["t@t.de"])
+        self.assertEqual(msg.get_all("Date"),["Wed, 21 Mar 2012 17:16:11 +0100"])
         self.assertEqual(decode_header(msg.get("Subject")),[("sub","utf-8")])
         self.assertEqual(base64.b64decode(msg.get_payload()),content)