summaryrefslogtreecommitdiff
path: root/py-fake-service/app/adapter/mail.py
diff options
context:
space:
mode:
authorAlexandre Pretto Nunes <anunes@thoughtworks.com>2014-08-14 15:16:56 -0300
committerAlexandre Pretto Nunes <anunes@thoughtworks.com>2014-08-14 15:19:46 -0300
commitdde0dc6bb735cebe946c6fd8c5d7c8cfd6028cc8 (patch)
treeca5282488b85467d4fb0ae16b853611bc23422c6 /py-fake-service/app/adapter/mail.py
parent5b1ad127f11519f519f75be9148d17d4e034b1e6 (diff)
Enable fake server to correctly serve html emails
Diffstat (limited to 'py-fake-service/app/adapter/mail.py')
-rw-r--r--py-fake-service/app/adapter/mail.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/py-fake-service/app/adapter/mail.py b/py-fake-service/app/adapter/mail.py
index 1cbe065f..5e0483fc 100644
--- a/py-fake-service/app/adapter/mail.py
+++ b/py-fake-service/app/adapter/mail.py
@@ -18,7 +18,7 @@ class Mail:
mail.draft_reply_for = mail_json.get('draft_reply_for', 0)
return mail
-
+
def __init__(self, mbox_mail=None, ident=None):
if mbox_mail:
self.header = self._get_headers(mbox_mail)
@@ -31,11 +31,14 @@ class Mail:
def _get_body(self, message):
if message.is_multipart():
- boundary = message.get_boundary()
- start_boundary = '--'+boundary
- join_boundary = start_boundary+'\n'
+ boundary = '--{boundary}'.format(boundary= message.get_boundary().strip())
+ body_parts = [x.as_string() for x in message.get_payload()]
+
+ body = boundary + '\n'
+ body += '{boundary}\n'.format(boundary=boundary).join(body_parts)
+ body += '{boundary}--\n'.format(boundary=boundary)
- return join_boundary + join_boundary.join([x.as_string() for x in message.get_payload()]) + start_boundary+ '--'
+ return body
else:
return message.get_payload()
@@ -60,7 +63,7 @@ class Mail:
def _get_tags(self, mbox_mail):
return mbox_mail.get('X-TW-Pixelated-Tags').split(', ')
-
+
@property
def subject(self):
return self.header['subject']