Mercurial > p > roundup > code
annotate test/test_mailgw_roundupmessage.py @ 8566:e4191aa7b402 default tip
doc: issue2551415 correct doc for change input->input_payload
in 2.5 the rest interface changed a variable name from input to
input_payload. An earlier commit changed the rest docs. This commit
adds an item for it to the upgrading 2.4.0->2.5.0 section. Also cross
reference added to the rest docs with the updated examples.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Thu, 09 Apr 2026 00:19:06 -0400 |
| parents | cacef71b3a54 |
| children |
| rev | line source |
|---|---|
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
1 # -*- coding: utf-8 -*- |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
2 import email |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
3 import textwrap |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
4 from unittest import TestCase |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
5 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
6 from roundup.mailgw import RoundupMessage |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
7 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
8 PART_TYPES = { |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
9 'multipart/signed': ' boundary="boundary-{indent}";\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
10 'multipart/mixed': ' boundary="boundary-{indent}";\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
11 'multipart/alternative': ' boundary="boundary-{indent}";\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
12 'text/plain': ' name="foo.txt"\n\nfoo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
13 'text/plain_2': ' name="foo2.txt"\n\nfoo2\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
14 'text/plain_3': ' name="foo3.txt"\n\nfoo3\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
15 'text/html': ' name="foo.html"\n\n<html>foo</html>\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
16 'application/pgp-signature': ' name="foo.gpg"\nfoo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
17 'application/pdf': ' name="foo.pdf"\nfoo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
18 'application/pdf_2': ' name="foo2.pdf"\nfoo2\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
19 'message/rfc822': '\nSubject: foo\n\nfoo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
20 } |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
21 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
22 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
23 def message_from_string(msg): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
24 return email.message_from_string( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
25 textwrap.dedent(msg).lstrip(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
26 RoundupMessage) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
27 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
28 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
29 def construct_message(spec, depth=0): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
30 parts = [] |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
31 for content_type in spec: |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
32 if isinstance(content_type, list): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
33 parts.extend(construct_message(content_type, depth=(depth + 1))) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
34 parts.append('\n--boundary-{0}--\n'.format(depth + 1)) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
35 else: |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
36 if depth > 0: |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
37 parts.append('\n--boundary-{0}\n'.format(depth)) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
38 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
39 parts.append( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
40 'Content-Type: {0};\n'.format(content_type.split('_')[0])) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
41 parts.append(PART_TYPES[content_type].format(indent=(depth + 1))) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
42 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
43 if depth == 0: |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
44 return email.message_from_string(''.join(parts), RoundupMessage) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
45 else: |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
46 return parts |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
47 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
48 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
49 class FlattenRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
50 def test_flatten_with_from(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
51 msg_string = textwrap.dedent(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
52 From: Some User <some.user@example.com> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
53 To: issue_tracker@example.com |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
54 Message-Id: <dummy_test_message_id> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
55 Subject: Test line start with from |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
56 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
57 From here to there! |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
58 """).lstrip() |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
59 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
60 msg = email.message_from_string(msg_string, RoundupMessage) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
61 self.assertEqual(msg.flatten(), msg_string) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
62 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
63 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
64 class HeaderRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
65 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
66 Content-Type: text/plain; |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
67 charset="iso-8859-1" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
68 From: =?utf8?b?SOKCrGxsbw==?= <hello@example.com> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
69 To: Issue Tracker <issue_tracker@example.com> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
70 Cc: =?utf8?b?SOKCrGxsbw==?= <hello@example.com>, |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
71 Some User <some.user@example.com> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
72 Message-Id: <dummy_test_message_id> |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
73 Subject: [issue] Testing... |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
74 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
75 This is a test submission of a new issue. |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
76 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
77 |
|
5761
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
78 # From line has a null/empty encoding spec |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
79 # to trigger failure in mailgw.py:RoundupMessage::_decode_header |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
80 bad_msg_utf8 = message_from_string(""" |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
81 Content-Type: text/plain; |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
82 charset="iso-8859-1" |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
83 From: =??b?SOKCrGxsbw=====?= <hello@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
84 To: Issue Tracker <issue_tracker@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
85 Cc: =?utf8?b?SOKCrGxsbw==?= <hello@example.com>, |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
86 Some User <some.user@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
87 Message-Id: <dummy_test_message_id> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
88 Subject: [issue] Testing... |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
89 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
90 This is a test submission of a new issue. |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
91 """) |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
92 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
93 bad_msg_iso_8859_1 = message_from_string(""" |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
94 Content-Type: text/plain; |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
95 charset="iso-8859-1" |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
96 From: =??q?\x80SOKCrGxsbw=====?= <hello@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
97 To: Issue Tracker <issue_tracker@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
98 Cc: =?utf8?b?SOKCrGxsbw==?= <hello@example.com>, |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
99 Some User <some.user@example.com> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
100 Message-Id: <dummy_test_message_id> |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
101 Subject: [issue] Testing... |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
102 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
103 This is a test submission of a new issue. |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
104 """) |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
105 |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
106 def test_get_plain_header(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
107 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
108 self.msg.get_header('to'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
109 'Issue Tracker <issue_tracker@example.com>') |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
110 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
111 def test_get_encoded_header(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
112 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
113 self.msg.get_header('from'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
114 'H€llo <hello@example.com>') |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
115 |
|
5761
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
116 # issue2551008 null encoding causes crash. |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
117 self.assertEqual( |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
118 self.bad_msg_utf8.get_header('from'), |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
119 'H€llo <hello@example.com>') |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
120 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
121 # the decoded value is not what the user wanted, |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
122 # but they should have created a valid header |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
123 # if they wanted the right outcome... |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
124 self.assertIn( |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
125 self.bad_msg_iso_8859_1.get_header('from'), |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
126 ( |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
127 '\xc2\x80SOKCrGxsbw===== <hello@example.com>', # python 2 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
128 '\x80SOKCrGxsbw===== <hello@example.com>' # python 3 |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
129 )) |
|
cacef71b3a54
working branch for fixing https://issues.roundup-tracker.org/issue2551008
John Rouillard <rouilj@ieee.org>
parents:
5547
diff
changeset
|
130 |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
131 def test_get_address_list(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
132 self.assertEqual(self.msg.get_address_list('cc'), [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
133 ('H€llo', 'hello@example.com'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
134 ('Some User', 'some.user@example.com'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
135 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
136 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
137 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
138 class BodyRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
139 def test_get_body_iso_8859_1(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
140 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
141 Content-Type: text/plain; charset="iso-8859-1" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
142 Content-Transfer-Encoding: quoted-printable |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
143 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
144 A message with encoding (encoded oe =F6) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
145 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
146 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
147 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
148 msg.get_body(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
149 'A message with encoding (encoded oe ö)\n') |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
150 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
151 def test_get_body_utf_8(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
152 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
153 Content-Type: text/plain; charset="utf-8" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
154 Content-Transfer-Encoding: quoted-printable |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
155 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
156 A message with encoding (encoded oe =C3=B6) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
157 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
158 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
159 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
160 msg.get_body(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
161 'A message with encoding (encoded oe ö)\n') |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
162 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
163 def test_get_body_base64(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
164 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
165 Content-Type: application/octet-stream |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
166 Content-Disposition: attachment; filename="message.dat" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
167 Content-Transfer-Encoding: base64 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
168 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
169 dGVzdCBlbmNvZGVkIG1lc3NhZ2U= |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
170 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
171 |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
172 self.assertEqual(msg.get_body(), b'test encoded message') |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
173 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
174 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
175 class AsAttachmentRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
176 def test_text_plain(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
177 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
178 Content-Type: text/plain; charset="iso-8859-1 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
179 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
180 Plain text message |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
181 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
182 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
183 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
184 msg.as_attachment(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
185 (None, 'text/plain', 'Plain text message\n')) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
186 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
187 def test_octet_stream(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
188 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
189 Content-Type: application/octet-stream |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
190 Content-Disposition: attachment; filename="message.dat" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
191 Content-Transfer-Encoding: base64 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
192 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
193 dGVzdCBlbmNvZGVkIG1lc3NhZ2U= |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
194 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
195 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
196 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
197 msg.as_attachment(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
198 ('message.dat', 'application/octet-stream', |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
199 b'test encoded message')) |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
200 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
201 def test_rfc822(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
202 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
203 Content-Type: message/rfc822 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
204 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
205 Subject: foo |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
206 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
207 foo |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
208 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
209 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
210 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
211 msg.as_attachment(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
212 ('foo.eml', 'message/rfc822', 'Subject: foo\n\nfoo\n')) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
213 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
214 def test_rfc822_no_subject(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
215 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
216 Content-Type: message/rfc822 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
217 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
218 X-No-Headers: nope |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
219 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
220 foo |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
221 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
222 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
223 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
224 msg.as_attachment(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
225 (None, 'message/rfc822', 'X-No-Headers: nope\n\nfoo\n')) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
226 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
227 def test_rfc822_no_payload(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
228 msg = message_from_string("""\ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
229 Content-Type: message/rfc822 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
230 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
231 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
232 self.assertEqual( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
233 msg.as_attachment(), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
234 (None, 'message/rfc822', '\n')) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
235 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
236 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
237 class ExtractContentRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
238 def test_text_plain(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
239 msg = construct_message(['text/plain']) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
240 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
241 self.assertEqual(msg.extract_content(), ('foo\n', [], False)) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
242 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
243 def test_attached_text_plain(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
244 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
245 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
246 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
247 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
248 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
249 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
250 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
251 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
252 'foo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
253 [('foo.txt', 'text/plain', 'foo\n')], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
254 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
255 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
256 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
257 def test_multipart_mixed(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
258 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
259 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
260 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
261 'application/pdf', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
262 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
263 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
264 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
265 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
266 'foo\n', |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
267 [('foo.pdf', 'application/pdf', b'foo\n')], |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
268 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
269 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
270 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
271 def test_multipart_alternative(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
272 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
273 'multipart/alternative', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
274 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
275 'text/html', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
276 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
277 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
278 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
279 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
280 'foo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
281 [('foo.html', 'text/html', '<html>foo</html>\n')], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
282 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
283 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
284 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
285 def test_deep_multipart_alternative(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
286 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
287 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
288 'multipart/alternative', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
289 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
290 'application/pdf', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
291 'text/plain_2', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
292 'text/html', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
293 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
294 'multipart/alternative', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
295 'text/plain_3', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
296 'application/pdf_2', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
297 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
298 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
299 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
300 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
301 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
302 'foo2\n', [ |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
303 ('foo.pdf', 'application/pdf', b'foo\n'), |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
304 ('foo.txt', 'text/plain', 'foo\n'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
305 ('foo.html', 'text/html', '<html>foo</html>\n'), |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
306 ('foo3.txt', 'text/plain', 'foo3\n'), |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
307 ('foo2.pdf', 'application/pdf', b'foo2\n'), |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
308 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
309 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
310 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
311 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
312 def test_deep_multipart_alternative_ignore(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
313 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
314 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
315 'multipart/alternative', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
316 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
317 'application/pdf', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
318 'text/plain_2', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
319 'text/html', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
320 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
321 'multipart/alternative', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
322 'text/plain_3', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
323 'application/pdf_2', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
324 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
325 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
326 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
327 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
328 msg.extract_content(ignore_alternatives=True) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
329 self.assertEqual(msg.extract_content(ignore_alternatives=True), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
330 'foo2\n', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
331 ('foo3.txt', 'text/plain', 'foo3\n'), |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
332 ('foo2.pdf', 'application/pdf', b'foo2\n'), |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
333 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
334 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
335 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
336 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
337 def test_signed_text(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
338 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
339 'multipart/signed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
340 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
341 'application/pgp-signature', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
342 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
343 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
344 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
345 self.assertEqual(msg.extract_content(), ('foo\n', [], False)) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
346 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
347 def test_signed_attachemts(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
348 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
349 'multipart/signed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
350 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
351 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
352 'application/pdf', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
353 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
354 'application/pgp-signature', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
355 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
356 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
357 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
358 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
359 'foo\n', |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
360 [('foo.pdf', 'application/pdf', b'foo\n')], |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
361 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
362 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
363 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
364 def test_attached_signature(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
365 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
366 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
367 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
368 'application/pgp-signature', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
369 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
370 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
371 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
372 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
373 'foo\n', |
|
5547
081be318661b
Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents:
5493
diff
changeset
|
374 [('foo.gpg', 'application/pgp-signature', b'foo\n')], |
|
5493
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
375 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
376 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
377 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
378 def test_rfc822_message(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
379 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
380 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
381 'message/rfc822', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
382 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
383 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
384 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
385 self.assertEqual(msg.extract_content(), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
386 None, |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
387 [('foo.eml', 'message/rfc822', 'Subject: foo\n\nfoo\n')], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
388 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
389 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
390 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
391 def test_rfc822_message_unpack(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
392 msg = construct_message([ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
393 'multipart/mixed', [ |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
394 'text/plain', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
395 'message/rfc822', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
396 ], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
397 ]) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
398 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
399 self.assertEqual(msg.extract_content(unpack_rfc822=True), ( |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
400 'foo\n', |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
401 [(None, 'text/plain', 'foo\n')], |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
402 False |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
403 )) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
404 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
405 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
406 class PgpDetectRoundupMessageTests(TestCase): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
407 def test_pgp_message_signed(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
408 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
409 Content-Type: multipart/signed; micalg=pgp-sha1; |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
410 protocol="application/pgp-signature" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
411 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
412 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
413 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
414 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
415 self.assertTrue(msg.pgp_signed()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
416 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
417 def test_pgp_message_not_signed(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
418 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
419 Content-Type: text/plain |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
420 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
421 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
422 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
423 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
424 self.assertFalse(msg.pgp_signed()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
425 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
426 def test_pgp_message_signed_protocol_missing(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
427 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
428 Content-Type: multipart/signed; micalg=pgp-sha1 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
429 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
430 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
431 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
432 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
433 self.assertFalse(msg.pgp_signed()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
434 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
435 def test_pgp_message_signed_protocol_invalid(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
436 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
437 Content-Type: multipart/signed; |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
438 protocol="application/not-pgp-signature" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
439 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
440 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
441 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
442 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
443 self.assertFalse(msg.pgp_signed()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
444 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
445 def test_pgp_message_encrypted(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
446 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
447 Content-Type: multipart/encrypted; |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
448 protocol="application/pgp-encrypted" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
449 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
450 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
451 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
452 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
453 self.assertTrue(msg.pgp_encrypted()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
454 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
455 def test_pgp_message_not_encrypted(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
456 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
457 Content-Type: text/plain |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
458 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
459 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
460 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
461 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
462 self.assertFalse(msg.pgp_encrypted()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
463 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
464 def test_pgp_message_encrypted_protocol_missing(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
465 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
466 Content-Type: multipart/encrypted |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
467 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
468 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
469 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
470 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
471 self.assertFalse(msg.pgp_encrypted()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
472 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
473 def test_pgp_message_encrypted_protocol_invalid(self): |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
474 msg = message_from_string(""" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
475 Content-Type: multipart/encrypted; |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
476 protocol="application/not-pgp-encrypted" |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
477 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
478 Fake Body |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
479 """) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
480 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
481 self.assertFalse(msg.pgp_encrypted()) |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
482 |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
483 # TODO: testing of the verify_signature() and decrypt() RoundupMessage methods. |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
484 # The whole PGP testing stuff seems a bit messy, so we will rely on the tests |
|
725266c03eab
updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents:
diff
changeset
|
485 # in test_mailgw for the time being |
