diff options
author | Folker Bernitt <fbernitt@thoughtworks.com> | 2015-08-11 13:38:56 +0200 |
---|---|---|
committer | Folker Bernitt <fbernitt@thoughtworks.com> | 2015-08-11 13:38:56 +0200 |
commit | 68fdc62d4c2792fb7fdea90f1117cf6c6f1c5ffc (patch) | |
tree | ac958d48fcc9596f1f6d1d0112788e366cc51dab /src/leap | |
parent | 521b0621563aad45d2354ff86af698d3c3261fb6 (diff) |
[bug] Fix typo in content-transfer-encoding in walk.py.
The get_raw_docs method accesses header field content-transfer-encoding
using the string 'content-transfer-type' so the raw doc dict always ends
up with that value set to empty string.
Diffstat (limited to 'src/leap')
-rw-r--r-- | src/leap/mail/adaptors/tests/test_soledad_adaptor.py | 14 | ||||
-rw-r--r-- | src/leap/mail/walk.py | 2 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/leap/mail/adaptors/tests/test_soledad_adaptor.py b/src/leap/mail/adaptors/tests/test_soledad_adaptor.py index bdc2c48..0ddea30 100644 --- a/src/leap/mail/adaptors/tests/test_soledad_adaptor.py +++ b/src/leap/mail/adaptors/tests/test_soledad_adaptor.py @@ -28,6 +28,9 @@ from leap.mail.adaptors.soledad import SoledadIndexMixin from leap.mail.adaptors.soledad import SoledadMailAdaptor from leap.mail.tests.common import SoledadTestMixin +from email.MIMEMultipart import MIMEMultipart +from email.mime.text import MIMEText + # DEBUG # import logging # logging.basicConfig(level=logging.DEBUG) @@ -330,6 +333,17 @@ class SoledadMailAdaptorTestCase(SoledadTestMixin): self.assertEqual(msg.wrapper.hdoc.subject, subject) self.assertEqual(msg.wrapper.cdocs[1].phash, phash) + def test_get_msg_from_string_multipart(self): + msg = MIMEMultipart() + msg['Subject'] = 'Test multipart mail' + msg.attach(MIMEText(u'a utf8 message', _charset='utf-8')) + adaptor = self.get_adaptor() + + msg = adaptor.get_msg_from_string(TestMessageClass, msg.as_string()) + + self.assertEqual('base64', msg.wrapper.cdocs[1].content_transfer_encoding) + self.assertEqual('YSB1dGY4IG1lc3NhZ2U=\n', msg.wrapper.cdocs[1].raw) + def test_get_msg_from_docs(self): adaptor = self.get_adaptor() mdoc = dict( diff --git a/src/leap/mail/walk.py b/src/leap/mail/walk.py index f613309..1c74366 100644 --- a/src/leap/mail/walk.py +++ b/src/leap/mail/walk.py @@ -99,7 +99,7 @@ def get_raw_docs(msg, parts): "content-type": headers.get( 'content-type', ''), "content-transfer-encoding": headers.get( - 'content-transfer-type', '') + 'content-transfer-encoding', '') } for payload, headers in get_payloads(msg) if not isinstance(payload, list)) |