annotate test/test_mailgw.py @ 6673:567283742a5c

Add more translation tests for mailgw.py Verify error in German for [issue999999] and [frobulated] in subject line. The issue doesn't exist and the class doesn't exist. Also add warning to mailgw.py for mailgw.py::handle_message that any chnags to that method need to be replicated for all Translate tests in test_mailgw.py since it can't be tested directly as it destroys the mock used for the database by the test harness.
author John Rouillard <rouilj@ieee.org>
date Thu, 12 May 2022 14:50:50 -0400
parents 01216187a167
children 68f7acd67298
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1 # -*- encoding: utf-8 -*-
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 # Copyright (c) 2001 Richard Jones, richard@bofh.asn.au.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 # This module is free software, and you may redistribute it and/or modify
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5 # under the same terms as Python, so long as this copyright message and
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 # disclaimer are retained in their original form.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 # This module is distributed in the hope that it will be useful,
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
2219
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
11
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
12 # TODO: test bcc
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13
4965
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
14 import email
5388
d26921b851c3 Python 3 preparation: make relative imports explicit.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5381
diff changeset
15 from . import gpgmelib
6300
778a9f455067 Remove old code import imp, old style trackers db/backend_name
John Rouillard <rouilj@ieee.org>
parents: 6247
diff changeset
16 import unittest, tempfile, os, shutil, errno, sys, difflib, time, io
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
17
5036
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
18 import pytest
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
19
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
20 try:
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
21 import gpg, gpg.core
5038
c977f3530944 Work-around for pytest.mark.skipif() bug
John Kristensen <john@jerrykan.com>
parents: 5037
diff changeset
22 skip_pgp = lambda func, *args, **kwargs: func
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
23 except ImportError:
5109
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
24 # FIX: workaround for a bug in pytest.mark.skip():
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
25 # https://github.com/pytest-dev/pytest/issues/568
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
26 from .pytest_patcher import mark_class
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
27 skip_pgp = mark_class(pytest.mark.skip(
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
28 reason="Skipping PGP tests: 'gpg' not installed"))
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
29
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
30 try:
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
31 import bs4
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
32 skip_beautifulsoup = lambda func, *args, **kwargs: func
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
33 except ImportError:
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
34 from .pytest_patcher import mark_class
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
35 skip_beautifulsoup = mark_class(pytest.mark.skip(
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
36 reason="Skipping beautifulsoup tests: 'bs4' not installed"))
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
37
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
38
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
39 from roundup.anypy.email_ import message_from_bytes
5542
29346d92d80c Fix email interfaces with Python 3 (issue 2550974, issue 2551000).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5513
diff changeset
40 from roundup.anypy.strings import b2s, u2s, s2b
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
41
5381
0942fe89e82e Python 3 preparation: change "x.has_key(y)" to "y in x".
Joseph Myers <jsm@polyomino.org.uk>
parents: 5378
diff changeset
42 if 'SENDMAILDEBUG' not in os.environ:
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
43 os.environ['SENDMAILDEBUG'] = 'mail-test.log'
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
44 SENDMAILDEBUG = os.environ['SENDMAILDEBUG']
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
45
4407
f6a2bfd351ee force tests checking text output to work in the "C" locale
Richard Jones <richard@users.sourceforge.net>
parents: 4405
diff changeset
46 from roundup import mailgw, i18n, roundupdb
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
47 from roundup.mailgw import MailGW, Unauthorized, uidFromAddress, \
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
48 parseContent, IgnoreLoop, IgnoreBulk, MailUsageError, MailUsageHelp
4981
7f8f27ce1a06 Remove rfc2822.py
John Kristensen <john@jerrykan.com>
parents: 4979
diff changeset
49 from roundup import init, instance, password, __version__
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
50
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
51 #import db_test_base
6361
58817c3bf471 Fix roundup/test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6345
diff changeset
52 from roundup.test import memorydb
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
53 from .cmp_helper import StringFragmentCmpHelper
1797
c1eec970d5c0 Optimize mailgw and cgi tests...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1796
diff changeset
54
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
55 def expectedFailure(method):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
56 """ For marking a failing test.
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
57 This will *not* run the test and return success instead.
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
58 """
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
59 return lambda x: 0
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
60
4965
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
61
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
62 def get_body(message):
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
63 if not message.is_multipart():
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
64 return message.get_payload()
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
65
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
66 return message.as_string().split('\n\n', 1)[-1]
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
67
5502
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
68 def unfold(lst):
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
69 return [l.replace('\n', '') for l in lst]
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
70
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
71
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
72 class Tracker(object):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
73 def open(self, journaltag):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
74 return self.db
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
75
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
76 class DiffHelper:
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
77 def compareMessages(self, new, old):
4976
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
78 """Compare messages for semantic equivalence.
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
79
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
80 Only use this for full rfc 2822/822/whatever messages with headers.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
81
4976
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
82 Will raise an AssertionError with a diff for inequality.
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
83
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
84 Note that header fieldnames are case-insensitive.
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
85 So if a header fieldname appears more than once in different casing
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
86 and the values are not equal, there will be more than one entry
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
87 in the diff. Typical examples are "From:"/ "FROM:" and "TO:"/"To:".
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
88 """
4965
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
89 new = email.message_from_string(new.strip())
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
90 old = email.message_from_string(old.strip())
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
91
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
92 # all Roundup-generated messages have "Precedence: bulk"
4970
e2793024bd44 test_mailgw.py fixing the MIME-Version and Precedence duplicate headers of testUnknownUser (partly issue2550877)
Bernhard Reiter <bernhard@intevation.de>
parents: 4966
diff changeset
93 if 'Precedence' not in old:
e2793024bd44 test_mailgw.py fixing the MIME-Version and Precedence duplicate headers of testUnknownUser (partly issue2550877)
Bernhard Reiter <bernhard@intevation.de>
parents: 4966
diff changeset
94 old['Precedence'] = 'bulk'
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
95
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
96 # don't try to compare the date
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
97 del new['date'], old['date']
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
98
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
99 if not new == old:
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
100 res = []
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
101
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
102 replace = {}
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
103
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
104 # make sure that all headers are the same between the new
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
105 # and old (reference) messages. Once we have done this we
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
106 # can iterate over all the headers in the new message and
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
107 # compare contents. If we don't do this, we don't know
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
108 # when the new message has dropped a header that should be
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
109 # present.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
110 # Headers are case insensitive, so smash to lower case
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
111 new_headers=[x.lower() for x in new.keys()]
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
112 old_headers=[x.lower() for x in old.keys()]
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
113
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
114 if "x-roundup-version" not in old_headers:
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
115 # add it. it is skipped in most cases and missing from
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
116 # the test cases in old.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
117 old_headers.append("x-roundup-version")
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
118
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
119 new_headers.sort() # sort, make comparison easier in error message.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
120 old_headers.sort()
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
121
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
122 if new_headers != old_headers:
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
123 res.append('headers differ new vs. reference: %r != %r'%(new_headers, old_headers))
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
124
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
125 for key in new.keys():
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
126 if key.startswith('from '):
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
127 # skip the unix from line
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
128 continue
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
129 if key.lower() == 'x-roundup-version':
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
130 # version changes constantly, so handle it specially
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
131 if new[key] != __version__:
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
132 res.append(' %s: %r != %r' % (key, __version__,
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
133 new[key]))
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
134 elif key.lower() == 'content-type' and 'boundary=' in new[key]:
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
135 # handle mime messages
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
136 newmimeboundary = new[key].split('=',1)[-1].strip('"')
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
137 oldmimeboundary = old.get(key, '').split('=',1)[-1].strip('"')
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
138 # mime types are not case sensitive rfc 2045
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
139 newmimetype = new[key].split(';',1)[0].strip('"').lower()
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
140 oldmimetype = old.get(key, '').split(';',1)[0].strip('"').lower()
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
141 # throw an error if we have differeing content types
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
142 if not newmimetype == oldmimetype:
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
143 res.append('content-type mime type headers differ new vs. reference: %r != %r'%(newmimetype, oldmimetype))
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
144 replace ['--' + newmimeboundary] = '--' + oldmimeboundary
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
145 replace ['--' + newmimeboundary + '--'] = '--' + oldmimeboundary + '--'
5502
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
146 elif unfold(new.get_all(key, '')) != unfold(old.get_all(key, '')):
4965
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
147 # check that all other headers are identical, including
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
148 # headers that appear more than once.
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
149 res.append(' %s: %r != %r' % (key, old.get_all(key, ''),
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
150 new.get_all(key, '')))
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
151
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
152 # TODO replace the string comparision with a mimepart comparison
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
153 body_diff = self.compareStrings(get_body(new), get_body(old),
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
154 replace=replace)
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
155 if body_diff:
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
156 res.append('')
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
157 res.extend(body_diff)
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
158
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
159 if res:
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
160 res.insert(0, 'Generated message not correct (diff follows, expected vs. actual):')
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
161 raise AssertionError('\n'.join(res))
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
162
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
163 def compareStrings(self, s2, s1, replace={}):
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
164 '''Note the reversal of s2 and s1 - difflib.SequenceMatcher wants
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
165 the first to be the "original" but in the calls in this file,
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
166 the second arg is the original. Ho hum.
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
167 Do replacements over the replace dict -- used for mime boundary
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
168 '''
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
169 l1 = s1.strip().split('\n')
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
170 l2 = [replace.get(i,i) for i in s2.strip().split('\n')]
1330
d008233b22aa fixes to mailgw tests
Richard Jones <richard@users.sourceforge.net>
parents: 1322
diff changeset
171 if l1 == l2:
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
172 return
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
173 s = difflib.SequenceMatcher(None, l1, l2)
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
174 res = []
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
175 for value, s1s, s1e, s2s, s2e in s.get_opcodes():
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
176 if value == 'equal':
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
177 for i in range(s1s, s1e):
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
178 res.append(' %s'%l1[i])
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
179 elif value == 'delete':
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
180 for i in range(s1s, s1e):
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
181 res.append('- %s'%l1[i])
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
182 elif value == 'insert':
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
183 for i in range(s2s, s2e):
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
184 res.append('+ %s'%l2[i])
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
185 elif value == 'replace':
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
186 for i, j in zip(range(s1s, s1e), range(s2s, s2e)):
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
187 res.append('- %s'%l1[i])
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
188 res.append('+ %s'%l2[j])
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
189
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
190 return res
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
191
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
192 from roundup.hyperdb import String
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
193
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
194
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
195 class MailgwTestAbstractBase(DiffHelper):
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
196 count = 0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
197 schema = 'classic'
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
198 def setUp(self):
4407
f6a2bfd351ee force tests checking text output to work in the "C" locale
Richard Jones <richard@users.sourceforge.net>
parents: 4405
diff changeset
199 self.old_translate_ = mailgw._
f6a2bfd351ee force tests checking text output to work in the "C" locale
Richard Jones <richard@users.sourceforge.net>
parents: 4405
diff changeset
200 roundupdb._ = mailgw._ = i18n.get_translation(language='C').gettext
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
201 self.__class__.count = self.__class__.count + 1
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
202
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
203 # and open the database / "instance"
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
204 self.db = memorydb.create('admin')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
205
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
206 self.db.issue.addprop(tx_Source=String())
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
207 self.db.msg.addprop(tx_Source=String())
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
208 self.db.post_init()
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
209
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
210 self.db.tx_Source = "email"
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
211
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
212 self.instance = Tracker()
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
213 self.instance.db = self.db
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
214 self.instance.config = self.db.config
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
215 self.instance.MailGW = MailGW
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
216
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
217 self.chef_id = self.db.user.create(username='Chef',
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
218 address='chef@bork.bork.bork', realname='Bork, Chef', roles='User')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
219 self.richard_id = self.db.user.create(username='richard',
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
220 address='richard@test.test', roles='User')
4211
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
221 self.mary_id = self.db.user.create(username='mary',
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
222 address='mary@test.test', roles='User', realname='Contrary, Mary')
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
223 self.john_id = self.db.user.create(username='john',
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
224 address='john@test.test', roles='User', realname='John Doe',
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
225 alternate_addresses='jondoe@test.test\njohn.doe@test.test')
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
226 self.rgg_id = self.db.user.create(username='rgg',
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
227 address='rgg@test.test', roles='User')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
228
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
229 def tearDown(self):
4407
f6a2bfd351ee force tests checking text output to work in the "C" locale
Richard Jones <richard@users.sourceforge.net>
parents: 4405
diff changeset
230 roundupdb._ = mailgw._ = self.old_translate_
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
231 if os.path.exists(SENDMAILDEBUG):
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
232 os.remove(SENDMAILDEBUG)
1126
d77b86cc541b close the databases before test cleanup
Richard Jones <richard@users.sourceforge.net>
parents: 1095
diff changeset
233 self.db.close()
6365
7f00fc5958ca Make memorydb persistent across re-open
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6361
diff changeset
234 memorydb.db_nuke('')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
235
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
236 def _allowAnonymousSubmit(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
237 p = [
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
238 self.db.security.getPermission('Register', 'user'),
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
239 self.db.security.getPermission('Email Access', None),
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
240 self.db.security.getPermission('Create', 'issue'),
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
241 self.db.security.getPermission('Create', 'msg'),
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
242 ]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
243 self.db.security.role['anonymous'].permissions = p
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
244
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
245 def _create_mailgw(self, message, args=()):
4350
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
246 class MailGW(self.instance.MailGW):
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
247 """call _handle_message as handle_message
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
248 the real handle_message reopens the database, and destroys
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
249 the db that we supply as part of the test.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
250 """
4350
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
251 def handle_message(self, message):
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
252 return self._handle_message(message)
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
253 handler = MailGW(self.instance, args)
4350
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
254 handler.db = self.db
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
255 return handler
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
256
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
257 def _handle_mail(self, message, args=(), trap_exc=0):
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
258 handler = self._create_mailgw(message, args)
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
259 handler.trapExceptions = trap_exc
5542
29346d92d80c Fix email interfaces with Python 3 (issue 2550974, issue 2551000).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5513
diff changeset
260 return handler.main(io.BytesIO(s2b(message)))
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
261
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
262 def _get_mail(self):
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
263 """Reads an email that has been written to file via debug output.
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
264
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
265 Note: the resulting email will have three leading extra lines
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
266 written by the self.debug code branch in Mailer.smtp_send().
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
267 """
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
268 f = open(SENDMAILDEBUG)
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
269 try:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
270 return f.read()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
271 finally:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
272 f.close()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
273
5152
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
274 def testHelpMessage(self):
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
275 help_message='''Content-Type: text/plain;
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
276 charset="iso-8859-1"
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
277 From: Chef <chef@bork.bork.bork>
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
278 To: issue_tracker@your.tracker.email.domain.example
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
279 Cc: richard@test.test
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
280 Reply-To: chef@bork.bork.bork
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
281 Message-Id: <dummy_test_message_id>
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
282 Subject: help
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
283
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
284 '''
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
285 assert not os.path.exists(SENDMAILDEBUG)
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
286 self.assertRaises(MailUsageHelp, self._handle_mail, help_message)
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
287 # FIXME I think help sends email. but using _get_mail() doesn't
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
288 # work. The file mail-test.log is missing.
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
289 # self.compareMessages(self._get_mail(), 1)
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
290
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
291
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
292 # Normal test-case used for both non-pgp test and a test while pgp
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
293 # is enabled, so this test is run in both test suites.
1620
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
294 def testEmptyMessage(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
295 nodeid = self._handle_mail('''Content-Type: text/plain;
1620
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
296 charset="iso-8859-1"
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
297 From: Chef <chef@bork.bork.bork>
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
298 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
299 Cc: richard@test.test
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
300 Reply-To: chef@bork.bork.bork
1620
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
301 Message-Id: <dummy_test_message_id>
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
302 Subject: [issue] Testing...
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
303
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
304 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
305 assert not os.path.exists(SENDMAILDEBUG)
1620
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
306 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'Testing...')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
307 self.assertEqual(self.db.issue.get(nodeid, 'tx_Source'), 'email')
1620
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
308
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
309
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
310 class MailgwTestCase(MailgwTestAbstractBase, StringFragmentCmpHelper, unittest.TestCase):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
311
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
312 @skip_beautifulsoup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
313 def testTextHtmlMessageBeautifulSoup(self):
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
314 self.testTextHtmlMessage(converter='beautifulsoup')
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
315
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
316 def testTextHtmlMessage(self, converter='dehtml'):
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
317 html_message='''Content-Type: text/html;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
318 charset="iso-8859-1"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
319 From: Chef <chef@bork.bork.bork>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
320 To: issue_tracker@your.tracker.email.domain.example
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
321 Cc: richard@test.test
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
322 Reply-To: chef@bork.bork.bork
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
323 Message-Id: <dummy_test_message_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
324 Subject: [issue] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
325
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
326 <body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
327 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
328 this must not be in output
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
329 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
330 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
331 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
332 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
333 <div class="header"><h1>Roundup</h1>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
334 <div id="searchbox" style="display: none">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
335 <form class="search" action="../search.html" method="get">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
336 <input type="text" name="q" size="18" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
337 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
338 <input type="hidden" name="check_keywords" value="yes" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
339 <input type="hidden" name="area" value="default" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
340 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
341 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
342 <script type="text/javascript">$('#searchbox').show(0);</script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
343 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
344 <ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
345 <li class="toctree-l1"><a class="reference internal" href="../index.html">Home</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
346 <li class="toctree-l1"><a class="reference external" href="http://pypi.python.org/pypi/roundup">Download</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
347 <li class="toctree-l1 current"><a class="reference internal" href="../docs.html">Docs</a><ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
348 <li class="toctree-l2"><a class="reference internal" href="features.html">Roundup Features</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
349 <li class="toctree-l2 current"><a class="current reference internal" href="">Installing Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
350 <li class="toctree-l2"><a class="reference internal" href="upgrading.html">Upgrading to newer versions of Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
351 <li class="toctree-l2"><a class="reference internal" href="FAQ.html">Roundup FAQ</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
352 <li class="toctree-l2"><a class="reference internal" href="user_guide.html">User Guide</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
353 <li class="toctree-l2"><a class="reference internal" href="customizing.html">Customising Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
354 <li class="toctree-l2"><a class="reference internal" href="admin_guide.html">Administration Guide</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
355 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
356 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
357 <h2><a class="toc-backref" href="#id5">Prerequisites</a></h2>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
358 <p>Roundup requires Python 2.6 or newer (but not Python 3) with a functioning
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
359 anydbm module. Download the latest version from <a class="reference external" href="http://www.python.org/">http://www.python.org/</a>.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
360 It is highly recommended that users install the latest patch version
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
361 of python as these contain many fixes to serious bugs.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
362 <p>Some variants of Linux will need an additional &#8220;python dev&#8221; package
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
363 installed for Roundup installation to work. Debian and derivatives, are
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
364 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
365 <p>If you&#8217;re on windows, you will either need to be using the ActiveState python
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
366 distribution (at <a class="reference external" href="http://www.activestate.com/Products/ActivePython/">http://www.activestate.com/Products/ActivePython/</a>), or you&#8217;ll
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
367 have to install the win32all package separately (get it from
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
368 <a class="reference external" href="http://starship.python.net/crew/mhammond/win32/">http://starship.python.net/crew/mhammond/win32/</a>).</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
369 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
370 </body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
371 '''
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
372 text_fragments = {}
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
373 text_fragments['dehtml'] = ['Roundup\n Home\nDownload\nDocs\nRoundup Features\nInstalling Roundup\nUpgrading to newer versions of Roundup\nRoundup FAQ\nUser Guide\nCustomising Roundup\nAdministration Guide\nPrerequisites\n\nRoundup requires Python 2.6 or newer (but not Python 3) with a functioning\nanydbm module. Download the latest version from http://www.python.org/.\nIt is highly recommended that users install the latest patch version\nof python as these contain many fixes to serious bugs.\n\nSome variants of Linux will need an additional ', ('python dev', u2s(u'\u201cpython dev\u201d')), ' package\ninstalled for Roundup installation to work. Debian and derivatives, are\nknown to require this.\n\nIf you', (u2s(u'\u2019'), ''), 're on windows, you will either need to be using the ActiveState python\ndistribution (at http://www.activestate.com/Products/ActivePython/), or you', (u2s(u'\u2019'), ''), 'll\nhave to install the win32all package separately (get it from\nhttp://starship.python.net/crew/mhammond/win32/).']
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
374 text_fragments['beautifulsoup'] = ['Roundup\nHome\nDownload\nDocs\nRoundup Features\nInstalling Roundup\nUpgrading to newer versions of Roundup\nRoundup FAQ\nUser Guide\nCustomising Roundup\nAdministration Guide\nPrerequisites\nRoundup requires Python 2.6 or newer (but not Python 3) with a functioning\nanydbm module. Download the latest version from\nhttp://www.python.org/\n.\nIt is highly recommended that users install the latest patch version\nof python as these contain many fixes to serious bugs.\nSome variants of Linux will need an additional ', ('python dev', u2s(u'\u201cpython dev\u201d')), ' package\ninstalled for Roundup installation to work. Debian and derivatives, are\nknown to require this.\nIf you', (u2s(u'\u2019'), "'"), 're on windows, you will either need to be using the ActiveState python\ndistribution (at\nhttp://www.activestate.com/Products/ActivePython/\n), or you’ll\nhave to install the win32all package separately (get it from\nhttp://starship.python.net/crew/mhammond/win32/\n).']
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
375
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
376 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = converter
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
377 nodeid = self._handle_mail(html_message)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
378 assert not os.path.exists(SENDMAILDEBUG)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
379 msgid = self.db.issue.get(nodeid, 'messages')[0]
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
380 self.compareStringFragments(self.db.msg.get(msgid, 'content'),
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
381 text_fragments[converter])
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
382
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
383 if converter == 'dehtml':
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
384 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = "none"
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
385 self.assertRaises(MailUsageError, self._handle_mail, html_message)
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
386
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
387 def testMessageWithFromInIt(self):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
388 nodeid = self._handle_mail('''Content-Type: text/plain;
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
389 charset="iso-8859-1"
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
390 From: Chef <chef@bork.bork.bork>
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
391 To: issue_tracker@your.tracker.email.domain.example
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
392 Cc: richard@test.test
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
393 Reply-To: chef@bork.bork.bork
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
394 Message-Id: <dummy_test_message_id>
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
395 Subject: [issue] Testing...
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
396
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
397 From here to there!
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
398 ''')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
399 assert not os.path.exists(SENDMAILDEBUG)
4343
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
400 msgid = self.db.issue.get(nodeid, 'messages')[0]
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
401 self.assertEqual(self.db.msg.get(msgid, 'content'), 'From here to there!')
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
402
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
403 def testNoMessageId(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
404 self.instance.config['MAIL_DOMAIN'] = 'example.com'
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
405 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
406 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
407 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
408 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
409 Cc: richard@test.test
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
410 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
411 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
412
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
413 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
414 ''')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
415 assert not os.path.exists(SENDMAILDEBUG)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
416 msgid = self.db.issue.get(nodeid, 'messages')[0]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
417 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
418 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
419 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
420 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
421 self.assertEqual(x, 'issueNone')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
422 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
423 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
424 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
425 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
426 Subject: [issue%(nodeid)s] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
427
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
428 Just a test reply
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
429 '''%locals())
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
430 msgid = self.db.issue.get(nodeid, 'messages')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
431 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
432 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
433 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
434 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
435 self.assertEqual(x, "issue%s"%nodeid)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
436
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
437 def testOptions(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
438 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
439 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
440 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
441 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
442 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
443 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
444 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
445
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
446 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
447 ''', (('-C', 'issue'), ('-S', 'status=chatting;priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
448 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
449 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
450
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
451 def testOptionsMulti(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
452 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
453 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
454 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
455 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
456 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
457 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
458 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
459
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
460 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
461 ''', (('-C', 'issue'), ('-S', 'status=chatting'), ('-S', 'priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
462 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
463 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
464
4478
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
465 def testOptionClass(self):
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
466 nodeid = self._handle_mail('''Content-Type: text/plain;
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
467 charset="iso-8859-1"
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
468 From: Chef <chef@bork.bork.bork>
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
469 To: issue_tracker@your.tracker.email.domain.example
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
470 Message-Id: <dummy_test_message_id>
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
471 Reply-To: chef@bork.bork.bork
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
472 Subject: [issue] Testing... [status=chatting;priority=critical]
4478
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
473
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
474 Hi there!
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
475 ''', (('-c', 'issue'),))
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
476 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'Testing...')
4478
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
477 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
478 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
479
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
480 newmsg = '''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
481 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
482 From: Chef <chef@bork.bork.bork>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
483 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
484 Cc: richard@test.test
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
485 Message-Id: <dummy_test_message_id>
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
486 Subject: [issue] Testing...
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
487
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
488 This is a test submission of a new issue.
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
489 '''
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
490
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
491 def doNewIssue(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
492 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
493 assert not os.path.exists(SENDMAILDEBUG)
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 699
diff changeset
494 l = self.db.issue.get(nodeid, 'nosy')
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 699
diff changeset
495 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
496 self.assertEqual(l, [self.chef_id, self.richard_id])
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
497
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
498 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
499 l = self.db.msg.get('1', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
500 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
501
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
502 return nodeid
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
503
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
504 def testNewIssue(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
505 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
506
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
507 def testNewIssueNosy(self):
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
508 self.instance.config.ADD_AUTHOR_TO_NOSY = 'yes'
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
509 nodeid = self.doNewIssue()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
510 m = self.db.issue.get(nodeid, 'messages')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
511 self.assertEqual(len(m), 1)
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
512 recv = self.db.msg.get(m[0], 'recipients')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
513 self.assertEqual(recv, [self.richard_id])
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
514
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
515 def testNewIssueNosyAuthor(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
516 self.instance.config.ADD_AUTHOR_TO_NOSY = 'no'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
517 self.instance.config.MESSAGES_TO_AUTHOR = 'nosy'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
518 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
519 assert not os.path.exists(SENDMAILDEBUG)
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 699
diff changeset
520 l = self.db.issue.get(nodeid, 'nosy')
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 699
diff changeset
521 l.sort()
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
522 self.assertEqual(l, [self.richard_id])
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
523 m = self.db.issue.get(nodeid, 'messages')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
524 self.assertEqual(len(m), 1)
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
525 recv = self.db.msg.get(m[0], 'recipients')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
526 recv.sort()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
527 self.assertEqual(recv, [self.richard_id])
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
528
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
529 def testAlternateAddress(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
530 self._handle_mail('''Content-Type: text/plain;
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
531 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
532 From: John Doe <john.doe@test.test>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
533 To: issue_tracker@your.tracker.email.domain.example
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
534 Message-Id: <dummy_test_message_id>
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
535 Subject: [issue] Testing...
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
536
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
537 This is a test submission of a new issue.
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
538 ''')
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
539 userlist = self.db.user.list()
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
540 assert not os.path.exists(SENDMAILDEBUG)
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
541 self.assertEqual(userlist, self.db.user.list(),
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
542 "user created when it shouldn't have been")
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
543
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
544 def testNewIssueNoClass(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
545 self._handle_mail('''Content-Type: text/plain;
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
546 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
547 From: Chef <chef@bork.bork.bork>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
548 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
549 Cc: richard@test.test
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
550 Message-Id: <dummy_test_message_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
551 Subject: Testing...
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
552
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
553 This is a test submission of a new issue.
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
554 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
555 assert not os.path.exists(SENDMAILDEBUG)
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
556
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
557 def testNewIssueAuthMsg(self):
1888
465dc7dbe67a Extract _send_mail method, it was duplicated all around the test code.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1887
diff changeset
558 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
559 self._handle_mail('''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
560 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
561 From: Chef <chef@bork.bork.bork>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
562 To: issue_tracker@your.tracker.email.domain.example
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
563 Message-Id: <dummy_test_message_id>
560
d7b9751f8927 Mail gateway improvements.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 537
diff changeset
564 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
565
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
566 This is a test submission of a new issue.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
567 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
568 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
569 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
570 TO: chef@bork.bork.bork, mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
571 Content-Type: text/plain; charset="utf-8"
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
572 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
573 To: chef@bork.bork.bork, mary@test.test, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
574 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
575 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
576 <issue_tracker@your.tracker.email.domain.example>
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
577 MIME-Version: 1.0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
578 Message-Id: <dummy_test_message_id>
613
d77b82588bf0 Fixed the unit tests for the mailgw re: the x-roundup-name header.
Richard Jones <richard@users.sourceforge.net>
parents: 609
diff changeset
579 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
580 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
581 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
582 X-Roundup-Issue-Id: 1
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
583 Content-Transfer-Encoding: quoted-printable
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
584
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
585
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
586 New submission from Bork, Chef <chef@bork.bork.bork>:
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
587
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
588 This is a test submission of a new issue.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
589
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
590 ----------
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
591 assignedto: richard
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
592 messages: 1
718
e10c37f53efd fixed SCRIPT_NAME in ZRoundup for instances not at top level of Zope
Richard Jones <richard@users.sourceforge.net>
parents: 699
diff changeset
593 nosy: Chef, mary, richard
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
594 status: unread
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
595 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
596 tx_Source: email
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
597
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
598 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
599 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
600 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
601 _______________________________________________________________________
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
602 ''')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
603
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
604 def testNewIssueNoAuthorInfo(self):
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
605 self.db.config.MAIL_ADD_AUTHORINFO = 'no'
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
606 self._handle_mail('''Content-Type: text/plain;
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
607 charset="iso-8859-1"
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
608 From: Chef <chef@bork.bork.bork>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
609 To: issue_tracker@your.tracker.email.domain.example
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
610 Message-Id: <dummy_test_message_id>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
611 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
612
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
613 This is a test submission of a new issue.
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
614 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
615 self.compareMessages(self._get_mail(),
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
616 '''FROM: roundup-admin@your.tracker.email.domain.example
4976
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
617 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
618 Content-Type: text/plain; charset="utf-8"
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
619 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
620 To: mary@test.test, richard@test.test
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
621 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
622 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
623 <issue_tracker@your.tracker.email.domain.example>
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
624 MIME-Version: 1.0
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
625 Message-Id: <dummy_test_message_id>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
626 X-Roundup-Name: Roundup issue tracker
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
627 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
628 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
629 X-Roundup-Issue-Id: 1
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
630 Content-Transfer-Encoding: quoted-printable
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
631
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
632 This is a test submission of a new issue.
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
633
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
634 ----------
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
635 assignedto: richard
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
636 messages: 1
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
637 nosy: Chef, mary, richard
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
638 status: unread
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
639 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
640 tx_Source: email
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
641
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
642 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
643 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
644 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
645 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
646 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
647
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
648 def testNewIssueNoAuthorEmail(self):
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
649 self.db.config.MAIL_ADD_AUTHOREMAIL = 'no'
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
650 self._handle_mail('''Content-Type: text/plain;
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
651 charset="iso-8859-1"
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
652 From: Chef <chef@bork.bork.bork>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
653 To: issue_tracker@your.tracker.email.domain.example
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
654 Message-Id: <dummy_test_message_id>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
655 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
656
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
657 This is a test submission of a new issue.
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
658 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
659 self.compareMessages(self._get_mail(),
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
660 '''FROM: roundup-admin@your.tracker.email.domain.example
4976
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
661 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
662 Content-Type: text/plain; charset="utf-8"
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
663 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
664 To: mary@test.test, richard@test.test
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
665 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
666 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
667 <issue_tracker@your.tracker.email.domain.example>
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
668 MIME-Version: 1.0
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
669 Message-Id: <dummy_test_message_id>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
670 X-Roundup-Name: Roundup issue tracker
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
671 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
672 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
673 X-Roundup-Issue-Id: 1
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
674 Content-Transfer-Encoding: quoted-printable
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
675
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
676 New submission from Bork, Chef:
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
677
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
678 This is a test submission of a new issue.
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
679
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
680 ----------
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
681 assignedto: richard
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
682 messages: 1
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
683 nosy: Chef, mary, richard
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
684 status: unread
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
685 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
686 tx_Source: email
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
687
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
688 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
689 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
690 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
691 _______________________________________________________________________
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
692 ''')
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
693
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
694 octetstream_msg = '''From: mary <mary@test.test>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
695 To: issue_tracker@your.tracker.email.domain.example
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
696 Message-Id: <followup_dummy_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
697 In-Reply-To: <dummy_test_message_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
698 Subject: [issue1] Testing...
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
699 Content-Type: multipart/mixed; boundary="uh56ypi7view24rr"
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
700 Content-Disposition: inline
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
701
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
702 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
703 Content-Type: text/plain; charset=us-ascii
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
704 Content-Disposition: inline
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
705
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
706 Attach a file with non-ascii characters in it (encoded latin-1 should
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
707 make it as-is through roundup due to Content-Type
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
708 application/octet-stream)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
709 --
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
710 Ralf Schlatterbeck email: ralf@zoo.priv.at
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
711
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
712 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
713 Content-Type: application/octet-stream
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
714 Content-Disposition: attachment; filename=testfile
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
715 Content-Transfer-Encoding: quoted-printable
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
716
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
717 This is a file containing text
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
718 in latin-1 format =E4=F6=FC=C4=D6=DC=DF
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
719
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
720 --uh56ypi7view24rr--
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
721 '''
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
722
6345
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
723 filename_msg = '''From: mary <mary@test.test>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
724 To: issue_tracker@your.tracker.email.domain.example
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
725 Message-Id: <followup_dummy_id>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
726 In-Reply-To: <dummy_test_message_id>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
727 Subject: [issue1] Testing...
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
728 Content-Type: multipart/mixed; boundary="uh56ypi7view24rr"
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
729 Content-Disposition: inline
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
730
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
731 --uh56ypi7view24rr
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
732 Content-Type: text/plain; charset=us-ascii
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
733 Content-Disposition: inline
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
734
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
735 Attach a file with non-ascii characters in it (encoded latin-1 should
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
736 make it as-is through roundup due to Content-Type
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
737 application/octet-stream)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
738 --
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
739 Ralf Schlatterbeck email: ralf@zoo.priv.at
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
740
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
741 --uh56ypi7view24rr
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
742 Content-Type: application/octet-stream
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
743 Content-Disposition: attachment;
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
744 filename==?iso-8859-1?Q?20210312=5FM=FCnchen=5FRepor?=
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
745 =?iso-8859-1?Q?t.pdf?=
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
746 Content-Transfer-Encoding: quoted-printable
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
747
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
748 This is a file containing text
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
749 in latin-1 format =E4=F6=FC=C4=D6=DC=DF
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
750
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
751 --uh56ypi7view24rr--
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
752 '''
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
753
3974
ff089ebe95d1 remove duplicate Content-Type header from multipart_msg...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3966
diff changeset
754 multipart_msg = '''From: mary <mary@test.test>
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
755 To: issue_tracker@your.tracker.email.domain.example
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
756 Message-Id: <followup_dummy_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
757 In-Reply-To: <dummy_test_message_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
758 Subject: [issue1] Testing...
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
759 Content-Type: multipart/mixed; boundary="bxyzzy"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
760 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
761
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
762
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
763 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
764 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWE"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
765 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
766
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
767 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
768 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
769 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
770
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
771 test attachment first text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
772
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
773 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
774 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
775 Content-Disposition: attachment; filename="first.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
776 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
777
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
778 SnVzdCBhIHRlc3QgAQo=
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
779
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
780 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
781 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
782 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
783
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
784 test attachment second text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
785
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
786 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
787 Content-Type: text/html
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
788 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
789
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
790 <html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
791 to be ignored.
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
792 </html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
793
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
794 --bCsyhTFzCvuiizWE--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
795
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
796 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
797 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWF"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
798 Content-Disposition: inline
609
633f2b542146 Clean up mail handling, multipart handling.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 599
diff changeset
799
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
800 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
801 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
802 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
803
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
804 test attachment third text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
805
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
806 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
807 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
808 Content-Disposition: attachment; filename="second.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
809 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
810
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
811 SnVzdCBhIHRlc3QK
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
812
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
813 --bCsyhTFzCvuiizWF--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
814
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
815 --bxyzzy--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
816 '''
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
817
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
818 multipart_msg_latin1 = '''From: mary <mary@test.test>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
819 To: issue_tracker@your.tracker.email.domain.example
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
820 Message-Id: <followup_dummy_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
821 In-Reply-To: <dummy_test_message_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
822 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
823 Content-Type: multipart/alternative; boundary=001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
824
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
825
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
826 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
827 Content-Type: text/plain; charset=ISO-8859-1
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
828 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
829
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
830 umlaut =E4=F6=FC=C4=D6=DC=DF
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
831
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
832 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
833 Content-Type: text/html; charset=ISO-8859-1
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
834 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
835
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
836 <html>umlaut =E4=F6=FC=C4=D6=DC=DF</html>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
837
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
838 --001485f339f8f361fb049188dbba--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
839 '''
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
840
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
841 multipart_msg_rfc822 = '''From: mary <mary@test.test>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
842 To: issue_tracker@your.tracker.email.domain.example
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
843 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
844 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
845 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
846 Content-Type: multipart/mixed; boundary=001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
847
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
848 This is a multi-part message in MIME format.
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
849 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
850 Content-Type: text/plain; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
851 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
852
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
853 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
854
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
855 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
856 Content-Type: message/rfc822; name="Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
857 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
858 Content-Disposition: attachment; filename="Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
859
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
860 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
861 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
862 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
863 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
864 Date: Mon, 23 Aug 2010 08:23:33 +0200
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
865 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
866
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
867 This is a multi-part message in MIME format.
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
868 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
869 Content-Type: text/plain; charset=ISO-8859-15; format=flowed
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
870 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
871
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
872 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
873 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
874
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
875 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
876 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
877 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
878
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
879 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
880 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
881 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
882 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
883
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
884 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
885
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
886 --001485f339f8f361fb049188dbba--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
887 '''
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
888
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
889 def testOctetStreamTranscoding(self):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
890 self.doNewIssue()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
891 self._handle_mail(self.octetstream_msg)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
892 messages = self.db.issue.get('1', 'messages')
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
893 messages.sort()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
894 msg = self.db.msg.getnode (messages[-1])
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
895 assert(len(msg.files) == 1)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
896 names = {0 : 'testfile'}
5547
081be318661b Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5546
diff changeset
897 content = [b'''This is a file containing text
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
898 in latin-1 format \xE4\xF6\xFC\xC4\xD6\xDC\xDF
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
899 ''']
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
900 for n, id in enumerate (msg.files):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
901 f = self.db.file.getnode (id)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
902 self.assertEqual(f.name, names.get (n, 'unnamed'))
5547
081be318661b Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5546
diff changeset
903 self.assertEqual(f.binary_content, content [n])
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
904
6345
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
905 def testFileAttachWithUmlaut(self):
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
906 self.doNewIssue()
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
907 self._handle_mail(self.filename_msg)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
908 messages = self.db.issue.get('1', 'messages')
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
909 messages.sort()
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
910 msg = self.db.msg.getnode (messages[-1])
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
911 assert(len(msg.files) == 1)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
912 names = {0 : u'20210312_M\xfcnchen_Report.pdf'}
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
913 content = [b'''This is a file containing text
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
914 in latin-1 format \xE4\xF6\xFC\xC4\xD6\xDC\xDF
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
915 ''']
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
916 for n, id in enumerate (msg.files):
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
917 f = self.db.file.getnode (id)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
918 self.assertEqual(f.name, names.get (n, 'unnamed'))
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
919 self.assertEqual(f.binary_content, content [n])
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
920
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
921 def testMultipartKeepAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
922 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
923 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
924 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
925 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
926 msg = self.db.msg.getnode (messages[-1])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
927 assert(len(msg.files) == 5)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
928 names = {0 : 'first.dvi', 4 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
929 content = {3 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
930 4 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
931 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
932 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
933 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
934 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
935 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
936 self.assertEqual(msg.content, 'test attachment second text/plain')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
937
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
938 def testMultipartSeveralAttachmentMessages(self):
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
939 self.doNewIssue()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
940 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
941 messages = self.db.issue.get('1', 'messages')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
942 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
943 self.assertEqual(messages[-1], '2')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
944 msg = self.db.msg.getnode (messages[-1])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
945 self.assertEqual(len(msg.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
946 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
947 self.assertEqual(len(issue.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
948 names = {0 : 'first.dvi', 4 : 'second.dvi'}
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
949 content = {3 : 'test attachment third text/plain\n',
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
950 4 : 'Just a test\n'}
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
951 for n, id in enumerate (msg.files):
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
952 f = self.db.file.getnode (id)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
953 self.assertEqual(f.name, names.get (n, 'unnamed'))
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
954 if n in content :
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
955 self.assertEqual(f.content, content [n])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
956 self.assertEqual(msg.content, 'test attachment second text/plain')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
957 self.assertEqual(msg.files, ['1', '2', '3', '4', '5'])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
958 self.assertEqual(issue.files, ['1', '2', '3', '4', '5'])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
959
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
960 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
961 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
962 self.assertEqual(len(issue.files), 10)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
963 messages = self.db.issue.get('1', 'messages')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
964 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
965 self.assertEqual(messages[-1], '3')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
966 msg = self.db.msg.getnode (messages[-1])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
967 self.assertEqual(issue.files, [str(i+1) for i in range(10)])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
968 self.assertEqual(msg.files, ['6', '7', '8', '9', '10'])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
969
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
970 def testMultipartKeepFiles(self):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
971 self.doNewIssue()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
972 self._handle_mail(self.multipart_msg)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
973 messages = self.db.issue.get('1', 'messages')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
974 messages.sort()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
975 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
976 self.assertEqual(len(msg.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
977 issue = self.db.issue.getnode ('1')
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
978 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
979 names = {0 : 'first.dvi', 4 : 'second.dvi'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
980 content = {3 : 'test attachment third text/plain\n',
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
981 4 : 'Just a test\n'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
982 for n, id in enumerate (msg.files):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
983 f = self.db.file.getnode (id)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
984 self.assertEqual(f.name, names.get (n, 'unnamed'))
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
985 if n in content :
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
986 self.assertEqual(f.content, content [n])
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
987 self.assertEqual(msg.content, 'test attachment second text/plain')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
988 self._handle_mail('''From: mary <mary@test.test>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
989 To: issue_tracker@your.tracker.email.domain.example
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
990 Message-Id: <followup_dummy_id2>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
991 In-Reply-To: <dummy_test_message_id>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
992 Subject: [issue1] Testing...
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
993
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
994 This ist a message without attachment
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
995 ''')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
996 issue = self.db.issue.getnode ('1')
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
997 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
998 self.assertEqual(issue.files, ['1', '2', '3', '4', '5'])
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
999
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1000 def testMultipartDropAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1001 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1002 self.db.config.MAILGW_IGNORE_ALTERNATIVES = True
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1003 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1004 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1005 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1006 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1007 self.assertEqual(len(msg.files), 2)
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1008 names = {1 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1009 content = {0 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1010 1 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1011 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1012 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1013 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1014 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1015 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1016 self.assertEqual(msg.content, 'test attachment second text/plain')
613
d77b82588bf0 Fixed the unit tests for the mailgw re: the x-roundup-name header.
Richard Jones <richard@users.sourceforge.net>
parents: 609
diff changeset
1017
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1018 def testMultipartCharsetUTF8NoAttach(self):
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
1019 c = b2s(b'umlaut \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f')
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1020 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1021 self.db.config.NOSY_MAX_ATTACHMENT_SIZE = 0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1022 self._handle_mail(self.multipart_msg_latin1)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1023 messages = self.db.issue.get('1', 'messages')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1024 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1025 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1026 self.assertEqual(len(msg.files), 1)
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1027 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1028 content = '<html>' + c + '</html>\n'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1029 for n, id in enumerate (msg.files):
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1030 f = self.db.file.getnode (id)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1031 self.assertEqual(f.name, name)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1032 self.assertEqual(f.content, content)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1033 self.assertEqual(msg.content, c)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1034 self.compareMessages(self._get_mail(),
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1035 '''FROM: roundup-admin@your.tracker.email.domain.example
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1036 TO: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1037 Content-Type: text/plain; charset="utf-8"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1038 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1039 To: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1040 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1041 Reply-To: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1042 <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1043 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1044 Message-Id: <followup_dummy_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1045 In-Reply-To: <dummy_test_message_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1046 X-Roundup-Name: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1047 X-Roundup-Loop: hello
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1048 X-Roundup-Issue-Status: chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1049 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1050 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1051 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1052
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1053
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1054 Contrary, Mary <mary@test.test> added the comment:
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1055
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1056 umlaut =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1057 File 'unnamed' not attached - you can download it from http://tracker.examp=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1058 le/cgi-bin/roundup.cgi/bugs/file1.
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1059
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1060 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1061 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1062
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1063 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1064 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1065 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1066 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1067 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1068
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1069 def testMultipartCharsetLatin1NoAttach(self):
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
1070 c = b2s(b'umlaut \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f')
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1071 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1072 self.db.config.NOSY_MAX_ATTACHMENT_SIZE = 0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1073 self.db.config.MAIL_CHARSET = 'iso-8859-1'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1074 self._handle_mail(self.multipart_msg_latin1)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1075 messages = self.db.issue.get('1', 'messages')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1076 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1077 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1078 self.assertEqual(len(msg.files), 1)
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1079 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1080 content = '<html>' + c + '</html>\n'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1081 for n, id in enumerate (msg.files):
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1082 f = self.db.file.getnode (id)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1083 self.assertEqual(f.name, name)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1084 self.assertEqual(f.content, content)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1085 self.assertEqual(msg.content, c)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1086 self.compareMessages(self._get_mail(),
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1087 '''FROM: roundup-admin@your.tracker.email.domain.example
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1088 TO: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1089 Content-Type: text/plain; charset="iso-8859-1"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1090 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1091 To: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1092 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1093 Reply-To: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1094 <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1095 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1096 Message-Id: <followup_dummy_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1097 In-Reply-To: <dummy_test_message_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1098 X-Roundup-Name: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1099 X-Roundup-Loop: hello
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1100 X-Roundup-Issue-Status: chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1101 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1102 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1103 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1104
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1105
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1106 Contrary, Mary <mary@test.test> added the comment:
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1107
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1108 umlaut =E4=F6=FC=C4=D6=DC=DF
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1109 File 'unnamed' not attached - you can download it from http://tracker.examp=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1110 le/cgi-bin/roundup.cgi/bugs/file1.
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1111
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1112 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1113 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1114
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1115 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1116 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1117 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1118 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1119 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1120
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1121 def testMultipartCharsetUTF8AttachFile(self):
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
1122 c = b2s(b'umlaut \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f')
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1123 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1124 self._handle_mail(self.multipart_msg_latin1)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1125 messages = self.db.issue.get('1', 'messages')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1126 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1127 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1128 self.assertEqual(len(msg.files), 1)
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1129 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1130 content = '<html>' + c + '</html>\n'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1131 for n, id in enumerate (msg.files):
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1132 f = self.db.file.getnode (id)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1133 self.assertEqual(f.name, name)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1134 self.assertEqual(f.content, content)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1135 self.assertEqual(msg.content, c)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1136 self.compareMessages(self._get_mail(),
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1137 '''FROM: roundup-admin@your.tracker.email.domain.example
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1138 TO: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1139 Content-Type: multipart/mixed; boundary="utf-8"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1140 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1141 To: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1142 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1143 Reply-To: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1144 <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1145 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1146 Message-Id: <followup_dummy_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1147 In-Reply-To: <dummy_test_message_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1148 X-Roundup-Name: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1149 X-Roundup-Loop: hello
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1150 X-Roundup-Issue-Status: chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1151 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1152 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1153
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1154
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1155 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1156 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1157 Content-Type: text/plain; charset="utf-8"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1158 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1159
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1160
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1161 Contrary, Mary <mary@test.test> added the comment:
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1162
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1163 umlaut =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1164
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1165 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1166 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1167
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1168 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1169 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1170 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1171 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1172 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1173 Content-Type: text/html
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1174 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1175 Content-Transfer-Encoding: base64
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1176 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1177 filename="unnamed"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1178
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1179 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1180
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1181 --utf-8--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1182 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1183
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1184 def testMultipartCharsetLatin1AttachFile(self):
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
1185 c = b2s(b'umlaut \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f')
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1186 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1187 self.db.config.MAIL_CHARSET = 'iso-8859-1'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1188 self._handle_mail(self.multipart_msg_latin1)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1189 messages = self.db.issue.get('1', 'messages')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1190 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1191 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1192 self.assertEqual(len(msg.files), 1)
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1193 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1194 content = '<html>' + c + '</html>\n'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1195 for n, id in enumerate (msg.files):
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1196 f = self.db.file.getnode (id)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1197 self.assertEqual(f.name, name)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1198 self.assertEqual(f.content, content)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1199 self.assertEqual(msg.content, c)
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1200 self.compareMessages(self._get_mail(),
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1201 '''FROM: roundup-admin@your.tracker.email.domain.example
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1202 TO: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1203 Content-Type: multipart/mixed; boundary="utf-8"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1204 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1205 To: chef@bork.bork.bork, richard@test.test
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1206 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1207 Reply-To: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1208 <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1209 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1210 Message-Id: <followup_dummy_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1211 In-Reply-To: <dummy_test_message_id>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1212 X-Roundup-Name: Roundup issue tracker
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1213 X-Roundup-Loop: hello
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1214 X-Roundup-Issue-Status: chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1215 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1216 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1217
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1218
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1219 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1220 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1221 Content-Type: text/plain; charset="iso-8859-1"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1222 Content-Transfer-Encoding: quoted-printable
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1223
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1224
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1225 Contrary, Mary <mary@test.test> added the comment:
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1226
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1227 umlaut =E4=F6=FC=C4=D6=DC=DF
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1228
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1229 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1230 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1231
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1232 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1233 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1234 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1235 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1236 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1237 Content-Type: text/html
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1238 MIME-Version: 1.0
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1239 Content-Transfer-Encoding: base64
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1240 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1241 filename="unnamed"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1242
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1243 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1244
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1245 --utf-8--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1246 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1247
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1248 def testMultipartRFC822(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1249 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1250 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1251 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1252 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1253 msg = self.db.msg.getnode (messages[-1])
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
1254 self.assertEqual(len(msg.files), 1)
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1255 name = "Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1256 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1257 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1258 self.assertEqual(f.name, name)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1259 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1260 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1261 '''FROM: roundup-admin@your.tracker.email.domain.example
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1262 TO: chef@bork.bork.bork, richard@test.test
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
1263 Content-Type: multipart/mixed; charset="utf-8"
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1264 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1265 To: chef@bork.bork.bork, richard@test.test
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1266 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1267 Reply-To: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1268 <issue_tracker@your.tracker.email.domain.example>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1269 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1270 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1271 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1272 X-Roundup-Name: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1273 X-Roundup-Loop: hello
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1274 X-Roundup-Issue-Status: chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1275 X-Roundup-Issue-Files: Fwd: Original email subject.eml
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1276 X-Roundup-Issue-Id: 1
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1277
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1278
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1279 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1280 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1281 Content-Type: text/plain; charset="utf-8"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1282 Content-Transfer-Encoding: quoted-printable
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1283
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1284
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1285 Contrary, Mary <mary@test.test> added the comment:
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1286
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1287 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1288
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1289 ----------
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1290 status: unread -> chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1291
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1292 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1293 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1294 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1295 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1296 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1297 Content-Type: message/rfc822
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1298 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1299 Content-Disposition: attachment;
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1300 filename="Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1301
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1302 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1303 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1304 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1305 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1306 Date: Mon, 23 Aug 2010 08:23:33 +0200
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1307 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1308
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1309 This is a multi-part message in MIME format.
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1310 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1311 Content-Type: text/plain; charset=ISO-8859-15; format=flowed
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1312 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1313
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1314 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1315 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1316
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1317 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1318 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1319 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1320
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1321 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1322 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1323 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1324 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1325
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1326 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1327
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1328 --utf-8--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1329 ''')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1330
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1331 html_doc='''<html><body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1332 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1333 this must not be in output
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1334 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1335 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1336 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1337 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1338 <div class="header"><h1>Roundup</h1>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1339 <div id="searchbox" style="display: none">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1340 <form class="search" action="../search.html" method="get">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1341 <input type="text" name="q" size="18" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1342 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1343 <input type="hidden" name="check_keywords" value="yes" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1344 <input type="hidden" name="area" value="default" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1345 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1346 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1347 <script type="text/javascript">$('#searchbox').show(0);</script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1348 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1349 <ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1350 <li class="toctree-l1"><a class="reference internal" href="../index.html">Home</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1351 <li class="toctree-l1"><a class="reference external" href="http://pypi.python.org/pypi/roundup">Download</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1352 <li class="toctree-l1 current"><a class="reference internal" href="../docs.html">Docs</a><ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1353 <li class="toctree-l2"><a class="reference internal" href="features.html">Roundup Features</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1354 <li class="toctree-l2 current"><a class="current reference internal" href="">Installing Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1355 <li class="toctree-l2"><a class="reference internal" href="upgrading.html">Upgrading to newer versions of Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1356 <li class="toctree-l2"><a class="reference internal" href="FAQ.html">Roundup FAQ</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1357 <li class="toctree-l2"><a class="reference internal" href="user_guide.html">User Guide</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1358 <li class="toctree-l2"><a class="reference internal" href="customizing.html">Customising Roundup</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1359 <li class="toctree-l2"><a class="reference internal" href="admin_guide.html">Administration Guide</a></li>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1360 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1361 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1362 <h2><a class="toc-backref" href="#id5">Prerequisites</a></h2>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1363 <p>Roundup requires Python 2.5 or newer (but not Python 3) with a functioning
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1364 anydbm module. Download the latest version from <a class="reference external" href="http://www.python.org/">http://www.python.org/</a>.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1365 It is highly recommended that users install the latest patch version
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1366 of python as these contain many fixes to serious bugs.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1367 <p>Some variants of Linux will need an additional &#8220;python dev&#8221; package
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1368 installed for Roundup installation to work. Debian and derivatives, are
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1369 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1370 <p>If you&#8217;re on windows, you will either need to be using the ActiveState python
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1371 distribution (at <a class="reference external" href="http://www.activestate.com/Products/ActivePython/">http://www.activestate.com/Products/ActivePython/</a>), or you&#8217;ll
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1372 have to install the win32all package separately (get it from
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1373 <a class="reference external" href="http://starship.python.net/crew/mhammond/win32/">http://starship.python.net/crew/mhammond/win32/</a>).</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1374 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1375 umlaut =E4=F6=FC=C4=D6=DC=DF</body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1376 </html>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1377 '''
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1378 # FIXME append =E4=F6=FC=C4=D6=DC=DF before </body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1379 # to test quoted printable conversion
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1380
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1381 multipart_msg_notext = '''From: mary <mary@test.test>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1382 To: issue_tracker@your.tracker.email.domain.example
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1383 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1384 In-Reply-To: <dummy_test_message_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1385 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1386 Content-Type: multipart/alternative; boundary=001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1387
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1388
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1389 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1390 Content-Type: text/csv; charset=ISO-8859-1
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1391 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1392
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1393 75,23,16,18
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1394
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1395 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1396 Content-Type: text/html; charset=ISO-8859-1
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1397 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1398
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1399 %s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1400 --001485f339f8f361fb049188dbba--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1401 '''%html_doc
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1402
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1403 @skip_beautifulsoup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1404 def testMultipartTextifyHTMLBeautifulSoup(self):
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1405 self.testMultipartTextifyHTML(converter="beautifulsoup")
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1406
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1407 def testMultipartTextifyHTML(self, converter='dehtml'):
6657
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1408 text_fragments = {}
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1409 text_fragments['dehtml'] = ['Roundup\n Home\nDownload\nDocs\nRoundup Features\nInstalling Roundup\nUpgrading to newer versions of Roundup\nRoundup FAQ\nUser Guide\nCustomising Roundup\nAdministration Guide\nPrerequisites\n\nRoundup requires Python 2.5 or newer (but not Python 3) with a functioning\nanydbm module. Download the latest version from http://www.python.org/.\nIt is highly recommended that users install the latest patch version\nof python as these contain many fixes to serious bugs.\n\nSome variants of Linux will need an additional ', ('python dev', u2s(u'\u201cpython dev\u201d')), ' package\ninstalled for Roundup installation to work. Debian and derivatives, are\nknown to require this.\n\nIf you', (u2s(u'\u2019'), ''), 're on windows, you will either need to be using the ActiveState python\ndistribution (at http://www.activestate.com/Products/ActivePython/), or you', (u2s(u'\u2019'), ''), 'll\nhave to install the win32all package separately (get it from\nhttp://starship.python.net/crew/mhammond/win32/).\n\numlaut'] + [b2s(b" \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f")]
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1410 text_fragments['beautifulsoup'] = ['Roundup\nHome\nDownload\nDocs\nRoundup Features\nInstalling Roundup\nUpgrading to newer versions of Roundup\nRoundup FAQ\nUser Guide\nCustomising Roundup\nAdministration Guide\nPrerequisites\nRoundup requires Python 2.5 or newer (but not Python 3) with a functioning\nanydbm module. Download the latest version from\nhttp://www.python.org/\n.\nIt is highly recommended that users install the latest patch version\nof python as these contain many fixes to serious bugs.\nSome variants of Linux will need an additional ', ('python dev', u2s(u'\u201cpython dev\u201d')), ' package\ninstalled for Roundup installation to work. Debian and derivatives, are\nknown to require this.\nIf you', (u2s(u'\u2019'), "'"), 're on windows, you will either need to be using the ActiveState python\ndistribution (at\nhttp://www.activestate.com/Products/ActivePython/\n), or you’ll\nhave to install the win32all package separately (get it from\nhttp://starship.python.net/crew/mhammond/win32/\n).\numlaut'] + [b2s(b" \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f")]
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1411
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1412
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1413 # \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1414 # append above with leading space to end of mycontent. It is the
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1415 # translated content when =E4=F6=FC=C4=D6=DC=DF is added to the html
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1416 # input.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1417 self.doNewIssue()
6657
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1418 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = converter
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1419 self._handle_mail(self.multipart_msg_notext)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1420 messages = self.db.issue.get('1', 'messages')
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1421 messages.sort()
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1422 msg = self.db.msg.getnode(messages[-1])
6657
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1423
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1424 print(msg.content)
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1425 # html converted to utf-8 text
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1426 self.compareStringFragments(msg.content,
6657
2453d7b58a92 Start work on supporting testing of beautifulsoup
John Rouillard <rouilj@ieee.org>
parents: 6365
diff changeset
1427 text_fragments[converter])
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1428 self.assertEqual(msg.type, None)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1429 self.assertEqual(len(msg.files), 2)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1430 name = "unnamed" # no name for any files
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1431 types = { 0: "text/csv", 1: "text/html" }
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1432 # replace quoted printable string at end of html document
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1433 # with it's utf-8 encoded equivalent so comparison
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1434 # works.
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1435 content = { 0: "75,23,16,18\n",
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1436 1: self.html_doc.replace(" =E4=F6=FC=C4=D6=DC=DF",
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1437 b2s(b" \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f")) }
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1438 email_body = {}
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1439 email_body['dehtml'] = '''Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1440 Home
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1441 Download
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1442 Docs
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1443 Roundup Features
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1444 Installing Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1445 Upgrading to newer versions of Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1446 Roundup FAQ
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1447 User Guide
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1448 Customising Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1449 Administration Guide
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1450 Prerequisites
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1451
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1452 Roundup requires Python 2.5 or newer (but not Python 3) with a functioning
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1453 anydbm module. Download the latest version from http://www.python.org/.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1454 It is highly recommended that users install the latest patch version
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1455 of python as these contain many fixes to serious bugs.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1456
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1457 Some variants of Linux will need an additional python dev package
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1458 installed for Roundup installation to work. Debian and derivatives, are
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1459 known to require this.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1460
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1461 If youre on windows, you will either need to be using the ActiveState python
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1462 distribution (at http://www.activestate.com/Products/ActivePython/), or youll
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1463 have to install the win32all package separately (get it from
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1464 http://starship.python.net/crew/mhammond/win32/).
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1465 '''
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1466 email_body['beautifulsoup']='''Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1467 Home
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1468 Download
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1469 Docs
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1470 Roundup Features
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1471 Installing Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1472 Upgrading to newer versions of Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1473 Roundup FAQ
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1474 User Guide
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1475 Customising Roundup
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1476 Administration Guide
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1477 Prerequisites
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1478 Roundup requires Python 2.5 or newer (but not Python 3) with a functioning
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1479 anydbm module. Download the latest version from
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1480 http://www.python.org/
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1481 .
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1482 It is highly recommended that users install the latest patch version
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1483 of python as these contain many fixes to serious bugs.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1484 Some variants of Linux will need an additional python dev package
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1485 installed for Roundup installation to work. Debian and derivatives, are
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1486 known to require this.
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1487 If youre on windows, you will either need to be using the ActiveState python
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1488 distribution (at
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1489 http://www.activestate.com/Products/ActivePython/
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1490 ), or youll
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1491 have to install the win32all package separately (get it from
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1492 http://starship.python.net/crew/mhammond/win32/
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1493 ).'''
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1494
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1495 for n, id in enumerate (msg.files):
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1496 f = self.db.file.getnode (id)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1497 self.assertEqual(f.name, name)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1498 self.assertEqual(f.type, types[n])
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1499 self.assertEqual(f.content, content[n])
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1500
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1501 self.compareMessages(self._get_mail()
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1502 .replace('=E2=80=99', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1503 .replace('=E2=80=9C', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1504 .replace('=E2=80=9D', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1505 .replace('==\n', '===\n\n').replace('=\n', ''),
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1506 '''From roundup-admin@your.tracker.email.domain.example Thu Oct 10 02:42:14 2017
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1507 FROM: roundup-admin@your.tracker.email.domain.example
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1508 TO: chef@bork.bork.bork, richard@test.test
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1509 Content-Type: multipart/mixed; boundary="===============6077820410007357357=="
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1510 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1511 Reply-To: Roundup issue tracker
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1512 <issue_tracker@your.tracker.email.domain.example>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1513 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1514 In-Reply-To: <dummy_test_message_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1515 X-Roundup-issue-status: chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1516 X-Roundup-issue-files: unnamed, unnamed
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1517 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1518 To: chef@bork.bork.bork, richard@test.test
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1519 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1520 Date: Thu, 12 Oct 2017 02:42:14 +0000
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1521 Precedence: bulk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1522 X-Roundup-Name: Roundup issue tracker
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1523 X-Roundup-Loop: hello
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1524 X-Roundup-Version: 1.5.1
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1525 X-Roundup-Issue-Id: 1
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1526
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1527 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1528 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1529 Content-Type: text/plain; charset="utf-8"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1530 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1531
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1532
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1533 Contrary, Mary <mary@test.test> added the comment:
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1534
6670
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1535 ''' + email_body[converter] +
0ef688717613 Add testing for beautifulsoup4 as html -> text converter.
John Rouillard <rouilj@ieee.org>
parents: 6657
diff changeset
1536 '''
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1537 umlaut =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1538
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1539 ----------
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1540 status: unread -> chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1541
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1542 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1543 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1544 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1545 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1546 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1547 Content-Type: text/csv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1548 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1549 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1550 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1551 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1552
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1553 NzUsMjMsMTYsMTgK
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1554
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1555 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1556 Content-Type: text/html
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1557 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1558 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1559 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1560 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1561
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1562 PGh0bWw+PGJvZHk+CjxzY3JpcHQ+CnRoaXMgbXVzdCBub3QgYmUgaW4gb3V0cHV0Cjwvc2NyaXB0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1563 Pgo8c3R5bGU+CnAge2Rpc3BsYXk6YmxvY2t9Cjwvc3R5bGU+CiAgICA8ZGl2IGNsYXNzPSJoZWFk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1564 ZXIiPjxoMT5Sb3VuZHVwPC9oMT4KICAgICAgICA8ZGl2IGlkPSJzZWFyY2hib3giIHN0eWxlPSJk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1565 aXNwbGF5OiBub25lIj4KICAgICAgICAgIDxmb3JtIGNsYXNzPSJzZWFyY2giIGFjdGlvbj0iLi4v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1566 c2VhcmNoLmh0bWwiIG1ldGhvZD0iZ2V0Ij4KICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQi
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1567 IG5hbWU9InEiIHNpemU9IjE4IiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiB2
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1568 YWx1ZT0iU2VhcmNoIiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1569 aGVja19rZXl3b3JkcyIgdmFsdWU9InllcyIgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9Imhp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1570 ZGRlbiIgbmFtZT0iYXJlYSIgdmFsdWU9ImRlZmF1bHQiIC8+CiAgICAgICAgICA8L2Zvcm0+CiAg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1571 ICAgICAgPC9kaXY+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoJyNz
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1572 ZWFyY2hib3gnKS5zaG93KDApOzwvc2NyaXB0PgogICAgPC9kaXY+CiAgICAgICA8dWwgY2xhc3M9
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1573 ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUtbDEiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1574 ZXJuYWwiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkhvbWU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1575 cmVlLWwxIj48YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJodHRwOi8vcHlwaS5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1576 eXRob24ub3JnL3B5cGkvcm91bmR1cCI+RG93bmxvYWQ8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1577 cmVlLWwxIGN1cnJlbnQiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9Ii4uL2Rv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1578 Y3MuaHRtbCI+RG9jczwvYT48dWwgY2xhc3M9ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUt
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1579 bDIiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9ImZlYXR1cmVzLmh0bWwiPlJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1580 dW5kdXAgRmVhdHVyZXM8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIGN1cnJlbnQiPjxh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1581 IGNsYXNzPSJjdXJyZW50IHJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iIj5JbnN0YWxsaW5nIFJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1582 dW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1583 IGludGVybmFsIiBocmVmPSJ1cGdyYWRpbmcuaHRtbCI+VXBncmFkaW5nIHRvIG5ld2VyIHZlcnNp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1584 b25zIG9mIFJvdW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0i
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1585 cmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJGQVEuaHRtbCI+Um91bmR1cCBGQVE8L2E+PC9saT4K
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1586 PGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVm
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1587 PSJ1c2VyX2d1aWRlLmh0bWwiPlVzZXIgR3VpZGU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1588 LWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJjdXN0b21pemluZy5odG1s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1589 Ij5DdXN0b21pc2luZyBSb3VuZHVwPC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jdHJlZS1sMiI+PGEg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1590 Y2xhc3M9InJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iYWRtaW5fZ3VpZGUuaHRtbCI+QWRtaW5p
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1591 c3RyYXRpb24gR3VpZGU8L2E+PC9saT4KPC91bD4KPGRpdiBjbGFzcz0ic2VjdGlvbiIgaWQ9InBy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1592 ZXJlcXVpc2l0ZXMiPgo8aDI+PGEgY2xhc3M9InRvYy1iYWNrcmVmIiBocmVmPSIjaWQ1Ij5QcmVy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1593 ZXF1aXNpdGVzPC9hPjwvaDI+CjxwPlJvdW5kdXAgcmVxdWlyZXMgUHl0aG9uIDIuNSBvciBuZXdl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1594 ciAoYnV0IG5vdCBQeXRob24gMykgd2l0aCBhIGZ1bmN0aW9uaW5nCmFueWRibSBtb2R1bGUuIERv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1595 d25sb2FkIHRoZSBsYXRlc3QgdmVyc2lvbiBmcm9tIDxhIGNsYXNzPSJyZWZlcmVuY2UgZXh0ZXJu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1596 YWwiIGhyZWY9Imh0dHA6Ly93d3cucHl0aG9uLm9yZy8iPmh0dHA6Ly93d3cucHl0aG9uLm9yZy88
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1597 L2E+LgpJdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdGhhdCB1c2VycyBpbnN0YWxsIHRoZSBsYXRl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1598 c3QgcGF0Y2ggdmVyc2lvbgpvZiBweXRob24gYXMgdGhlc2UgY29udGFpbiBtYW55IGZpeGVzIHRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1599 IHNlcmlvdXMgYnVncy48L3A+CjxwPlNvbWUgdmFyaWFudHMgb2YgTGludXggd2lsbCBuZWVkIGFu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1600 IGFkZGl0aW9uYWwgJiM4MjIwO3B5dGhvbiBkZXYmIzgyMjE7IHBhY2thZ2UKaW5zdGFsbGVkIGZv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1601 ciBSb3VuZHVwIGluc3RhbGxhdGlvbiB0byB3b3JrLiBEZWJpYW4gYW5kIGRlcml2YXRpdmVzLCBh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1602 cmUKa25vd24gdG8gcmVxdWlyZSB0aGlzLjwvcD4KPHA+SWYgeW91JiM4MjE3O3JlIG9uIHdpbmRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1603 d3MsIHlvdSB3aWxsIGVpdGhlciBuZWVkIHRvIGJlIHVzaW5nIHRoZSBBY3RpdmVTdGF0ZSBweXRo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1604 b24KZGlzdHJpYnV0aW9uIChhdCA8YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1605 dHRwOi8vd3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vIj5odHRwOi8v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1606 d3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vPC9hPiksIG9yIHlvdSYj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1607 ODIxNztsbApoYXZlIHRvIGluc3RhbGwgdGhlIHdpbjMyYWxsIHBhY2thZ2Ugc2VwYXJhdGVseSAo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1608 Z2V0IGl0IGZyb20KPGEgY2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cDovL3N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1609 YXJzaGlwLnB5dGhvbi5uZXQvY3Jldy9taGFtbW9uZC93aW4zMi8iPmh0dHA6Ly9zdGFyc2hpcC5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1610 eXRob24ubmV0L2NyZXcvbWhhbW1vbmQvd2luMzIvPC9hPikuPC9wPgo8L2Rpdj4KdW1sYXV0IMOk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1611 w7bDvMOEw5bDnMOfPC9ib2R5Pgo8L2h0bWw+Cg==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1612
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1613 --===============6077820410007357357==--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1614 ''')
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1615
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1616
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1617 def testMultipartRFC822Unpack(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1618 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1619 self.db.config.MAILGW_UNPACK_RFC822 = True
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1620 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1621 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1622 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1623 msg = self.db.msg.getnode (messages[-1])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1624 self.assertEqual(len(msg.files), 2)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1625 t = 'some text in inner email\n========================\n'
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1626 content = {0 : t, 1 : '<html>\n' + t + '</html>\n'}
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1627 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1628 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1629 self.assertEqual(f.name, 'unnamed')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1630 if n in content :
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1631 self.assertEqual(f.content, content [n])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1632 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1633
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1634 def testSimpleFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1635 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1636 self._handle_mail('''Content-Type: text/plain;
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1637 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1638 From: mary <mary@test.test>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
1639 To: issue_tracker@your.tracker.email.domain.example
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1640 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1641 In-Reply-To: <dummy_test_message_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1642 Subject: [issue1] Testing...
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1643
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1644 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1645 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1646 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
1647 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1648 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
1649 Content-Type: text/plain; charset="utf-8"
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1650 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1651 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1652 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1653 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1654 <issue_tracker@your.tracker.email.domain.example>
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1655 MIME-Version: 1.0
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1656 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1657 In-Reply-To: <dummy_test_message_id>
613
d77b82588bf0 Fixed the unit tests for the mailgw re: the x-roundup-name header.
Richard Jones <richard@users.sourceforge.net>
parents: 609
diff changeset
1658 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
1659 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1660 X-Roundup-Issue-Status: chatting
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
1661 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1662 X-Roundup-Issue-Id: 1
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1663
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1664
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1665 Contrary, Mary <mary@test.test> added the comment:
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1666
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1667 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1668
571
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1669 ----------
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1670 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1671
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1672 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1673 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
1674 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1675 _______________________________________________________________________
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
1676 ''')
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1677
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1678 def testFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1679 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1680
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1681 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1682 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1683 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1684 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1685 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1686 In-Reply-To: <dummy_test_message_id>
857
6dd691e37aa8 Fixed the unit tests for the new multilist controls in the mailgw
Richard Jones <richard@users.sourceforge.net>
parents: 824
diff changeset
1687 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1688
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1689 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1690 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1691 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1692 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1693 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1694 self.john_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1695
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1696 self.compareMessages(self._get_mail(),
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1697 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1698 TO: chef@bork.bork.bork, john@test.test, mary@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
1699 Content-Type: text/plain; charset="utf-8"
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1700 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1701 To: chef@bork.bork.bork, john@test.test, mary@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1702 From: richard <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1703 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1704 <issue_tracker@your.tracker.email.domain.example>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1705 MIME-Version: 1.0
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1706 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1707 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1708 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
1709 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1710 X-Roundup-Issue-Status: chatting
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1711 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1712 X-Roundup-Issue-Id: 1
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1713
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1714
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1715 richard <richard@test.test> added the comment:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1716
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1717 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1718
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1719 ----------
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1720 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
1721 nosy: +john, mary
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1722 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1723
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1724 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1725 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
1726 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1727 _______________________________________________________________________
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1728 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1729
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1730 def testFollowupUTF8(self):
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1731 self.doNewIssue()
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1732
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1733 self._handle_mail('''Content-Type: text/plain;
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1734 charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1735 Content-Transfer-Encoding: quoted-printable
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1736 From: richard <richard@test.test>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1737 To: issue_tracker@your.tracker.email.domain.example
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1738 Message-Id: <followup_dummy_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1739 In-Reply-To: <dummy_test_message_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1740 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1741
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1742 This is a followup with UTF-8 characters in it:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1743 =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1744 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1745 l = self.db.issue.get('1', 'nosy')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1746 l.sort()
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1747 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1748 self.john_id])
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1749
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1750 self.compareMessages(self._get_mail(),
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1751 '''FROM: roundup-admin@your.tracker.email.domain.example
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1752 TO: chef@bork.bork.bork, john@test.test, mary@test.test
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1753 Content-Type: text/plain; charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1754 Subject: [issue1] Testing...
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1755 To: chef@bork.bork.bork, john@test.test, mary@test.test
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1756 From: richard <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1757 Reply-To: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1758 <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1759 MIME-Version: 1.0
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1760 Message-Id: <followup_dummy_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1761 In-Reply-To: <dummy_test_message_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1762 X-Roundup-Name: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1763 X-Roundup-Loop: hello
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1764 X-Roundup-Issue-Status: chatting
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1765 Content-Transfer-Encoding: quoted-printable
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1766 X-Roundup-Issue-Id: 1
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1767
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1768
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1769 richard <richard@test.test> added the comment:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1770
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1771 This is a followup with UTF-8 characters in it:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1772 =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1773
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1774 ----------
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1775 assignedto: -> mary
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1776 nosy: +john, mary
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1777 status: unread -> chatting
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1778
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1779 _______________________________________________________________________
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1780 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1781 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1782 _______________________________________________________________________
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1783 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1784
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1785 def testFollowupNoSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1786 self.db.config.MAILGW_SUBJECT_UPDATES_TITLE = 'no'
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1787 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1788
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1789 self._handle_mail('''Content-Type: text/plain;
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1790 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1791 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1792 To: issue_tracker@your.tracker.email.domain.example
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1793 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1794 In-Reply-To: <dummy_test_message_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1795 Subject: [issue1] Wrzlbrmft... [assignedto=mary; nosy=+john]
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1796
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1797 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1798 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1799 l = self.db.issue.get('1', 'nosy')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1800 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1801 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1802 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1803
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1804 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1805 '''FROM: roundup-admin@your.tracker.email.domain.example
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1806 TO: chef@bork.bork.bork, john@test.test, mary@test.test
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1807 Content-Type: text/plain; charset="utf-8"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1808 Subject: [issue1] Testing...
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1809 To: chef@bork.bork.bork, john@test.test, mary@test.test
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1810 From: richard <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1811 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1812 <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1813 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1814 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1815 In-Reply-To: <dummy_test_message_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1816 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1817 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1818 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1819 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1820 X-Roundup-Issue-Id: 1
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1821
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1822 richard <richard@test.test> added the comment:
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1823
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1824 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1825
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1826 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1827 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1828 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1829 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1830
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1831 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1832 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1833 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1834 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1835 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1836 self.assertEqual(self.db.issue.get('1','title'), 'Testing...')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1837
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1838 def testFollowupExplicitSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1839 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1840
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1841 self._handle_mail('''Content-Type: text/plain;
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1842 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1843 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1844 To: issue_tracker@your.tracker.email.domain.example
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1845 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1846 In-Reply-To: <dummy_test_message_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1847 Subject: [issue1] Wrzlbrmft... [assignedto=mary; nosy=+john; title=new title]
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1848
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1849 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1850 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1851 l = self.db.issue.get('1', 'nosy')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1852 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1853 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1854 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1855
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1856 # check that the message has the right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1857 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1858 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1859
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1860 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1861 '''FROM: roundup-admin@your.tracker.email.domain.example
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1862 TO: chef@bork.bork.bork, john@test.test, mary@test.test
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1863 Content-Type: text/plain; charset="utf-8"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1864 Subject: [issue1] new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1865 To: chef@bork.bork.bork, john@test.test, mary@test.test
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1866 From: richard <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1867 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1868 <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1869 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1870 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1871 In-Reply-To: <dummy_test_message_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1872 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1873 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1874 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1875 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1876 X-Roundup-Issue-Id: 1
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1877
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1878 richard <richard@test.test> added the comment:
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1879
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1880 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1881
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1882 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1883 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1884 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1885 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1886 title: Testing... -> new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1887
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1888 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1889 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1890 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1891 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1892 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1893
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1894 def testNosyGeneration(self):
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1895 self.db.tx_Source = "email"
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1896 self.db.issue.create(title='test')
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1897
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1898 # create a nosy message
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1899 msg = self.db.msg.create(content='This is a test',
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1900 author=self.richard_id, messageid='<dummy_test_message_id>')
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1901 self.db.journaltag = 'richard'
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1902 l = self.db.issue.create(title='test', messages=[msg],
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1903 nosy=[self.chef_id, self.mary_id, self.john_id])
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1904
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1905
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1906 # check that message has right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1907 self.assertEqual(self.db.msg.get('1', 'tx_Source'), 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1908
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1909 self.compareMessages(self._get_mail(),
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1910 '''FROM: roundup-admin@your.tracker.email.domain.example
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1911 TO: chef@bork.bork.bork, john@test.test, mary@test.test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1912 Content-Type: text/plain; charset="utf-8"
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1913 Subject: [issue2] test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1914 To: chef@bork.bork.bork, john@test.test, mary@test.test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1915 From: richard <issue_tracker@your.tracker.email.domain.example>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1916 Reply-To: Roundup issue tracker
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1917 <issue_tracker@your.tracker.email.domain.example>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1918 MIME-Version: 1.0
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1919 Message-Id: <dummy_test_message_id>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1920 X-Roundup-Name: Roundup issue tracker
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1921 X-Roundup-Loop: hello
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1922 X-Roundup-Issue-Status: unread
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1923 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1924 X-Roundup-Issue-Id: 2
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1925
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1926
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1927 New submission from richard <richard@test.test>:
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1928
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1929 This is a test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1930
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1931 ----------
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1932 messages: 1
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1933 nosy: Chef, john, mary, richard
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1934 status: unread
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1935 title: test
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1936 tx_Source: email
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1937
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1938 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1939 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1940 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue2>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1941 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1942 ''')
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1943
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1944 def testNosyMessageCcBccEtc(self):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1945 self.doNewIssue()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1946 oldvalues = self.db.getnode('issue', '1').copy()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1947 oldvalues['assignedto'] = None
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1948 # reconstruct old behaviour: This would reuse the
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1949 # database-handle from the doNewIssue above which has committed
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1950 # as user "Chef". So we close and reopen the db as that user.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1951 #self.db.close() actually don't close 'cos this empties memorydb
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1952 self.db = self.instance.open('Chef')
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1953 self.db.issue.set('1', assignedto=self.chef_id)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1954 self.db.commit()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1955 # note user 3 is both in cc and bcc. The one in cc takes
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1956 # precedence and stops the bcc copy from being sent to user 3..
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1957 # new email is generated for bcc peoples: admin and kermit
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1958 # get it.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1959 self.db.issue.nosymessage('1', None, oldvalues,
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1960 cc=['3','4', '5'], bcc=['1', '3', '5'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1961 cc_emails=['john@example.com'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1962 bcc_emails=["kermit@example.com"])
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1963 new_mail = ""
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1964 for line in self._get_mail().split("\n"):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1965 if "Message-Id: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1966 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1967 if "Date: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1968 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1969 new_mail += line+"\n"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1970
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1971 # new_mail is a mbox style string with 2 emails.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1972 # we need to split the emails and compare.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1973 new_mails=new_mail.split("\nFrom ")
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1974 # restore the "From " prefix removed from first line of
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1975 # second message by strip.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1976 new_mails[1]="From " + new_mail.split("\nFrom ")[1]
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1977
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1978 self.compareMessages(new_mails[0], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1979 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1980 TO: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1981 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1982 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1983 To: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1984 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1985 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1986 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1987 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1988 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1989 X-Roundup-Issue-Id: 1
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1990 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1991 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1992 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1993 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1994 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1995
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1996
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1997 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1998
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1999
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2000 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2001 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2002
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2003 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2004 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2005 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2006 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2007 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2008
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2009 self.compareMessages(new_mails[1], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2010 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2011 TO: admin@test.com, kermit@example.com
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2012 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2013 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2014 To: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2015 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2016 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2017 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2018 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2019 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2020 X-Roundup-Issue-Id: 1
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2021 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2022 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2023 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2024 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2025 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2026
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2027
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2028 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2029
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2030
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2031 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2032 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2033
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2034 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2035 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2036 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2037 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2038 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2039
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
2040
5675
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2041 def testNosyMessageNoteFilter(self):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2042 def note_filter(original_note, issue_id, db, newvalues, oldvalues):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2043 return 'This content came from note_filter().'
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2044 self.doNewIssue()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2045 oldvalues = self.db.getnode('issue', '1').copy()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2046 oldvalues['assignedto'] = None
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2047 # reconstruct old behaviour: This would reuse the
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2048 # database-handle from the doNewIssue above which has committed
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2049 # as user "Chef". So we close and reopen the db as that user.
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2050 #self.db.close() actually don't close 'cos this empties memorydb
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2051 self.db = self.instance.open('Chef')
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2052 self.db.issue.set('1', assignedto=self.chef_id)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2053 self.db.commit()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2054 self.db.issue.nosymessage('1', None, oldvalues,
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2055 cc=['3','4', '5'],
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2056 cc_emails=['john@example.com'],
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2057 note_filter=note_filter)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2058 new_mail = ""
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2059 # Message-Id: and Date: change every time - remove them.
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2060 for line in self._get_mail().split("\n"):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2061 if "Message-Id: " in line:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2062 continue
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2063 if "Date: " in line:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2064 continue
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2065 new_mail += line+"\n"
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2066
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2067 self.compareMessages(new_mail, """
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2068 FROM: roundup-admin@your.tracker.email.domain.example
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2069 TO: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2070 Content-Type: text/plain; charset="utf-8"
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2071 Subject: [issue1] Testing...
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2072 To: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2073 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2074 X-Roundup-Name: Roundup issue tracker
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2075 X-Roundup-Loop: hello
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2076 X-Roundup-Issue-Status: unread
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2077 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2078 X-Roundup-Issue-Id: 1
5675
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2079 In-Reply-To: <dummy_test_message_id>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2080 MIME-Version: 1.0
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2081 Reply-To: Roundup issue tracker
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2082 <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2083 Content-Transfer-Encoding: quoted-printable
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2084
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2085
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2086 Change by Bork, Chef <chef@bork.bork.bork>:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2087
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2088 This content came from note_filter().
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2089
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2090 _______________________________________________________________________
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2091 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2092 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2093 _______________________________________________________________________
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2094 """)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2095
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2096
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2097 def testPropertyChangeOnly(self):
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2098 self.doNewIssue()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2099 oldvalues = self.db.getnode('issue', '1').copy()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2100 oldvalues['assignedto'] = None
4211
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
2101 # reconstruct old behaviour: This would reuse the
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
2102 # database-handle from the doNewIssue above which has committed
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
2103 # as user "Chef". So we close and reopen the db as that user.
4350
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
2104 #self.db.close() actually don't close 'cos this empties memorydb
4211
61cf00ca920a Process each message through the mail gateway as a separate transaction.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4093
diff changeset
2105 self.db = self.instance.open('Chef')
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2106 self.db.issue.set('1', assignedto=self.chef_id)
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2107 self.db.commit()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2108 self.db.issue.nosymessage('1', None, oldvalues)
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2109
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2110 new_mail = ""
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2111 for line in self._get_mail().split("\n"):
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2112 if "Message-Id: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2113 continue
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2114 if "Date: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2115 continue
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
2116 new_mail += line+"\n"
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2117
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2118 self.compareMessages(new_mail, """
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2119 FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2120 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2121 Content-Type: text/plain; charset="utf-8"
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2122 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2123 To: chef@bork.bork.bork, richard@test.test
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2124 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2125 X-Roundup-Name: Roundup issue tracker
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2126 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2127 X-Roundup-Issue-Status: unread
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2128 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2129 X-Roundup-Issue-Id: 1
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
2130 In-Reply-To: <dummy_test_message_id>
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2131 MIME-Version: 1.0
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2132 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2133 <issue_tracker@your.tracker.email.domain.example>
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2134 Content-Transfer-Encoding: quoted-printable
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2135
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2136
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2137 Change by Bork, Chef <chef@bork.bork.bork>:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2138
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2139
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2140 ----------
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2141 assignedto: -> Chef
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2142
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2143 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2144 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2145 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2146 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2147 """)
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
2148
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2149
5081
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2150 def testNosyMessageSettingSubject(self):
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2151 self.doNewIssue()
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2152 oldvalues = self.db.getnode('issue', '1').copy()
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2153 oldvalues['assignedto'] = None
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2154 # reconstruct old behaviour: This would reuse the
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2155 # database-handle from the doNewIssue above which has committed
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2156 # as user "Chef". So we close and reopen the db as that user.
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2157 #self.db.close() actually don't close 'cos this empties memorydb
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2158 self.db = self.instance.open('Chef')
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2159 self.db.issue.set('1', assignedto=self.chef_id)
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2160 self.db.commit()
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2161 self.db.issue.nosymessage('1', None, oldvalues, subject="test")
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2162
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2163 new_mail = ""
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2164 for line in self._get_mail().split("\n"):
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2165 if "Message-Id: " in line:
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2166 continue
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2167 if "Date: " in line:
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2168 continue
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2169 new_mail += line+"\n"
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2170
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2171 self.compareMessages(new_mail, """
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2172 FROM: roundup-admin@your.tracker.email.domain.example
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2173 TO: chef@bork.bork.bork, richard@test.test
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2174 Content-Type: text/plain; charset="utf-8"
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2175 Subject: test
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2176 To: chef@bork.bork.bork, richard@test.test
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2177 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2178 X-Roundup-Name: Roundup issue tracker
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2179 X-Roundup-Loop: hello
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2180 X-Roundup-Issue-Status: unread
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2181 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2182 X-Roundup-Issue-Id: 1
5081
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2183 In-Reply-To: <dummy_test_message_id>
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2184 MIME-Version: 1.0
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2185 Reply-To: Roundup issue tracker
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2186 <issue_tracker@your.tracker.email.domain.example>
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2187 Content-Transfer-Encoding: quoted-printable
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2188
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2189
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2190 Change by Bork, Chef <chef@bork.bork.bork>:
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2191
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2192
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2193 ----------
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2194 assignedto: -> Chef
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2195
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2196 _______________________________________________________________________
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2197 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2198 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2199 _______________________________________________________________________
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2200 """)
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2201
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2202 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2203 # FOLLOWUP TITLE MATCH
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2204 #
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
2205 def testFollowupTitleMatch(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2206 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2207 self._handle_mail('''Content-Type: text/plain;
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2208 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2209 From: richard <richard@test.test>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2210 To: issue_tracker@your.tracker.email.domain.example
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2211 Message-Id: <followup_dummy_id>
857
6dd691e37aa8 Fixed the unit tests for the new multilist controls in the mailgw
Richard Jones <richard@users.sourceforge.net>
parents: 824
diff changeset
2212 Subject: Re: Testing... [assignedto=mary; nosy=+john]
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2213
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2214 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2215 ''')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2216
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2217 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2218 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2219
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2220 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2221 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2222 TO: chef@bork.bork.bork, john@test.test, mary@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2223 Content-Type: text/plain; charset="utf-8"
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2224 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2225 To: chef@bork.bork.bork, john@test.test, mary@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2226 From: richard <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2227 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2228 <issue_tracker@your.tracker.email.domain.example>
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2229 MIME-Version: 1.0
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2230 Message-Id: <followup_dummy_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2231 In-Reply-To: <dummy_test_message_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2232 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2233 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2234 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2235 X-Roundup-Issue-Status: chatting
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
2236 Content-Transfer-Encoding: quoted-printable
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2237
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2238
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2239 richard <richard@test.test> added the comment:
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2240
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2241 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2242
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2243 ----------
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2244 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
2245 nosy: +john, mary
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2246 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2247
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2248 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2249 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2250 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2251 _______________________________________________________________________
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
2252 ''')
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2253
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2254 def testFollowupTitleMatchMultiRe(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2255 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2256 nodeid2 = self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2257 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2258 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2259 To: issue_tracker@your.tracker.email.domain.example
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2260 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2261 Subject: Re: Testing... [assignedto=mary; nosy=+john]
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2262
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2263 This is a followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2264 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2265
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2266 nodeid3 = self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2267 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2268 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2269 To: issue_tracker@your.tracker.email.domain.example
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2270 Message-Id: <followup2_dummy_id>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2271 Subject: Ang: Re: Testing...
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2272
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2273 This is a followup
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2274 ''')
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2275 self.assertEqual(nodeid1, nodeid2)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2276 self.assertEqual(nodeid1, nodeid3)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2277
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2278 def testFollowupTitleMatchNever(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2279 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2280 self.db.config.MAILGW_SUBJECT_CONTENT_MATCH = 'never'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2281 self.assertNotEqual(self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2282 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2283 From: richard <richard@test.test>
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2284 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2285 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2286 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2287
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2288 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2289 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2290
3678
9365dcf5d587 don't supply an In-Reply-To when testing Subject matching
Richard Jones <richard@users.sourceforge.net>
parents: 3579
diff changeset
2291 def testFollowupTitleMatchNeverInterval(self):
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2292 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2293 # force failure of the interval
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2294 time.sleep(2)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2295 self.db.config.MAILGW_SUBJECT_CONTENT_MATCH = 'creation 00:00:01'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2296 self.assertNotEqual(self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2297 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2298 From: richard <richard@test.test>
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2299 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2300 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2301 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2302
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2303 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2304 '''), nodeid)
4005
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2305
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2306
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2307 def testFollowupTitleMatchInterval(self):
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2308 nodeid = self.doNewIssue()
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2309 self.db.config.MAILGW_SUBJECT_CONTENT_MATCH = 'creation +1d'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2310 self.assertEqual(self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2311 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2312 From: richard <richard@test.test>
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2313 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2314 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2315 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2316
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2317 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2318 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2319
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2320 simple_followup = '''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2321 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2322 From: john@test.test
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2323 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2324 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2325 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2326 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2327
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2328 This is a followup
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2329 '''
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2330
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2331 def testFollowupNosyAuthor(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2332 self.doNewIssue()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2333 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2334 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2335 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2336 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2337 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2338 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2339 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2340 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2341 From: John Doe <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2342 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2343 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2344 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2345 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2346 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2347 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2348 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2349 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2350 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2351 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2352
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2353
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2354 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2355
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2356 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2357
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2358 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2359 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2360 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2361
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2362 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2363 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2364 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2365 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2366
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2367 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2368
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2369 def testFollowupNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2370 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2371 self.db.config.ADD_RECIPIENTS_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2372 self._handle_mail('''Content-Type: text/plain;
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2373 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2374 From: richard@test.test
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2375 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2376 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2377 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2378 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2379 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2380
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2381 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2382 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2383 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2384 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2385 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2386 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2387 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2388 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2389 From: richard <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2390 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2391 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2392 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2393 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2394 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2395 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2396 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2397 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2398 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2399 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2400
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2401
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2402 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2403
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2404 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2405
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2406 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2407 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2408 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2409
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2410 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2411 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2412 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2413 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2414
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2415 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2416
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2417 def testFollowupNosyAuthorAndCopy(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2418 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2419 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2420 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2421 self._handle_mail(self.simple_followup)
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2422 self.compareMessages(self._get_mail(),
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2423 '''FROM: roundup-admin@your.tracker.email.domain.example
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2424 TO: chef@bork.bork.bork, john@test.test, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2425 Content-Type: text/plain; charset="utf-8"
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2426 Subject: [issue1] Testing...
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2427 To: chef@bork.bork.bork, john@test.test, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2428 From: John Doe <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2429 Reply-To: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2430 <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2431 MIME-Version: 1.0
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2432 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2433 In-Reply-To: <dummy_test_message_id>
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2434 X-Roundup-Name: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2435 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2436 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2437 X-Roundup-Issue-Status: chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2438 Content-Transfer-Encoding: quoted-printable
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2439
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2440
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2441 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2442
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2443 This is a followup
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2444
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2445 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2446 nosy: +john
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2447 status: unread -> chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2448
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2449 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2450 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2451 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2452 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2453
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2454 ''')
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2455
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2456 def testFollowupNosyAuthorNosyCopy(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2457 self.doNewIssue()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2458 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2459 self.db.config.MESSAGES_TO_AUTHOR = 'nosy'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2460 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2461 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2462 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2463 TO: chef@bork.bork.bork, john@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2464 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2465 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2466 To: chef@bork.bork.bork, john@test.test, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2467 From: John Doe <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2468 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2469 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2470 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2471 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2472 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2473 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2474 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2475 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2476 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2477 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2478
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2479
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2480 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2481
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2482 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2483
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2484 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2485 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2486 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2487
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2488 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2489 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2490 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2491 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2492
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2493 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2494
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2495 def testFollowupNoNosyAuthor(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2496 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2497 self.instance.config.ADD_AUTHOR_TO_NOSY = 'no'
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2498 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2499 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2500 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2501 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2502 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2503 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2504 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2505 From: John Doe <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2506 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2507 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2508 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2509 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2510 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2511 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2512 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2513 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2514 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2515 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2516
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2517
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2518 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2519
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2520 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2521
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2522 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2523 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2524
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2525 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2526 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2527 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2528 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2529
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2530 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2531
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2532 def testFollowupNoNosyAuthorNoCopy(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2533 self.doNewIssue()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2534 self.instance.config.ADD_AUTHOR_TO_NOSY = 'no'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2535 self.instance.config.MESSAGES_TO_AUTHOR = 'nosy'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2536 self._handle_mail(self.simple_followup)
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2537 self.compareMessages(self._get_mail(),
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2538 '''FROM: roundup-admin@your.tracker.email.domain.example
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2539 TO: chef@bork.bork.bork, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2540 Content-Type: text/plain; charset="utf-8"
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2541 Subject: [issue1] Testing...
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2542 To: chef@bork.bork.bork, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2543 From: John Doe <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2544 Reply-To: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2545 <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2546 MIME-Version: 1.0
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2547 Message-Id: <followup_dummy_id>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2548 In-Reply-To: <dummy_test_message_id>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2549 X-Roundup-Name: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2550 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2551 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2552 X-Roundup-Issue-Status: chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2553 Content-Transfer-Encoding: quoted-printable
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2554
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2555
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2556 John Doe <john@test.test> added the comment:
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2557
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2558 This is a followup
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2559
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2560 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2561 status: unread -> chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2562
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2563 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2564 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2565 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2566 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2567
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2568 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2569
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2570 # this is a pathological case where the author is *not* on the nosy
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2571 # list but gets the message; test documents existing behaviour
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2572 def testFollowupNoNosyAuthorButCopy(self):
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2573 self.doNewIssue()
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2574 self.instance.config.ADD_AUTHOR_TO_NOSY = 'no'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2575 self.instance.config.MESSAGES_TO_AUTHOR = 'yes'
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2576 self._handle_mail(self.simple_followup)
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2577 self.compareMessages(self._get_mail(),
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2578 '''FROM: roundup-admin@your.tracker.email.domain.example
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2579 TO: chef@bork.bork.bork, john@test.test, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2580 Content-Type: text/plain; charset="utf-8"
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2581 Subject: [issue1] Testing...
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2582 To: chef@bork.bork.bork, john@test.test, richard@test.test
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2583 From: John Doe <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2584 Reply-To: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2585 <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2586 MIME-Version: 1.0
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2587 Message-Id: <followup_dummy_id>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2588 In-Reply-To: <dummy_test_message_id>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2589 X-Roundup-Name: Roundup issue tracker
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2590 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2591 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2592 X-Roundup-Issue-Status: chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2593 Content-Transfer-Encoding: quoted-printable
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2594
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2595
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2596 John Doe <john@test.test> added the comment:
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2597
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2598 This is a followup
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2599
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2600 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2601 status: unread -> chatting
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2602
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2603 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2604 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2605 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2606 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2607
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2608 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2609
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2610 def testFollowupNoNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2611 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2612 self.instance.config.ADD_RECIPIENTS_TO_NOSY = 'no'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2613 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2614 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2615 From: richard@test.test
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2616 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2617 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2618 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2619 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2620 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2621
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2622 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2623 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2624 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
2625 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2626 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2627 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2628 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2629 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2630 From: richard <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2631 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2632 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2633 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2634 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2635 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2636 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
2637 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2638 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2639 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2640 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2641
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2642
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2643 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2644
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2645 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2646
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2647 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2648 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2649
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2650 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2651 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
2652 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2653 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2654
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2655 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2656
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2657 def testFollowupEmptyMessage(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2658 self.doNewIssue()
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2659
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2660 self._handle_mail('''Content-Type: text/plain;
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2661 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2662 From: richard <richard@test.test>
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2663 To: issue_tracker@your.tracker.email.domain.example
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2664 Message-Id: <followup_dummy_id>
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2665 In-Reply-To: <dummy_test_message_id>
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2666 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2667
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2668 ''')
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2669 l = self.db.issue.get('1', 'nosy')
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2670 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2671 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2672 self.john_id])
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2673
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2674 # should be no file created (ie. no message)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2675 assert not os.path.exists(SENDMAILDEBUG)
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2676
3579
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2677 def testFollowupEmptyMessageNoSubject(self):
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2678 self.doNewIssue()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2679
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2680 self._handle_mail('''Content-Type: text/plain;
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2681 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2682 From: richard <richard@test.test>
3579
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2683 To: issue_tracker@your.tracker.email.domain.example
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2684 Message-Id: <followup_dummy_id>
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2685 In-Reply-To: <dummy_test_message_id>
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2686 Subject: [issue1] [assignedto=mary; nosy=+john]
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2687
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2688 ''')
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2689 l = self.db.issue.get('1', 'nosy')
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2690 l.sort()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2691 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2692 self.john_id])
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2693
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2694 # should be no file created (ie. no message)
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2695 assert not os.path.exists(SENDMAILDEBUG)
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2696
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2697 def testNosyRemove(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2698 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2699
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2700 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2701 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2702 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2703 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2704 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2705 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2706 Subject: [issue1] Testing... [nosy=-richard]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2707
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2708 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2709 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2710 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2711 self.assertEqual(l, [self.chef_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2712
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2713 # NO NOSY MESSAGE SHOULD BE SENT!
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2714 assert not os.path.exists(SENDMAILDEBUG)
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2715
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2716 def testNosyReplytoTracker(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2717 self.db.config.TRACKER_REPLYTO_ADDRESS = ''
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2718 self._handle_mail('''Content-Type: text/plain;
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2719 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2720 From: Chef <chef@bork.bork.bork>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2721 To: issue_tracker@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2722 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2723 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2724
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2725 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2726 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2727 self.compareMessages(self._get_mail(),
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2728 '''FROM: roundup-admin@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2729 TO: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2730 Content-Type: text/plain; charset="utf-8"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2731 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2732 To: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2733 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2734 Reply-To: Roundup issue tracker
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2735 <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2736 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2737 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2738 X-Roundup-Name: Roundup issue tracker
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2739 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2740 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2741 X-Roundup-Issue-Status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2742 Content-Transfer-Encoding: quoted-printable
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2743
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2744
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2745 New submission from Bork, Chef <chef@bork.bork.bork>:
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2746
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2747 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2748
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2749 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2750 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2751 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2752 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2753 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2754 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2755 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2756
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2757 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2758 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2759 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2760 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2761 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2762
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2763 def testNosyReplytoSomeaddress(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2764 self.db.config.TRACKER_REPLYTO_ADDRESS = 'replyto@me.example.com'
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2765 self._handle_mail('''Content-Type: text/plain;
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2766 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2767 From: Chef <chef@bork.bork.bork>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2768 To: issue_tracker@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2769 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2770 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2771
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2772 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2773 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2774 self.compareMessages(self._get_mail(),
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2775 '''FROM: roundup-admin@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2776 TO: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2777 Content-Type: text/plain; charset="utf-8"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2778 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2779 To: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2780 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2781 Reply-To: replyto@me.example.com
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2782 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2783 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2784 X-Roundup-Name: Roundup issue tracker
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2785 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2786 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2787 X-Roundup-Issue-Status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2788 Content-Transfer-Encoding: quoted-printable
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2789
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2790
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2791 New submission from Bork, Chef <chef@bork.bork.bork>:
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2792
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2793 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2794
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2795 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2796 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2797 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2798 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2799 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2800 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2801 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2802
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2803 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2804 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2805 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2806 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2807 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2808
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2809 def testNosyReplytoAuthor(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2810 self.db.config.TRACKER_REPLYTO_ADDRESS = 'AUTHOR'
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2811 self._handle_mail('''Content-Type: text/plain;
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2812 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2813 From: Chef <chef@bork.bork.bork>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2814 To: issue_tracker@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2815 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2816 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2817
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2818 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2819 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2820 self.compareMessages(self._get_mail(),
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2821 '''FROM: roundup-admin@your.tracker.email.domain.example
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2822 TO: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2823 Content-Type: text/plain; charset="utf-8"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2824 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2825 To: mary@test.test, richard@test.test
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2826 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2827 Reply-To: "Bork, Chef" <chef@bork.bork.bork>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2828 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2829 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2830 X-Roundup-Name: Roundup issue tracker
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2831 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2832 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2833 X-Roundup-Issue-Status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2834 Content-Transfer-Encoding: quoted-printable
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2835
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2836
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2837 New submission from Bork, Chef <chef@bork.bork.bork>:
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2838
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2839 This is a test submission of a new issue.
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2840
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2841 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2842 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2843 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2844 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2845 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2846 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2847 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2848
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2849 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2850 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2851 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2852 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2853 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2854
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2855 def testNewUserAuthor(self):
4350
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
2856 self.db.commit()
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2857 l = self.db.user.list()
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2858 l.sort()
1888
465dc7dbe67a Extract _send_mail method, it was duplicated all around the test code.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1887
diff changeset
2859 message = '''Content-Type: text/plain;
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2860 charset="iso-8859-1"
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2861 From: fubar <fubar@bork.bork.bork>
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2862 To: issue_tracker@your.tracker.email.domain.example
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2863 Message-Id: <dummy_test_message_id>
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2864 Subject: [issue] Testing...
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2865
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2866 This is a test submission of a new issue.
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2867 '''
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2868 self.db.security.role['anonymous'].permissions=[]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2869 anonid = self.db.user.lookup('anonymous')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2870 self.db.user.set(anonid, roles='Anonymous')
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2871 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2872 self._handle_mail(message)
5248
198b6e810c67 Use Python-3-compatible 'as' syntax for except statements
Eric S. Raymond <esr@thyrsus.com>
parents: 5152
diff changeset
2873 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2874 body_diff = self.assertEqual(str(value), """
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2875 You are not a registered user.
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2877 Unknown address: fubar@bork.bork.bork
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2878 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2879 assert not body_diff, body_diff
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2880 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2881 raise AssertionError("Unauthorized not raised when handling mail")
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2882
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2883 # Add Web Access role to anonymous, and try again to make sure
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2884 # we get a "please register at:" message this time.
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2885 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2886 self.db.security.getPermission('Register', 'user'),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2887 self.db.security.getPermission('Web Access', None),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2888 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2889 self.db.security.role['anonymous'].permissions=p
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2890 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2891 self._handle_mail(message)
5248
198b6e810c67 Use Python-3-compatible 'as' syntax for except statements
Eric S. Raymond <esr@thyrsus.com>
parents: 5152
diff changeset
2892 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2893 body_diff = self.assertEqual(str(value), """
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2894 You are not a registered user. Please register at:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2895
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
2896 http://tracker.example/cgi-bin/roundup.cgi/bugs/user?@template=register
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2897
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2898 ...before sending mail to the tracker.
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2899
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2900 Unknown address: fubar@bork.bork.bork
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2901 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2902 assert not body_diff, body_diff
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2903 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2904 raise AssertionError("Unauthorized not raised when handling mail")
3876
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2905
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2906 # Make sure list of users is the same as before.
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2907 m = self.db.user.list()
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2908 m.sort()
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2909 self.assertEqual(l, m)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2910
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2911 # now with the permission
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2912 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2913 self.db.security.getPermission('Register', 'user'),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2914 self.db.security.getPermission('Email Access', None),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2915 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2916 self.db.security.role['anonymous'].permissions=p
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2917 self._handle_mail(message)
905
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2918 m = self.db.user.list()
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2919 m.sort()
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2920 self.assertNotEqual(l, m)
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2921
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2922 def testNewUserAuthorEncodedName(self):
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2923 l = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2924 # From: name has Euro symbol in it
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2925 message = '''Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2926 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2927 From: =?utf8?b?SOKCrGxsbw==?= <fubar@bork.bork.bork>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2928 To: issue_tracker@your.tracker.email.domain.example
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2929 Message-Id: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2930 Subject: [issue] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2931
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2932 This is a test submission of a new issue.
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2933 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2934 self._allowAnonymousSubmit()
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2935 self._handle_mail(message)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2936 m = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2937 new = list(m - l)[0]
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2938 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2939 self.assertEqual(name, 'H€llo')
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2940
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2941 def testNewUserAuthorMixedEncodedName(self):
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2942 l = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2943 # From: name has Euro symbol in it
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2944 message = '''Content-Type: text/plain;
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2945 charset="iso-8859-1"
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2946 From: Firstname =?utf-8?b?w6TDtsOf?= Last <fubar@bork.bork.bork>
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2947 To: issue_tracker@your.tracker.email.domain.example
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2948 Message-Id: <dummy_test_message_id>
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2949 Subject: [issue] Test =?utf-8?b?w4TDlsOc?= umlauts
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2950 X1
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2951 X2
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2952
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2953 This is a test submission of a new issue.
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2954 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2955 self._allowAnonymousSubmit()
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2956 self._handle_mail(message)
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2957 title = self.db.issue.get('1', 'title')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2958 self.assertEqual(title, b2s(b'Test \xc3\x84\xc3\x96\xc3\x9c umlauts X1 X2'))
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2959 m = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2960 new = list(m - l)[0]
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2961 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2962 self.assertEqual(name, b2s(b'Firstname \xc3\xa4\xc3\xb6\xc3\x9f Last'))
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2963
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2964 def testNewUserAuthorMixedEncodedNameSpacing(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2965 l = set(self.db.user.list())
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2966 # From: name has Euro symbol in it
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2967 message = '''Content-Type: text/plain;
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2968 charset="iso-8859-1"
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2969 From: (=?utf-8?b?w6TDtsOf?==?utf-8?b?w6TDtsOf?=) <fubar@bork.bork.bork>
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2970 To: issue_tracker@your.tracker.email.domain.example
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2971 Message-Id: <dummy_test_message_id>
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2972 Subject: [issue] Test (=?utf-8?b?w4TDlsOc?=) umlauts
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2973 X1
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2974
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2975 This is a test submission of a new issue.
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2976 '''
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2977 self._allowAnonymousSubmit()
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2978 self._handle_mail(message)
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2979 title = self.db.issue.get('1', 'title')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2980 self.assertEqual(title, b2s(b'Test (\xc3\x84\xc3\x96\xc3\x9c) umlauts X1'))
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2981 m = set(self.db.user.list())
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2982 new = list(m - l)[0]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2983 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2984 self.assertEqual(name,
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2985 b2s(b'(\xc3\xa4\xc3\xb6\xc3\x9f\xc3\xa4\xc3\xb6\xc3\x9f)'))
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2986
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2987 def testUnknownUser(self):
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2988 l = set(self.db.user.list())
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2989 message = '''Content-Type: text/plain;
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2990 charset="iso-8859-1"
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2991 From: Nonexisting User <nonexisting@bork.bork.bork>
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2992 To: issue_tracker@your.tracker.email.domain.example
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2993 Message-Id: <dummy_test_message_id>
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2994 Subject: [issue] Testing nonexisting user...
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2995
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2996 This is a test submission of a new issue.
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2997 '''
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
2998 # trap_exc=1: we want a bounce message:
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
2999 ret = self._handle_mail(message, trap_exc=1)
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3000 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
3001 '''FROM: roundup-admin@your.tracker.email.domain.example
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3002 TO: nonexisting@bork.bork.bork
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3003 From nobody Tue Jul 14 12:04:11 2009
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3004 Content-Type: multipart/mixed; boundary="===============0639262320=="
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3005 MIME-Version: 1.0
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3006 Subject: Failed issue tracker submission
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3007 To: nonexisting@bork.bork.bork
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3008 From: Roundup issue tracker <roundup-admin@your.tracker.email.domain.example>
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3009 Date: Tue, 14 Jul 2009 12:04:11 +0000
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3010 Precedence: bulk
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3011 X-Roundup-Name: Roundup issue tracker
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3012 X-Roundup-Loop: hello
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3013 X-Roundup-Version: 1.4.8
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3014
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3015 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3016 Content-Type: text/plain; charset="us-ascii"
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3017 MIME-Version: 1.0
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3018 Content-Transfer-Encoding: 7bit
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3019
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3020
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3021
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
3022 You are not a registered user. Please register at:
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
3023
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
3024 http://tracker.example/cgi-bin/roundup.cgi/bugs/user?@template=register
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
3025
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
3026 ...before sending mail to the tracker.
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3027
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3028 Unknown address: nonexisting@bork.bork.bork
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3029
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3030 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3031 Content-Type: text/plain; charset="us-ascii"
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3032 MIME-Version: 1.0
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3033 Content-Transfer-Encoding: 7bit
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3034
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3035 Content-Type: text/plain;
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3036 charset="iso-8859-1"
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3037 From: Nonexisting User <nonexisting@bork.bork.bork>
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3038 To: issue_tracker@your.tracker.email.domain.example
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3039 Message-Id: <dummy_test_message_id>
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3040 Subject: [issue] Testing nonexisting user...
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3041
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3042 This is a test submission of a new issue.
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3043
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3044 --===============0639262320==--
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3045 ''')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
3046
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
3047 def testEnc01(self):
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3048 self.db.user.set(self.mary_id,
5476
b0048969990d encoding fixes in test cases
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5418
diff changeset
3049 realname=u2s(u'\xe4\xf6\xfc\xc4\xd6\xdc\xdf, Mary'))
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
3050 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3051 self._handle_mail('''Content-Type: text/plain;
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3052 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3053 From: mary <mary@test.test>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
3054 To: issue_tracker@your.tracker.email.domain.example
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3055 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3056 In-Reply-To: <dummy_test_message_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3057 Subject: [issue1] Testing...
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3058 Content-Type: text/plain;
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3059 charset="iso-8859-1"
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3060 Content-Transfer-Encoding: quoted-printable
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3061
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3062 A message with encoding (encoded oe =F6)
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3063
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3064 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3065 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
3066 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3067 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
3068 Content-Type: text/plain; charset="utf-8"
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3069 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3070 To: chef@bork.bork.bork, richard@test.test
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3071 From: =?utf-8?b?w6TDtsO8w4TDlsOcw58sIE1hcnk=?=
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3072 <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3073 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3074 <issue_tracker@your.tracker.email.domain.example>
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3075 MIME-Version: 1.0
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3076 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3077 In-Reply-To: <dummy_test_message_id>
613
d77b82588bf0 Fixed the unit tests for the mailgw re: the x-roundup-name header.
Richard Jones <richard@users.sourceforge.net>
parents: 609
diff changeset
3078 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
3079 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3080 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3081 X-Roundup-Issue-Status: chatting
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
3082 Content-Transfer-Encoding: quoted-printable
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3083
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3084
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3085 =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F, Mary <mary@test.test> added the=
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3086 comment:
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3087
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
3088 A message with encoding (encoded oe =C3=B6)
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3089
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3090 ----------
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3091 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3092
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3093 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3094 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
3095 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3096 _______________________________________________________________________
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
3097 ''')
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3098
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3099 def testEncNonUTF8(self):
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3100 self.doNewIssue()
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3101 self.instance.config.EMAIL_CHARSET = 'iso-8859-1'
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3102 self._handle_mail('''Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3103 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3104 From: mary <mary@test.test>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3105 To: issue_tracker@your.tracker.email.domain.example
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3106 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3107 In-Reply-To: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3108 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3109 Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3110 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3111 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3112
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3113 A message with encoding (encoded oe =F6)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3114
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3115 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3116 self.compareMessages(self._get_mail(),
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3117 '''FROM: roundup-admin@your.tracker.email.domain.example
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3118 TO: chef@bork.bork.bork, richard@test.test
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3119 Content-Type: text/plain; charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3120 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3121 To: chef@bork.bork.bork, richard@test.test
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3122 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3123 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3124 <issue_tracker@your.tracker.email.domain.example>
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3125 MIME-Version: 1.0
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3126 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3127 In-Reply-To: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3128 X-Roundup-Name: Roundup issue tracker
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3129 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3130 X-Roundup-Issue-Id: 1
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3131 X-Roundup-Issue-Status: chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3132 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3133
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3134
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3135 Contrary, Mary <mary@test.test> added the comment:
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3136
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3137 A message with encoding (encoded oe =F6)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3138
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3139 ----------
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3140 status: unread -> chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3141
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3142 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3143 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3144 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3145 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3146 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3147
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3148
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
3149 def testMultipartEnc01(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
3150 self.doNewIssue()
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
3151 self._handle_mail('''From: mary <mary@test.test>
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
3152 To: issue_tracker@your.tracker.email.domain.example
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3153 Message-Id: <followup_dummy_id>
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3154 In-Reply-To: <dummy_test_message_id>
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3155 Subject: [issue1] Testing...
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3156 Content-Type: multipart/mixed;
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3157 boundary="----_=_NextPart_000_01"
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3158
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3159 This message is in MIME format. Since your mail reader does not understand
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3160 this format, some or all of this message may not be legible.
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3161
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3162 ------_=_NextPart_000_01
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3163 Content-Type: text/plain;
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3164 charset="iso-8859-1"
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3165 Content-Transfer-Encoding: quoted-printable
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3166
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3167 A message with first part encoded (encoded oe =F6)
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3168
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3169 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3170 self.compareMessages(self._get_mail(),
742
b105b46f6324 'I must run unit tests before committing\n' * 100
Richard Jones <richard@users.sourceforge.net>
parents: 718
diff changeset
3171 '''FROM: roundup-admin@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3172 TO: chef@bork.bork.bork, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
3173 Content-Type: text/plain; charset="utf-8"
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3174 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3175 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3176 From: "Contrary, Mary" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3177 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3178 <issue_tracker@your.tracker.email.domain.example>
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3179 MIME-Version: 1.0
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3180 Message-Id: <followup_dummy_id>
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3181 In-Reply-To: <dummy_test_message_id>
613
d77b82588bf0 Fixed the unit tests for the mailgw re: the x-roundup-name header.
Richard Jones <richard@users.sourceforge.net>
parents: 609
diff changeset
3182 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
3183 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3184 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3185 X-Roundup-Issue-Status: chatting
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
3186 Content-Transfer-Encoding: quoted-printable
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3187
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3188
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3189 Contrary, Mary <mary@test.test> added the comment:
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3190
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
3191 A message with first part encoded (encoded oe =C3=B6)
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3192
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3193 ----------
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3194 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3195
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3196 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3197 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
3198 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3199 _______________________________________________________________________
666
d1567c2433c4 Made the email checking spit out a diff - much easier to spot the problem!
Richard Jones <richard@users.sourceforge.net>
parents: 665
diff changeset
3200 ''')
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3201
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3202 def testContentDisposition(self):
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3203 self.doNewIssue()
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
3204 self._handle_mail('''From: mary <mary@test.test>
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3205 To: issue_tracker@your.tracker.email.domain.example
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3206 Message-Id: <followup_dummy_id>
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3207 In-Reply-To: <dummy_test_message_id>
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3208 Subject: [issue1] Testing...
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3209 Content-Type: multipart/mixed; boundary="bCsyhTFzCvuiizWE"
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3210 Content-Disposition: inline
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3211
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3212
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3213 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3214 Content-Type: text/plain; charset=us-ascii
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3215 Content-Disposition: inline
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3216
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3217 test attachment binary
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3218
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3219 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3220 Content-Type: application/octet-stream
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3221 Content-Disposition: attachment; filename="main.dvi"
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3222 Content-Transfer-Encoding: base64
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3223
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3224 SnVzdCBhIHRlc3QgAQo=
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3225
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3226 --bCsyhTFzCvuiizWE--
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3227 ''')
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3228 messages = self.db.issue.get('1', 'messages')
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3229 messages.sort()
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3230 file = self.db.file.getnode (self.db.msg.get(messages[-1], 'files')[0])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3231 self.assertEqual(file.name, 'main.dvi')
3946
be72bc5ab6ee add missing newline to a test-case.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3945
diff changeset
3232 self.assertEqual(file.content, 'Just a test \001\n')
1409
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3233
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3234 def testFollowupStupidQuoting(self):
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3235 self.doNewIssue()
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3236
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3237 self._handle_mail('''Content-Type: text/plain;
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3238 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3239 From: richard <richard@test.test>
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3240 To: issue_tracker@your.tracker.email.domain.example
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3241 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3242 In-Reply-To: <dummy_test_message_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3243 Subject: Re: "[issue1] Testing... "
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3244
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3245 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3246 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3247 self.compareMessages(self._get_mail(),
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3248 '''FROM: roundup-admin@your.tracker.email.domain.example
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3249 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
3250 Content-Type: text/plain; charset="utf-8"
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3251 Subject: [issue1] Testing...
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3252 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3253 From: richard <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3254 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3255 <issue_tracker@your.tracker.email.domain.example>
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3256 MIME-Version: 1.0
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3257 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3258 In-Reply-To: <dummy_test_message_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3259 X-Roundup-Name: Roundup issue tracker
1322
c0546b95aad1 finished off handling of retired flag in filter() [SF#635260]
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
3260 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3261 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3262 X-Roundup-Issue-Status: chatting
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3263 Content-Transfer-Encoding: quoted-printable
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3264
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3265
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3266 richard <richard@test.test> added the comment:
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3267
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3268 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3269
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3270 ----------
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3271 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3272
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3273 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3274 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
1582
54f7717ece32 fixes for new signature url quoting
Richard Jones <richard@users.sourceforge.net>
parents: 1549
diff changeset
3275 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3276 _______________________________________________________________________
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3277 ''')
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3278
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3279 firstquotingtest = '''Content-Type: text/plain;
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3280 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3281 From: richard <richard@test.test>
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3282 To: issue_tracker@your.tracker.email.domain.example
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3283 Message-Id: <followup_dummy_id>
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3284 In-Reply-To: <dummy_test_message_id>
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3285 Subject: Re: [issue1] Testing...
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3286
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3287 Blah blah wrote:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3288 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3289 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3290 >
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3291
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3292 This is a followup
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3293 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3294
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3295 def testEmailQuoting(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3296 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'no'
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3297 # FIXME possible bug. Messages retreived from content are missing
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3298 # trailing newlines. Probably due to signature stripping.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3299 # so nuke all trailing newlines.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3300 self.innerTestQuoting(self.firstquotingtest, '''This is a followup''', 'This is a followup')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3301
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3302 def testEmailQuotingNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3303 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'new'
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3304 # create the message, remove the prefix from subject
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3305 testmessage=self.firstquotingtest.replace(" Re: [issue1]", "")
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3306 nodeid = self._handle_mail(testmessage)
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3307
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3308 msgs = self.db.issue.get(nodeid, 'messages')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3309 # validate content and summary
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3310 content = self.db.msg.get(msgs[0], 'content')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3311 self.assertEqual(content, '''Blah blah wrote:
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3312 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3313 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3314 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3315
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3316 This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3317
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3318 summary = self.db.msg.get(msgs[0], 'summary')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3319 self.assertEqual(summary, '''This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3320
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3321 def testEmailQuotingNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3322 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'new'
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3323 # create issue1 that we can followup on
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3324 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3325 # add the second message to the issue
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3326 nodeid = self._handle_mail(self.firstquotingtest)
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3327 msgs = self.db.issue.get(nodeid, 'messages')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3328 # check second message for accuracy
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3329 content = self.db.msg.get(msgs[1], 'content')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3330 summary = self.db.msg.get(msgs[1], 'summary')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3331 self.assertEqual(content, '''This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3332 self.assertEqual(summary, '''This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3333
5125
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3334 def testEmailBodyUnchangedNewIsYes(self):
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3335 mysig = "--\nmy sig\n\n"
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3336 self.instance.config.EMAIL_LEAVE_BODY_UNCHANGED = 'yes'
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3337 # create the message, remove the prefix from subject
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3338 testmessage=self.firstquotingtest.replace(" Re: [issue1]", "") + mysig
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3339 nodeid = self._handle_mail(testmessage)
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3340
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3341 msgs = self.db.issue.get(nodeid, 'messages')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3342 # validate content and summary
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3343 content = self.db.msg.get(msgs[0], 'content')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3344 self.assertEqual(content, '''Blah blah wrote:
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3345 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3346 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3347 >
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3348
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3349 This is a followup\n''' + mysig[:-2])
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3350 # the :-2 requrement to strip the trailing newlines is probably a bug
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3351 # somewhere mailgw has right content maybe trailing \n are stripped by
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3352 # msg or something.
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3353
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3354 summary = self.db.msg.get(msgs[0], 'summary')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3355 self.assertEqual(summary, '''This is a followup''')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3356
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3357 def testEmailBodyUnchangedFollowupIsYes(self):
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3358 mysig = "--\nmy sig\n\n"
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3359 self.instance.config.EMAIL_LEAVE_BODY_UNCHANGED = 'yes'
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3360
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3361 # create issue1 that we can followup on
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3362 self.doNewIssue()
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3363 testmessage=self.firstquotingtest + mysig
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3364 nodeid = self._handle_mail(testmessage)
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3365 msgs = self.db.issue.get(nodeid, 'messages')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3366 # validate content and summary
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3367 content = self.db.msg.get(msgs[1], 'content')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3368 self.assertEqual(content, '''Blah blah wrote:
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3369 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3370 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3371 >
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3372
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3373 This is a followup\n''' + mysig[:-2])
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3374 # the :-2 requrement to strip the trailing newlines is probably a bug
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3375 # somewhere mailgw has right content maybe trailing \n are stripped by
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3376 # msg or something.
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3377
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3378 summary = self.db.msg.get(msgs[1], 'summary')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3379 self.assertEqual(summary, '''This is a followup''')
410e565b5c1f adding test for issue934009. Code coverage shows no test for MAILGW_LEAVE_BODY_UNCHANGED=yes. Adding that for new issue creation and followup.
John Rouillard <rouilj@ieee.org>
parents: 5124
diff changeset
3380
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3381 def testEmailReplaceBodyNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3382 mysig = "--\nmy sig\n\n"
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3383 self.instance.config.EMAIL_LEAVE_BODY_UNCHANGED = 'new'
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3384 # create the message, remove the prefix from subject
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3385 testmessage=self.firstquotingtest.replace(" Re: [issue1]", "") + mysig
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3386 nodeid = self._handle_mail(testmessage)
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3387
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3388 msgs = self.db.issue.get(nodeid, 'messages')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3389 # validate content and summary
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3390 content = self.db.msg.get(msgs[0], 'content')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3391 self.assertEqual(content, '''Blah blah wrote:
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3392 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3393 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3394 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3395
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3396 This is a followup\n''' + mysig[:-2])
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3397 # the :-2 requrement to strip the trailing newlines is probably a bug
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3398 # somewhere mailgw has right content maybe trailing \n are stripped by
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3399 # msg or something.
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3400
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3401 summary = self.db.msg.get(msgs[0], 'summary')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3402 self.assertEqual(summary, '''This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3403
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3404 def testEmailReplaceBodyNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3405 mysig = "\n--\nmy sig\n"
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3406 self.instance.config.EMAIL_LEAVE_BODY_UNCHANGED = 'new'
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3407 # create issue1 that we can followup on
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3408 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3409 # add the second message to the issue
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3410 nodeid = self._handle_mail(self.firstquotingtest + mysig)
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3411 msgs = self.db.issue.get(nodeid, 'messages')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3412 # check second message for accuracy
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3413 content = self.db.msg.get(msgs[1], 'content')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3414 summary = self.db.msg.get(msgs[1], 'summary')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3415 self.assertEqual(content, '''Blah blah wrote:\n> Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf\n> skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj\n>\n\nThis is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3416 self.assertEqual(summary, '''This is a followup''')
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3417
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3418 def testEmailQuotingRemove(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3419 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'yes'
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3420 # FIXME possible bug. Messages retreived from content are missing
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3421 # trailing newlines. Probably due to signature stripping.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3422 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3423 self.innerTestQuoting(self.firstquotingtest, '''Blah blah wrote:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3424 > Blah bklaskdfj sdf asdf jlaskdf skj sdkfjl asdf
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3425 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3426 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3427
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3428 This is a followup''', 'This is a followup')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3429
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3430 secondquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3431 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3432 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3433 To: issue_tracker@your.tracker.email.domain.example
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3434 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3435 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3436 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3437
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3438 On Tue, Feb 23, 2010 at 8:46 AM, Someone <report@bugs.python.org> wrote:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3439 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3440 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3441
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3442 AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3443
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3444 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3445
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3446 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3447
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3448 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3449
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3450 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3451 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3452 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3453 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3454
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3455 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3456 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3457 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3458 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3459
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3460 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3461 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3462 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3463 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3464 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3465 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3466 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3467 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3468 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3469 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3470 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3471 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3472
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3473 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3474 added signature
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3475 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3476 def testEmailQuoting2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3477 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'no'
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3478 # FIXME possible bug. Messages retreived from content are missing
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3479 # trailing newlines. Probably due to signature stripping.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3480 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3481 self.innerTestQuoting(self.secondquotingtest, '''AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3482
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3483 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3484
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3485 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3486
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3487 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3488
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3489 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3490
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3491 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3492 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3493 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3494 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3495
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3496 CC''', 'AA:')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3497
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3498 def testEmailQuotingRemove2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3499 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'yes'
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3500 # FIXME possible bug. Messages retreived from content are missing
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3501 # trailing newlines. Probably due to signature stripping.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3502 # so nuke all trailing newlines. That's what the trailing
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3503 # [:-1] is doing on the '\n'.join(....)[8:-3]
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3504 self.innerTestQuoting(self.secondquotingtest,
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3505 '\n'.join(self.secondquotingtest.split('\n')[8:-3][:-1]), 'AA:')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3506
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3507 thirdquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3508 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3509 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3510 To: issue_tracker@your.tracker.email.domain.example
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3511 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3512 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3513 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3514
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3515 On Mon, Jan 02, 2012 at 06:14:27PM +0000, Someone wrote:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3516 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3517 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3518 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3519 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3520 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3521 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3522 AA0
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3523 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3524
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3525 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3526 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3527 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3528 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3529
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3530 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3531 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3532 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3533 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3534 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3535 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3536
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3537 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3538 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3539 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3540
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3541 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3542 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3543
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3544 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3545 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3546 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3547 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3548
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3549 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3550
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3551 NAME
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3552 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3553 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3554 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3555 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3556 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3557 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3558
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3559 # This fails because the sig isn't removed (we currently remove the
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3560 # sig only if the delimiter is the first line in a section)
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3561 @expectedFailure
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3562 def testEmailQuotingRemove3(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3563 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'yes'
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3564 self.innerTestQuoting(self.thirdquotingtest,
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3565 '\n'.join(self.thirdquotingtest.split('\n')[8:-6]), 'AA0')
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3566
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3567 def innerTestQuoting(self, msgtext, expect, summary=None):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3568 nodeid = self.doNewIssue()
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3569
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3570 messages = self.db.issue.get(nodeid, 'messages')
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3571
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3572 self._handle_mail(msgtext)
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3573 # figure the new message id
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3574 newmessages = self.db.issue.get(nodeid, 'messages')
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3575 for msg in messages:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3576 newmessages.remove(msg)
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3577 messageid = newmessages[0]
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3578
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3579 self.assertEqual(self.db.msg.get(messageid, 'content'), expect)
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3580 if summary:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3581 self.assertEqual (summary, self.db.msg.get(messageid, 'summary'))
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3582
1549
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3583 def testUserLookup(self):
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3584 i = self.db.user.create(username='user1', address='user1@foo.com')
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3585 self.assertEqual(uidFromAddress(self.db, ('', 'user1@foo.com'), 0), i)
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3586 self.assertEqual(uidFromAddress(self.db, ('', 'USER1@foo.com'), 0), i)
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3587 i = self.db.user.create(username='user2', address='USER2@foo.com')
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3588 self.assertEqual(uidFromAddress(self.db, ('', 'USER2@foo.com'), 0), i)
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3589 self.assertEqual(uidFromAddress(self.db, ('', 'user2@foo.com'), 0), i)
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3590
1810
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3591 def testUserAlternateLookup(self):
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3592 i = self.db.user.create(username='user1', address='user1@foo.com',
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3593 alternate_addresses='user1@bar.com')
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3594 self.assertEqual(uidFromAddress(self.db, ('', 'user1@bar.com'), 0), i)
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3595 self.assertEqual(uidFromAddress(self.db, ('', 'USER1@bar.com'), 0), i)
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3596
4531
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3597 def testUserAlternateSubstringNomatch(self):
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3598 i = self.db.user.create(username='user1', address='user1@foo.com',
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3599 alternate_addresses='x-user1@bar.com')
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3600 self.assertEqual(uidFromAddress(self.db, ('', 'user1@bar.com'), 0), 0)
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3601 self.assertEqual(uidFromAddress(self.db, ('', 'USER1@bar.com'), 0), 0)
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3602
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3603 def testUserCreate(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3604 i = uidFromAddress(self.db, ('', 'user@foo.com'), 1)
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3605 self.assertNotEqual(uidFromAddress(self.db, ('', 'user@bar.com'), 1), i)
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3606
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3607 def testRegistrationConfirmation(self):
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3608 otk = "Aj4euk4LZSAdwePohj90SME5SpopLETL"
2089
93f03c6714d8 A few big changes in this commit:
Richard Jones <richard@users.sourceforge.net>
parents: 1984
diff changeset
3609 self.db.getOTKManager().set(otk, username='johannes')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3610 self._handle_mail('''Content-Type: text/plain;
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3611 charset="iso-8859-1"
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3612 From: Chef <chef@bork.bork.bork>
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3613 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3614 Cc: richard@test.test
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3615 Message-Id: <dummy_test_message_id>
2709
6b5c77c03231 testRegistrationConfirmation: remove CR...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2705
diff changeset
3616 Subject: Re: Complete your registration to Roundup issue tracker
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3617 -- key %s
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3618
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3619 This is a test confirmation of registration.
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3620 ''' % otk)
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3621 self.db.user.lookup('johannes')
1859
492a962b6d6f Make signature matching more precise: only match '-- '...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1811
diff changeset
3622
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3623 def testFollowupOnNonIssue(self):
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3624 self.db.keyword.create(name='Foo')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3625 self._handle_mail('''Content-Type: text/plain;
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3626 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3627 From: richard <richard@test.test>
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3628 To: issue_tracker@your.tracker.email.domain.example
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3629 Message-Id: <followup_dummy_id>
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3630 In-Reply-To: <dummy_test_message_id>
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3631 Subject: [keyword1] Testing... [name=Bar]
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3632
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3633 ''')
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3634 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3635
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3636 def testResentFrom(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3637 nodeid = self._handle_mail('''Content-Type: text/plain;
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3638 charset="iso-8859-1"
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3639 From: Chef <chef@bork.bork.bork>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3640 Resent-From: mary <mary@test.test>
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3641 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3642 Cc: richard@test.test
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3643 Message-Id: <dummy_test_message_id>
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3644 Subject: [issue] Testing...
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3645
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3646 This is a test submission of a new issue.
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3647 ''')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3648 assert not os.path.exists(SENDMAILDEBUG)
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3649 l = self.db.issue.get(nodeid, 'nosy')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3650 l.sort()
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3651 self.assertEqual(l, [self.richard_id, self.mary_id])
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3652 return nodeid
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3653
5045
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3654 def testResentFromSwitchedOff(self):
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3655 self.instance.config.EMAIL_KEEP_REAL_FROM = 'yes'
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3656 nodeid = self._handle_mail('''Content-Type: text/plain;
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3657 charset="iso-8859-1"
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3658 From: Chef <chef@bork.bork.bork>
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3659 Resent-From: mary <mary@test.test>
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3660 To: issue_tracker@your.tracker.email.domain.example
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3661 Cc: richard@test.test
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3662 Message-Id: <dummy_test_message_id>
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3663 Subject: [issue] Testing...
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3664
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3665 This is a test submission of a new issue.
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3666 ''')
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3667 assert not os.path.exists(SENDMAILDEBUG)
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3668 l = self.db.issue.get(nodeid, 'nosy')
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3669 l.sort()
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3670 self.assertEqual(l, [self.chef_id, self.richard_id])
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3671 return nodeid
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3672
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3673 def testDejaVu(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3674 self.assertRaises(IgnoreLoop, self._handle_mail,
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3675 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3676 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3677 From: Chef <chef@bork.bork.bork>
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3678 X-Roundup-Loop: hello
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3679 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3680 Cc: richard@test.test
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3681 Message-Id: <dummy_test_message_id>
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3682 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3683
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3684 Hi, I've been mis-configured to loop messages back to myself.
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3685 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3686
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3687 def testItsBulkStupid(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3688 self.assertRaises(IgnoreBulk, self._handle_mail,
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3689 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3690 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3691 From: Chef <chef@bork.bork.bork>
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3692 Precedence: bulk
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3693 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3694 Cc: richard@test.test
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3695 Message-Id: <dummy_test_message_id>
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3696 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3697
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3698 Hi, I'm on holidays, and this is a dumb auto-responder.
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3699 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3700
6247
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3701 def testItsAutoSubmittedStupid(self):
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3702 self.assertRaises(IgnoreBulk, self._handle_mail,
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3703 '''Content-Type: text/plain;
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3704 charset="iso-8859-1"
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3705 From: Chef <chef@bork.bork.bork>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3706 Auto-Submitted: Auto-Generated
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3707 To: issue_tracker@your.tracker.email.domain.example
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3708 Cc: richard@test.test
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3709 Message-Id: <dummy_test_message_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3710 Subject: Re: [issue] Testing...
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3711
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3712 Hi, I'm on holidays, and this is a dumb auto-responder.
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3713 ''')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3714
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3715 def testItsHumanSubmitted(self):
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3716 ''' keep trailing spaces on Auto-submitted header
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3717 '''
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3718 self.db.keyword.create(name='Foo')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3719 self._handle_mail('''Content-Type: text/plain;
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3720 charset="iso-8859-1"
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3721 From: richard <richard@test.test>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3722 To: issue_tracker@your.tracker.email.domain.example
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3723 Message-Id: <followup_dummy_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3724 In-Reply-To: <dummy_test_message_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3725 Auto-submitted: No
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3726 Subject: [keyword1] Testing... [name=Bar]
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3727
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3728 ''')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3729 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3730
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3731
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3732 def testAutoReplyEmailsAreIgnored(self):
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3733 self.assertRaises(IgnoreBulk, self._handle_mail,
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3734 '''Content-Type: text/plain;
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3735 charset="iso-8859-1"
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3736 From: Chef <chef@bork.bork.bork>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3737 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3738 Cc: richard@test.test
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3739 Message-Id: <dummy_test_message_id>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3740 Subject: Re: [issue] Out of office AutoReply: Back next week
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3741
3810
4536c0e544be Bah! The python-mode in my emacs is borked by this line,,,
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3809
diff changeset
3742 Hi, I am back in the office next week
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3743 ''')
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3744
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3745 def testNoSubject(self):
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3746 self.assertRaises(MailUsageError, self._handle_mail,
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3747 '''Content-Type: text/plain;
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3748 charset="iso-8859-1"
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3749 From: Chef <chef@bork.bork.bork>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3750 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3751 Cc: richard@test.test
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3752 Reply-To: chef@bork.bork.bork
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3753 Message-Id: <dummy_test_message_id>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3754
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3755 ''')
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3756
6672
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3757
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3758 def testNoSubjectErrorTranslation(self):
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3759 """ Use message with no subject to trigger an error """
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3760 message = '''Content-Type: text/plain;
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3761 charset="iso-8859-1"
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3762 From: Chef <chef@bork.bork.bork>
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3763 To: issue_tracker@your.tracker.email.domain.example
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3764 Message-Id: <dummy_test_message_id_2>
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3765
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3766 Just a test reply
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3767 '''
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3768 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3769 # verify proper value when no translation
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3770 self.db.config.MAILGW_LANGUAGE = 'en'
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3771 self.db.config.TRACKER_LANGUAGE = 'en'
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3772 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3773
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3774 ### copied from mailgw.py handle_message()
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3775 language = self.instance.config["MAILGW_LANGUAGE"] or self.instance.config["TRACKER_LANGUAGE"]
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3776 # use . as tracker home to get .mo files from top level
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3777 # locale directory.
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3778 self.assertEqual('en', language)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3779 print(i18n.DOMAIN)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3780
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3781 self.db.i18n = i18n.get_translation(language,
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3782 self.instance.config['TRACKER_HOME'])
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3783
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3784 _ = self.db.i18n.gettext
6673
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3785 old_translate_ = mailgw._
6672
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3786 roundupdb._ = mailgw._ = _
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3787
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3788 self.db.tx_Source = "email"
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3789 ### end copy
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3790
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3791 # insert translation string
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3792 self.db.i18n._catalog['\nEmails to Roundup trackers must include a Subject: line!\n'] = 'me me me'
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3793
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3794 with self.assertRaises(MailUsageError) as ctx:
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3795 self._handle_mail(message)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3796
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3797 self.assertEqual(str(ctx.exception), "me me me")
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3798
6673
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3799 roundupdb._ = mailgw._ = old_translate_
6672
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3800
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3801 def testNoSubjectErrorTranslationDe(self):
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3802 """ Use message with no subject to trigger an error get output in
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3803 German. """
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3804
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3805 message = '''Content-Type: text/plain;
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3806 charset="iso-8859-1"
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3807 From: Chef <chef@bork.bork.bork>
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3808 To: issue_tracker@your.tracker.email.domain.example
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3809 Message-Id: <dummy_test_message_id_2>
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3810
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3811 Just a test reply
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3812 '''
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3813 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3814 # verify proper value when no translation
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3815 self.db.config.MAILGW_LANGUAGE = 'de'
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3816 self.db.config.TRACKER_LANGUAGE = 'de'
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3817 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3818
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3819 ### copied from mailgw.py handle_message()
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3820 language = self.instance.config["MAILGW_LANGUAGE"] or self.instance.config["TRACKER_LANGUAGE"]
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3821 # use . as tracker home to get .mo files from top level
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3822 # locale directory.
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3823 self.assertEqual('de', language)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3824 print(i18n.DOMAIN)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3825
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3826 self.db.i18n = i18n.get_translation(language,
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3827 self.instance.config['TRACKER_HOME'])
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3828
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3829 _ = self.db.i18n.gettext
6673
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3830 old_translate_ = mailgw._
6672
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3831 roundupdb._ = mailgw._ = _
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3832
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3833 self.db.tx_Source = "email"
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3834 ### end copy
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3835
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3836 de_translation = "\nMails an Roundup müssen eine Subject-Zeile haben (Betreff)!\n"
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3837
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3838 with self.assertRaises(MailUsageError) as ctx:
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3839 self._handle_mail(message)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3840
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3841 self.assertEqual(str(ctx.exception), de_translation)
01216187a167 Testing translations in mailgw.py, update translations, i18n improved
John Rouillard <rouilj@ieee.org>
parents: 6670
diff changeset
3842
6673
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3843 roundupdb._ = mailgw._ = old_translate_
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3844
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3845 def testNoIssueClassErrorTranslationDe(self):
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3846 """ Use message with a non-existant issue designator
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3847 to trigger an error get output in German. """
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3848
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3849 message = '''Content-Type: text/plain;
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3850 charset="iso-8859-1"
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3851 From: Chef <chef@bork.bork.bork>
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3852 To: issue_tracker@your.tracker.email.domain.example
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3853 Message-Id: <dummy_test_message_id_2>
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3854 Subject: [issue9999999] this is a nonexistant issue
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3855
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3856 Just a test reply
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3857 '''
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3858 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3859 # verify proper value when no translation
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3860 self.db.config.MAILGW_LANGUAGE = 'de'
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3861 self.db.config.TRACKER_LANGUAGE = 'de'
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3862 print(self.db.config.MAILGW_LANGUAGE, self.db.config.TRACKER_LANGUAGE)
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3863
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3864 ### copied from mailgw.py handle_message()
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3865 language = self.instance.config["MAILGW_LANGUAGE"] or self.instance.config["TRACKER_LANGUAGE"]
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3866 # use . as tracker home to get .mo files from top level
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3867 # locale directory.
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3868 self.assertEqual('de', language)
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3869 print(i18n.DOMAIN)
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3870
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3871 self.db.i18n = i18n.get_translation(language,
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3872 self.instance.config['TRACKER_HOME'])
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3873
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3874 _ = self.db.i18n.gettext
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3875 old_translate_ = mailgw._
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3876 roundupdb._ = mailgw._ = _
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3877
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3878 self.db.tx_Source = "email"
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3879 ### end copy
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3880
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3881 de_translation = "Der in der Betreffzeile Ihre Nachricht bezeichnete Eintrag"
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3882
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3883 with self.assertRaises(MailUsageError) as ctx:
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3884 self._handle_mail(message)
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3885
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3886 self.assertIn(de_translation, str(ctx.exception))
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3887
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3888 de_translation = """Der Betreff muss einen Klassennamen oder Bezeichner enthalten, um
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3889 anzuzeigen, worum es geht. Zum Beispiel:
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3890 """
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3891 with self.assertRaises(MailUsageError) as ctx:
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3892 self._handle_mail(
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3893 '''Content-Type: text/plain;
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3894 charset="iso-8859-1"
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3895 From: Chef <chef@bork.bork.bork>
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3896 To: issue_tracker@your.tracker.email.domain.example
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3897 Subject: [frobulated] testing
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3898 Cc: richard@test.test
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3899 Reply-To: chef@bork.bork.bork
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3900 Message-Id: <dummy_test_message_id>
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3901
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3902 ''')
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3903
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3904 self.assertIn(de_translation, str(ctx.exception))
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3905
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3906
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3907 roundupdb._ = mailgw._ = old_translate_
567283742a5c Add more translation tests for mailgw.py
John Rouillard <rouilj@ieee.org>
parents: 6672
diff changeset
3908
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3909 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3910 # TEST FOR INVALID DESIGNATOR HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3911 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3912 def testInvalidDesignator(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3913 self.assertRaises(MailUsageError, self._handle_mail,
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3914 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3915 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3916 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3917 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3918 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3919 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3920 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3921 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3922
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3923 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3924 self.assertRaises(MailUsageError, self._handle_mail,
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3925 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3926 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3927 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3928 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3929 Subject: [issue12345] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3930 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3931 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3932 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3933
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3934 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3935
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3936 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3937 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3938 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3939 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3940 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3941 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3942 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3943 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3944 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3945 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3946
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3947 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3948 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3949 self.assertEqual(self.db.issue.get(nodeid, 'title'),
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3950 '[frobulated] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3951
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3952 def testInvalidClassLooseReply(self):
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3953 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3954 nodeid = self._handle_mail('''Content-Type: text/plain;
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3955 charset="iso-8859-1"
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3956 From: Chef <chef@bork.bork.bork>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3957 To: issue_tracker@your.tracker.email.domain.example
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3958 Subject: Re: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3959 Cc: richard@test.test
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3960 Reply-To: chef@bork.bork.bork
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3961 Message-Id: <dummy_test_message_id>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3962
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3963 ''')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3964 assert not os.path.exists(SENDMAILDEBUG)
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3965 self.assertEqual(self.db.issue.get(nodeid, 'title'),
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3966 '[frobulated] testing')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3967
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3968 def testInvalidClassLooseReplyQuoted(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3969 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3970 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3971 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3972 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3973 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3974 Subject: Re: "[frobulated] testing"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3975 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3976 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3977 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3978
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3979 Dumb mailers may put quotes around the subject after the reply prefix,
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3980 e.g. Re: "[issue1] bla bla"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3981 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3982 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3983 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3984 '[frobulated] testing')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3985
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3986 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3987 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3988 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3989 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3990 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3991 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3992 Subject: [issue1234] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3993 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3994 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3995 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3996
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3997 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3998 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3999 self.assertEqual(self.db.issue.get(nodeid, 'title'),
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4000 '[issue1234] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4001
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4002 def testClassLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4003 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4004 self.db.keyword.create(name='Foo')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4005 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4006 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4007 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4008 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4009 Subject: [keyword1] Testing... [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4010 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4011 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4012 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4013
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4014 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4015 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4016 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4017
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4018 def testDoublePrefixLoose(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4019 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4020 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4021 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4022 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4023 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4024 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4025 Subject: [frobulated] [frobulatedagain] testing stuff after double prefix
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4026 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4027 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4028 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4029
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4030 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4031 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4032 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4033 '[frobulated] [frobulatedagain] testing stuff after double prefix')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
4034
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4035 def testClassStrictInvalid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4036 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'strict'
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4037 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4038
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4039 message = '''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4040 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4041 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4042 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4043 Subject: Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4044 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4045 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4046 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4047
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4048 '''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4049 self.assertRaises(MailUsageError, self._handle_mail, message)
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4050
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4051 def testClassStrictValid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4052 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'strict'
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4053 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4054
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4055 nodeid = self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4056 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4057 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4058 To: issue_tracker@your.tracker.email.domain.example
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4059 Subject: [issue] Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4060 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4061 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4062 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4063
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4064 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4065
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4066 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4067 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'Testing...')
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4068
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4069 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4070 # TEST FOR INVALID COMMANDS HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4071 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4072 def testInvalidCommands(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4073 self.assertRaises(MailUsageError, self._handle_mail,
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4074 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4075 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4076 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4077 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4078 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4079 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4080 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4081 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4082
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4083 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4084
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4085 def testInvalidCommandPassthrough(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4086 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'none'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4087 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4088 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4089 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4090 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4091 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4092 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4093 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4094 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4095
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4096 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4097 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4098 self.assertEqual(self.db.issue.get(nodeid, 'title'),
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4099 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4100
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4101 def testInvalidCommandPassthroughLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4102 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'loose'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4103 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4104 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4105 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4106 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4107 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4108 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4109 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4110 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4111
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4112 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4113 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4114 self.assertEqual(self.db.issue.get(nodeid, 'title'),
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4115 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4116
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4117 def testInvalidCommandPassthroughLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4118 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'loose'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4119 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4120 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4121 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4122 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4123 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4124 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4125 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4126 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4127
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4128 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4129 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4130 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4131 self.assertEqual(self.db.issue.get(nodeid, 'assignedto'), self.mary_id)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4132
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4133 def testCommandDelimiters(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4134 self.instance.config.MAILGW_SUBJECT_SUFFIX_DELIMITERS = '{}'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4135 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4136 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4137 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4138 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4139 Subject: testing {assignedto=mary}
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4140 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4141 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4142 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4143
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4144 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4145 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4146 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4147 self.assertEqual(self.db.issue.get(nodeid, 'assignedto'), self.mary_id)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4148
3724
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4149 def testPrefixDelimiters(self):
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4150 self.instance.config.MAILGW_SUBJECT_SUFFIX_DELIMITERS = '{}'
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4151 self.db.keyword.create(name='Foo')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4152 self._handle_mail('''Content-Type: text/plain;
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4153 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4154 From: richard <richard@test.test>
3724
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4155 To: issue_tracker@your.tracker.email.domain.example
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4156 Message-Id: <followup_dummy_id>
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4157 In-Reply-To: <dummy_test_message_id>
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4158 Subject: {keyword1} Testing... {name=Bar}
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4159
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4160 ''')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4161 assert not os.path.exists(SENDMAILDEBUG)
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4162 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
4163
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4164 def testCommandDelimitersIgnore(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4165 self.instance.config.MAILGW_SUBJECT_SUFFIX_DELIMITERS = '{}'
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4166 nodeid = self._handle_mail('''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4167 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4168 From: Chef <chef@bork.bork.bork>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4169 To: issue_tracker@your.tracker.email.domain.example
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4170 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4171 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4172 Reply-To: chef@bork.bork.bork
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4173 Message-Id: <dummy_test_message_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4174
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4175 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4176 assert not os.path.exists(SENDMAILDEBUG)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4177 self.assertEqual(self.db.issue.get(nodeid, 'title'),
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4178 'testing [assignedto=mary]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4179 self.assertEqual(self.db.issue.get(nodeid, 'assignedto'), None)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
4180
3809
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4181 def testReplytoMatch(self):
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4182 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
3809
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4183 nodeid = self.doNewIssue()
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4184 nodeid2 = self._handle_mail('''Content-Type: text/plain;
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4185 charset="iso-8859-1"
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4186 From: Chef <chef@bork.bork.bork>
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4187 To: issue_tracker@your.tracker.email.domain.example
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4188 Message-Id: <dummy_test_message_id2>
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4189 In-Reply-To: <dummy_test_message_id>
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4190 Subject: Testing...
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4191
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4192 Followup message.
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4193 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4194
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4195 nodeid3 = self._handle_mail('''Content-Type: text/plain;
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4196 charset="iso-8859-1"
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4197 From: Chef <chef@bork.bork.bork>
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4198 To: issue_tracker@your.tracker.email.domain.example
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4199 Message-Id: <dummy_test_message_id3>
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4200 In-Reply-To: <dummy_test_message_id2>
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4201 Subject: Testing...
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4202
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4203 Yet another message in the same thread/issue.
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4204 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4205
3809
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4206 self.assertEqual(nodeid, nodeid2)
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
4207 self.assertEqual(nodeid, nodeid3)
3809
12fc9a8bd3e6 Fix bug in matching In-Reply-To header to existing Message-ID and add unit test.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3724
diff changeset
4208
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4209 def testHelpSubject(self):
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4210 message = '''Content-Type: text/plain;
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4211 charset="iso-8859-1"
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4212 From: Chef <chef@bork.bork.bork>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4213 To: issue_tracker@your.tracker.email.domain.example
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4214 Message-Id: <dummy_test_message_id2>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4215 In-Reply-To: <dummy_test_message_id>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4216 Subject: hElp
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4217
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4218
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4219 '''
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4220 self.assertRaises(MailUsageHelp, self._handle_mail, message)
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4221
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4222 def testMaillistSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4223 self.instance.config.MAILGW_SUBJECT_SUFFIX_DELIMITERS = '[]'
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4224 self.db.keyword.create(name='Foo')
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4225 self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4226 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4227 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4228 To: issue_tracker@your.tracker.email.domain.example
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4229 Subject: [mailinglist-name] [keyword1] Testing.. [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4230 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4231 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4232 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4233
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4234 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4235
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4236 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4237 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4238
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4239 def testUnknownPrefixSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4240 self.db.keyword.create(name='Foo')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4241 self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4242 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4243 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4244 To: issue_tracker@your.tracker.email.domain.example
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4245 Subject: VeryStrangeRe: [keyword1] Testing.. [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4246 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4247 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4248 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4249
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4250 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4251
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4252 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4253 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4254
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4255 def testOneCharSubject(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4256 message = '''Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4257 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4258 From: Chef <chef@bork.bork.bork>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4259 To: issue_tracker@your.tracker.email.domain.example
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4260 Subject: b
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4261 Cc: richard@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4262 Reply-To: chef@bork.bork.bork
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4263 Message-Id: <dummy_test_message_id>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4264
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4265 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4266 try:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4267 self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4268 except MailUsageError:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4269 self.fail('MailUsageError raised')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4270
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4271 def testIssueidLast(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4272 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4273 nodeid2 = self._handle_mail('''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4274 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4275 From: mary <mary@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4276 To: issue_tracker@your.tracker.email.domain.example
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4277 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4278 In-Reply-To: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4279 Subject: New title [issue1]
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4280
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4281 This is a second followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4282 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4283
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4284 assert nodeid1 == nodeid2
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4285 self.assertEqual(self.db.issue.get(nodeid2, 'title'), "Testing...")
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4286
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4287 def testSecurityMessagePermissionContent(self):
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4288 id = self.doNewIssue()
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4289 issue = self.db.issue.getnode (id)
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4290 self.db.security.addRole(name='Nomsg')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4291 self.db.security.addPermissionToRole('Nomsg', 'Email Access')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4292 for cl in 'issue', 'file', 'keyword':
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4293 for p in 'View', 'Edit', 'Create':
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4294 self.db.security.addPermissionToRole('Nomsg', p, cl)
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4295 self.db.user.set(self.mary_id, roles='Nomsg')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4296 nodeid = self._handle_mail('''Content-Type: text/plain;
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4297 charset="iso-8859-1"
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4298 From: Chef <chef@bork.bork.bork>
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4299 To: issue_tracker@your.tracker.email.domain.example
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
4300 Message-Id: <dummy_test_message_id_2>
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4301 Subject: [issue%(id)s] Testing... [nosy=+mary]
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4302
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4303 Just a test reply
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4304 '''%locals())
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4305 assert os.path.exists(SENDMAILDEBUG)
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4306 self.compareMessages(self._get_mail(),
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4307 '''FROM: roundup-admin@your.tracker.email.domain.example
4976
b198e50dc7dc issued2550877 fixed, the tests adapted to the more precise header comparison. Added a hint to the code how headers are handled.
Bernhard Reiter <bernhard@intevation.de>
parents: 4974
diff changeset
4308 TO: richard@test.test
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4309 Content-Type: text/plain; charset="utf-8"
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4310 Subject: [issue1] Testing...
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4311 To: richard@test.test
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4312 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
4313 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
4314 <issue_tracker@your.tracker.email.domain.example>
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4315 MIME-Version: 1.0
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
4316 Message-Id: <dummy_test_message_id_2>
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
4317 In-Reply-To: <dummy_test_message_id>
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4318 X-Roundup-Name: Roundup issue tracker
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4319 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4320 X-Roundup-Issue-Id: 1
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4321 X-Roundup-Issue-Status: chatting
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4322 Content-Transfer-Encoding: quoted-printable
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4323
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4324
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4325 Bork, Chef <chef@bork.bork.bork> added the comment:
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4326
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4327 Just a test reply
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4328
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4329 ----------
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4330 nosy: +mary
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4331 status: unread -> chatting
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4332
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4333 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4334 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4335 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4336 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4337 ''')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4338
5069
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4339 def testSpacesAroundMultilinkPropertyValue(self):
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4340 self.db.keyword.create(name='Foo')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4341 self.db.keyword.create(name='Bar')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4342 self.db.keyword.create(name='Baz This')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4343 nodeid1 = self.doNewIssue()
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4344 nodeid2 = self._handle_mail('''Content-Type: text/plain;
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4345 charset="iso-8859-1"
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4346 From: "Bork, Chef" <chef@bork.bork.bork>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4347 To: issue_tracker@your.tracker.email.domain.example
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4348 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4349 In-Reply-To: <dummy_test_message_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4350 Subject: [issue1] set keyword [ keyword =+ Foo,Baz This ; nosy =+ mary ]
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4351
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4352 Set the Foo and Baz This keywords along with mary for nosy.
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4353 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4354 assert os.path.exists(SENDMAILDEBUG)
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4355 self.compareMessages(self._get_mail(),
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4356 '''FROM: roundup-admin@your.tracker.email.domain.example
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4357 TO: mary@test.test, richard@test.test
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4358 Content-Type: text/plain; charset="utf-8"
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4359 Subject: [issue1] set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4360 To: mary@test.test, richard@test.test
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4361 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4362 Reply-To: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4363 <issue_tracker@your.tracker.email.domain.example>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4364 MIME-Version: 1.0
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4365 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4366 In-Reply-To: <dummy_test_message_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4367 X-Roundup-Name: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4368 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4369 X-Roundup-Issue-Id: 1
5069
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4370 X-Roundup-Issue-Status: chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4371 X-Roundup-Issue-keyword: Foo, Baz This
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4372 Content-Transfer-Encoding: quoted-printable
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4373
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4374 Bork, Chef <chef@bork.bork.bork> added the comment:
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4375
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4376 Set the Foo and Baz This keywords along with mary for nosy.
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4377
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4378 ----------
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4379 keyword: +Baz This, Foo
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4380 nosy: +mary
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4381 status: unread -> chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4382 title: Testing... -> set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4383
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4384 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4385 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4386 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4387 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4388 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4389
5150
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4390 def testmsgHeaderPropertyAssignedto(self):
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4391 ''' Test that setting the msg_header_property to an empty string
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4392 suppresses the X-Roundup-issue-prop header in generated email.
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4393 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4394 reference_email = '''FROM: roundup-admin@your.tracker.email.domain.example
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4395 TO: mary@test.test, richard@test.test
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4396 Content-Type: text/plain; charset="utf-8"
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4397 Subject: [issue1] set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4398 To: mary@test.test, richard@test.test
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4399 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4400 Reply-To: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4401 <issue_tracker@your.tracker.email.domain.example>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4402 MIME-Version: 1.0
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4403 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4404 In-Reply-To: <dummy_test_message_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4405 X-Roundup-Name: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4406 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4407 X-Roundup-Issue-Id: 1
5150
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4408 X-Roundup-Issue-Status: chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4409 X-Roundup-Issue-Assignedto: mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4410 Content-Transfer-Encoding: quoted-printable
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4411
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4412 Bork, Chef <chef@bork.bork.bork> added the comment:
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4413
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4414 Check that assignedto makes it into an X-Header
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4415
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4416 ----------
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4417 assignedto: -> mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4418 nosy: +mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4419 status: unread -> chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4420 title: Testing... -> set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4421
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4422 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4423 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4424 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4425 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4426 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4427 self.db.issue.properties['assignedto'].msg_header_property='username'
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4428
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4429 nodeid1 = self.doNewIssue()
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4430 nodeid2 = self._handle_mail('''Content-Type: text/plain;
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4431 charset="iso-8859-1"
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4432 From: "Bork, Chef" <chef@bork.bork.bork>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4433 To: issue_tracker@your.tracker.email.domain.example
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4434 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4435 In-Reply-To: <dummy_test_message_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4436 Subject: [issue1] set assignedto [assignedto=mary]
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4437
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4438 Check that assignedto makes it into an X-Header
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4439 ''')
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4440 assert os.path.exists(SENDMAILDEBUG)
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4441 self.compareMessages(self._get_mail(), reference_email)
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4442
5124
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4443 def testmsgHeaderPropertyEmptyString(self):
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4444 ''' Test that setting the msg_header_property to an empty string
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4445 suppresses the X-Roundup-issue-prop header in generated email.
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4446 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4447 reference_email = '''FROM: roundup-admin@your.tracker.email.domain.example
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4448 TO: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4449 Content-Type: text/plain; charset="utf-8"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4450 Subject: [issue1] set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4451 To: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4452 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4453 Reply-To: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4454 <issue_tracker@your.tracker.email.domain.example>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4455 MIME-Version: 1.0
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4456 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4457 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4458 X-Roundup-Name: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4459 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4460 X-Roundup-Issue-Id: 1
5124
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4461 X-Roundup-Issue-Status: chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4462 Content-Transfer-Encoding: quoted-printable
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4463
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4464 Bork, Chef <chef@bork.bork.bork> added the comment:
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4465
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4466 Set the Foo and Baz This keywords along with mary for nosy.
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4467
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4468 ----------
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4469 keyword: +Baz This, Foo
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4470 nosy: +mary
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4471 status: unread -> chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4472 title: Testing... -> set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4473
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4474 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4475 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4476 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4477 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4478 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4479 self.db.keyword.create(name='Foo')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4480 self.db.keyword.create(name='Bar')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4481 self.db.keyword.create(name='Baz This')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4482
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4483 self.db.issue.properties['keyword'].msg_header_property=''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4484
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4485 nodeid1 = self.doNewIssue()
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4486 nodeid2 = self._handle_mail('''Content-Type: text/plain;
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4487 charset="iso-8859-1"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4488 From: "Bork, Chef" <chef@bork.bork.bork>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4489 To: issue_tracker@your.tracker.email.domain.example
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4490 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4491 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4492 Subject: [issue1] set keyword [ keyword =+ Foo,Baz This ; nosy =+ mary ]
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4493
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4494 Set the Foo and Baz This keywords along with mary for nosy.
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4495 ''')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4496 assert os.path.exists(SENDMAILDEBUG)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4497 self.compareMessages(self._get_mail(), reference_email)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4498
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4499
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4500 def testOutlookAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4501 message = '''X-MimeOLE: Produced By Microsoft Exchange V6.5
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4502 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4503 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4504 Content-Type: multipart/mixed;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4505 boundary="----_=_NextPart_001_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4506 Subject: Example of a failed outlook attachment e-mail
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4507 Date: Tue, 23 Mar 2010 01:43:44 -0700
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4508 Message-ID: <CA37F17219784343816CA6613D2E339205E7D0F9@nrcwstexb1.nrc.ca>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4509 X-MS-Has-Attach: yes
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4510 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4511 Thread-Topic: Example of a failed outlook attachment e-mail
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4512 Thread-Index: AcrKJo/t3pUBBwTpSwWNE3LE67UBDQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4513 From: "Hugh" <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4514 To: <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4515 X-OriginalArrivalTime: 23 Mar 2010 08:45:57.0350 (UTC) FILETIME=[41893860:01CACA65]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4516
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4517 This is a multi-part message in MIME format.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4518
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4519 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4520 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4521 boundary="----_=_NextPart_002_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4522
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4523
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4524 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4525 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4526 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4527 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4528
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4529
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4530 Hi Richard,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4531
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4532 I suppose this isn't the exact message that was sent but is a resend of
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4533 one of my trial messages that failed. For your benefit I changed the
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4534 subject line and am adding these words to the message body. Should
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4535 still be as problematic, but if you like I can resend an exact copy of a
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4536 failed message changing nothing except putting your address instead of
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4537 our tracker.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4538
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4539 Thanks very much for taking time to look into this. Much appreciated.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4540
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4541 <<battery backup>>=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4542
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4543 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4544 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4545 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4546 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4547
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4548 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4549 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4550 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4551 <META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4552 charset=3Dus-ascii">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4553 <META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4554 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4555 <TITLE>Example of a failed outlook attachment e-mail</TITLE>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4556 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4557 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4558 <!-- Converted from text/rtf format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4559 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4560
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4561 <P><FONT SIZE=3D2 FACE=3D"Arial">Hi Richard,</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4562 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4563
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4564 <P><FONT SIZE=3D2 FACE=3D"Arial">I suppose this isn't the exact message =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4565 that was sent but is a resend of one of my trial messages that =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4566 failed.&nbsp; For your benefit I changed the subject line and am adding =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4567 these words to the message body.&nbsp; Should still be as problematic, =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4568 but if you like I can resend an exact copy of a failed message changing =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4569 nothing except putting your address instead of our tracker.</FONT></P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4570
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4571 <P><FONT SIZE=3D2 FACE=3D"Arial">Thanks very much for taking time to =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4572 look into this.&nbsp; Much appreciated.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4573 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4574 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4575
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4576 <P><FONT FACE=3D"Arial" SIZE=3D2 COLOR=3D"#000000"> &lt;&lt;battery =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4577 backup&gt;&gt; </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4578 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4579
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4580 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4581 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4582 ------_=_NextPart_002_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4583
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4584 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4585 Content-Type: message/rfc822
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4586 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4587
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4588 X-MimeOLE: Produced By Microsoft Exchange V6.5
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4589 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4590 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4591 boundary="----_=_NextPart_003_01CAC15A.29717800"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4592 X-OriginalArrivalTime: 11 Mar 2010 20:33:51.0249 (UTC) FILETIME=[28FEE010:01CAC15A]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4593 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4594 Subject: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4595 Date: Thu, 11 Mar 2010 13:33:43 -0700
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4596 Message-ID: <p06240809c7bf02f9624c@[128.114.22.203]>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4597 X-MS-Has-Attach:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4598 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4599 Thread-Topic: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4600 Thread-Index: AcrBWimtulTrSvBdQ2CcfZ8lyQdxmQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4601 From: "Jerry" <jerry@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4602 To: "Hugh" <hugh@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4603
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4604 This is a multi-part message in MIME format.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4605
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4606 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4607 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4608 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4609 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4610
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4611 Dear Hugh,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4612 A car batter has an energy capacity of ~ 500Wh. A UPS=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4613 battery is worse than this.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4614
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4615 if we need to provied 100kW for 30 minutes that will take 100 car=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4616 batteries. This seems like an awful lot of batteries.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4617
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4618 Of course I like your idea of making the time 1 minute, so we get to=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4619 a more modest number of batteries
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4620
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4621 Jerry
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4622
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4623
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4624 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4625 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4626 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4627 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4628
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4629 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4630 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4631 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4632 <META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4633 charset=3Diso-8859-1">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4634 <META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4635 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4636 <TITLE>battery backup</TITLE>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4637 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4638 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4639 <!-- Converted from text/plain format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4640
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4641 <P><FONT SIZE=3D2>Dear Hugh,</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4642
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4643 <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=3D2>A car =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4644 batter has an energy capacity of ~ 500Wh.&nbsp; A UPS </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4645
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4646 <BR><FONT SIZE=3D2>battery is worse than this.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4647 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4648
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4649 <P><FONT SIZE=3D2>if we need to provied 100kW for 30 minutes that will =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4650 take 100 car </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4651
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4652 <BR><FONT SIZE=3D2>batteries.&nbsp; This seems like an awful lot of =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4653 batteries.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4654 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4655
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4656 <P><FONT SIZE=3D2>Of course I like your idea of making the time 1 =
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4657 minute, so we get to </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4658
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4659 <BR><FONT SIZE=3D2>a more modest number of batteries</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4660 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4661
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4662 <P><FONT SIZE=3D2>Jerry</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4663 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4664
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4665 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4666 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4667 ------_=_NextPart_003_01CAC15A.29717800--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4668
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4669 ------_=_NextPart_001_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4670 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4671 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4672 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4673 msgid = self.db.issue.get(nodeid, 'messages')[0]
5649
f8893e1cde0d assert_ is depricated. Replacing with assertTrue to reduce logs in travisci.
John Rouillard <rouilj@ieee.org>
parents: 5547
diff changeset
4674 self.assertTrue(self.db.msg.get(msgid, 'content').startswith('Hi Richard'))
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4675 self.assertEqual(self.db.msg.get(msgid, 'files'), ['1', '2'])
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4676 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4677 self.assertEqual(self.db.file.get(fileid, 'type'), 'text/html')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4678 fileid = self.db.msg.get(msgid, 'files')[1]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4679 self.assertEqual(self.db.file.get(fileid, 'type'), 'message/rfc822')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4680
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4681 def testForwardedMessageAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4682 message = '''Return-Path: <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4683 Received: from localhost(127.0.0.1), claiming to be "[115.130.26.69]"
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
4684 via SMTP by localhost, id smtpdAAApLaWrq; Tue Apr 13 23:10:05 2010
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4685 Message-ID: <4BC4F9C7.50409@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4686 Date: Wed, 14 Apr 2010 09:09:59 +1000
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4687 From: Rupert Goldie <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4688 User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4689 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4690 To: ekit issues <issues@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4691 Subject: [Fwd: PHP ERROR (fb)] post limit reached
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4692 Content-Type: multipart/mixed; boundary="------------000807090608060304010403"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4693
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4694 This is a multi-part message in MIME format.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4695 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4696 Content-Type: text/plain; charset=ISO-8859-1; format=flowed
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4697 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4698
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4699 Catch this exception and log it without emailing.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4700
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4701 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4702 Content-Type: message/rfc822; name="PHP ERROR (fb).eml"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4703 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4704 Content-Disposition: inline; filename="PHP ERROR (fb).eml"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4705
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4706 Return-Path: <ektravj@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4707 X-Sieve: CMU Sieve 2.2
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4708 via SMTP by crown.off.ekorp.com, id smtpdAAA1JaW1o; Tue Apr 13 23:01:04 2010
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4709 X-Virus-Scanned: by amavisd-new at ekit.com
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4710 To: facebook-errors@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4711 From: ektravj@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4712 Subject: PHP ERROR (fb)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4713 Message-Id: <20100413230100.D601D27E84@mail2.elax3.ekorp.com>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4714 Date: Tue, 13 Apr 2010 23:01:00 +0000 (UTC)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4715
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4716 [13-Apr-2010 22:49:02] PHP Fatal error: Uncaught exception 'Exception' with message 'Facebook Error Message: Feed action request limit reached' in /app/01/www/virtual/fb.ekit.com/htdocs/includes/functions.php:280
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4717 Stack trace:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4718 #0 /app/01/www/virtual/fb.ekit.com/htdocs/gateway/ekit/feed/index.php(178): fb_exceptions(Object(FacebookRestClientException))
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4719 #1 {main}
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4720 thrown in /app/01/www/virtual/fb.ekit.com/htdocs/includes/functions.php on line 280
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4721
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4722
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4723 --------------000807090608060304010403--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4724 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4725 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4726 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4727 msgid = self.db.issue.get(nodeid, 'messages')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4728 self.assertEqual(self.db.msg.get(msgid, 'content'),
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4729 'Catch this exception and log it without emailing.')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4730 self.assertEqual(self.db.msg.get(msgid, 'files'), ['1'])
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4731 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4732 self.assertEqual(self.db.file.get(fileid, 'type'), 'message/rfc822')
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4733
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4734
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4735 def testStandardMsg(self):
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4736 self.instance.config['MAIL_DOMAIN'] = 'example.com'
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4737 name = u'Accented chars \xe4\xf6\xfc\xc4\xd6\xdc\xdf'
5848
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4738 # Python2 wants an UTF-8 string in first component of adr and content
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4739 # while Python3 wants a String
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4740 # It *may* be a bug that the subject can be Unicode in python2.
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4741 # But it doesn't hurt if the encoding happens to be utf-8
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4742 if sys.version_info[0] <= 2:
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4743 name = name.encode('utf-8')
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4744 adr = 'someone@example.com'
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4745 to = [adr]
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4746 adr = (name, adr)
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4747 mailer = roundupdb.Mailer(self.db.config)
5848
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4748 mailer.standard_message(to, subject=name, content=name, author=adr)
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4749 assert os.path.exists(SENDMAILDEBUG)
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4750 self.compareMessages(self._get_mail(),
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4751 '''
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4752 FROM: roundup-admin@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4753 TO: someone@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4754 From: =?utf-8?b?QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=?=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4755 <someone@example.com>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4756 To: someone@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4757 MIME-Version: 1.0
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4758 Content-Type: text/plain; charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4759 Subject: =?utf-8?b?QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=?=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4760 X-Roundup-Name: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4761 X-Roundup-Loop: hello
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4762 Content-Transfer-Encoding: base64
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4763
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4764 QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4765 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4766
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4767
5036
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
4768 @skip_pgp
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4769 class MailgwPGPTestCase(MailgwTestAbstractBase, unittest.TestCase):
4542
46239c21a1eb Sending of PGP-Encrypted mail to all users or selected users (via roles)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4541
diff changeset
4770 pgphome = gpgmelib.pgphome
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4771 def setUp(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4772 MailgwTestAbstractBase.setUp(self)
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4773 self.db.security.addRole(name = 'pgp', description = 'PGP Role')
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4774 self.instance.config['PGP_HOMEDIR'] = self.pgphome
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4775 self.instance.config['PGP_ROLES'] = 'pgp'
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4776 self.instance.config['PGP_ENABLE'] = True
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4777 self.instance.config['MAIL_DOMAIN'] = 'example.com'
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4778 self.instance.config['ADMIN_EMAIL'] = 'roundup-admin@example.com'
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4779 self.db.user.set(self.john_id, roles='User,pgp')
4542
46239c21a1eb Sending of PGP-Encrypted mail to all users or selected users (via roles)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4541
diff changeset
4780 gpgmelib.setUpPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4781
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4782 def tearDown(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4783 MailgwTestAbstractBase.tearDown(self)
4542
46239c21a1eb Sending of PGP-Encrypted mail to all users or selected users (via roles)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4541
diff changeset
4784 gpgmelib.tearDownPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4785
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4786 def testPGPUnsignedMessage(self):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4787 self.assertRaises(MailUsageError, self._handle_mail,
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4788 '''Content-Type: text/plain;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4789 charset="iso-8859-1"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4790 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4791 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4792 Message-Id: <dummy_test_message_id>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4793 Subject: [issue] Testing non-signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4794
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4795 This is no pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4796 ''')
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4797
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4798 signed_msg = '''Content-Disposition: inline
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4799 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4800 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4801 Subject: [issue] Testing signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4802 Content-Type: multipart/signed; micalg=pgp-sha1;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4803 protocol="application/pgp-signature"; boundary="cWoXeonUoKmBZSoM"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4804
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4805
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4806 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4807 Content-Type: text/plain; charset=us-ascii
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4808 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4809
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4810 This is a pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4811
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4812 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4813 Content-Type: application/pgp-signature; name="signature.asc"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4814 Content-Description: Digital signature
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4815 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4816
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4817 -----BEGIN PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4818 Version: GnuPG v1.4.10 (GNU/Linux)
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4819
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4820 iJwEAQECAAYFAk6N4A4ACgkQv8+6oPhbo5x5nAP/d7R7SxTvLoVESI+1r7eDXp1J
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4821 LvBVU2EF3YFYKBHMLcWmjG92fNjnHX6NENTEhTeBynba5IPEwUfITC+7PmgPmQkA
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4822 VXnFZnwraHxsYgyFsVFN1kkTSbwRUlWl9+nTEsr0yBLTpZN0QSIDcwu+i/xVcg+t
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4823 ZQ4K6R3m3AOw7BLdvZs=
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4824 =wpYk
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4825 -----END PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4826
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4827 --cWoXeonUoKmBZSoM--
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4828 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4829
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4830 def testPGPSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4831 nodeid = self._handle_mail(self.signed_msg)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4832 m = self.db.issue.get(nodeid, 'messages')[0]
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4833 self.assertEqual(self.db.msg.get(m, 'content'),
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4834 'This is a pgp signed message.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4835 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4836 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4837 self.assertEqual(l, 'email-sig-openpgp')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4838
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4839
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4840 def testPGPSignedMessageFail(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4841 # require both, signing and encryption
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4842 self.instance.config['PGP_REQUIRE_INCOMING'] = 'both'
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4843 self.assertRaises(MailUsageError, self._handle_mail, self.signed_msg)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4844
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4845 encrypted_msg = '''Content-Disposition: inline
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4846 From: John Doe <john@test.test>
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4847 To: roundup-admin@example.com
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4848 Subject: [issue] Testing encrypted message...
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4849 Content-Type: multipart/encrypted; protocol="application/pgp-encrypted";
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4850 boundary="d6Gm4EdcadzBjdND"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4851
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4852 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4853 Content-Type: application/pgp-encrypted
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4854 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4855
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4856 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4857
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4858 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4859 Content-Type: application/octet-stream
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4860 Content-Disposition: inline; filename="msg.asc"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4861
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4862 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4863 Version: GnuPG v1.4.10 (GNU/Linux)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4864
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4865 hQEMAzfeQttq+Q2YAQf9FxCtZVgC7jAy6UkeAJ1imCpnh9DgKA5w40OFtrY4mVAp
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4866 cL7kCkvGvJCW7uQZrmSgIiYaZGLI3GS42XutORC6E6PzBEW0fJUMIXYmoSd0OFeY
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4867 3H2+854qu37W/uCOWM9OnPFIH8g8q8DgYy88i0goM+Ot9Q96yFfJ7QymanOZJgVa
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4868 MNC+oKDiIZKiE3PCwtGr+8CHZN/9J6O4FeJijBlr09C5LXc+Nif5T0R0nt17MAns
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4869 9g2UvGxW8U24NAS1mOg868U05hquLPIcFz9jGZGknJu7HBpOkQ9GjKqkzN8pgZVN
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4870 VbN8IdDqi0QtRKE44jtWQlyNlESMjv6GtC2V9F6qKNK8AfHtBexDhyv4G9cPFFNO
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4871 afQ6e4dPi89RYIQyydtwiqao8fj6jlAy2Z1cbr7YxwBG7BeUZv9yis7ShaAIo78S
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4872 82MrCYpSjfHNwKiSfC5yITw22Uv4wWgixVdAsaSdtBqEKXJPG9LNey18ArsBjSM1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4873 P81iDOWUp/uyIe5ZfvNI38BBxEYslPTUlDk2GB8J2Vun7IWHoj9a4tY3IotC9jBr
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4874 5Qnigzqrt7cJZX6OrN0c+wnOjXbMGYXmgSs4jeM=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4875 =XX5Q
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4876 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4877
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4878 --d6Gm4EdcadzBjdND--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4879 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4880 def testPGPEncryptedUnsignedMessageError(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4881 self.assertRaises(MailUsageError, self._handle_mail, self.encrypted_msg)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4882
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4883 def testPGPEncryptedUnsignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4884 # no error if we don't require a signature:
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4885 self.instance.config['PGP_REQUIRE_INCOMING'] = 'encrypted'
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4886 nodeid = self._handle_mail (self.encrypted_msg)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4887 m = self.db.issue.get(nodeid, 'messages')[0]
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4888 self.assertEqual(self.db.msg.get(m, 'content'),
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4889 'This is the text to be encrypted')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4890 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4891 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4892 self.assertEqual(l, 'email')
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4893
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4894 def testPGPEncryptedUnsignedMessageFromNonPGPUser(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4895 msg = self.encrypted_msg.replace('John Doe <john@test.test>',
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4896 '"Contrary, Mary" <mary@test.test>')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4897 nodeid = self._handle_mail (msg)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4898 m = self.db.issue.get(nodeid, 'messages')[0]
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4899 self.assertEqual(self.db.msg.get(m, 'content'),
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4900 'This is the text to be encrypted')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4901 self.assertEqual(self.db.msg.get(m, 'author'), self.mary_id)
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4902 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4903 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4904 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4905
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4906
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4907 # check that a bounce-message that is triggered *after*
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4908 # decrypting is properly encrypted:
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4909 def testPGPEncryptedUnsignedMessageCheckBounce(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4910 # allow non-signed msg
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4911 self.instance.config['PGP_REQUIRE_INCOMING'] = 'encrypted'
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4912 # don't allow creation of message, trigger error *after* decrypt
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4913 self.db.user.set(self.john_id, roles='pgp')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4914 self.db.security.addPermissionToRole('pgp', 'Email Access')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4915 self.db.security.addPermissionToRole('pgp', 'Create', 'issue')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4916 # trap_exc=1: we want a bounce message:
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4917 self._handle_mail(self.encrypted_msg, trap_exc=1)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4918 m = self._get_mail()
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4919 parts = email.message_from_string(m).get_payload()
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4920 self.assertEqual(len(parts),2)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4921 self.assertEqual(parts[0].get_payload().strip(), 'Version: 1')
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4922 crypt = gpg.core.Data(parts[1].get_payload())
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4923 plain = gpg.core.Data()
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4924 ctx = gpg.core.Context()
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4925 res = ctx.op_decrypt(crypt, plain)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4926 self.assertEqual(res, None)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4927 plain.seek(0,0)
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4928 parts = message_from_bytes(plain.read()).get_payload()
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4929 self.assertEqual(len(parts),2)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4930 self.assertEqual(parts[0].get_payload().strip(),
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4931 'You are not permitted to create messages.')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4932 self.assertEqual(parts[1].get_payload().strip(),
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4933 '''Content-Type: text/plain; charset=us-ascii
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4934 Content-Disposition: inline
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4935
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4936 This is the text to be encrypted''')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4937
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4938
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4939 def testPGPEncryptedSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4940 # require both, signing and encryption
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4941 self.instance.config['PGP_REQUIRE_INCOMING'] = 'both'
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4942 nodeid = self._handle_mail('''Content-Disposition: inline
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4943 From: John Doe <john@test.test>
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4944 To: roundup-admin@example.com
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4945 Subject: Testing encrypted and signed message
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4946 MIME-Version: 1.0
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4947 Content-Type: multipart/encrypted; protocol="application/pgp-encrypted";
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4948 boundary="ReaqsoxgOBHFXBhH"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4949
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4950 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4951 Content-Type: application/pgp-encrypted
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4952 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4953
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4954 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4955
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4956 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4957 Content-Type: application/octet-stream
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4958 Content-Disposition: inline; filename="msg.asc"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4959
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4960 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4961 Version: GnuPG v1.4.10 (GNU/Linux)
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4962
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4963 hQEMAzfeQttq+Q2YAQf+NaC3r8qBURQqxHH9IAP4vg0QAP2yj3n0v6guo1lRf5BA
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4964 EUfTQ3jc3chxLvzTgoUIuMOvhlNroqR1lgLwhfSTCyuKWDZa+aVNiSgsB2MD44Xd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4965 mAkKKmnmOGLmfbICbPQZxl4xNhCMTHiAy1xQE6mTj/+pEAq5XxjJUwn/gJ3O1Wmd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4966 NyWtJY2N+TRbxUVB2WhG1j9J1D2sjhG26TciE8JeuLDZzaiVNOW9YlX2Lw5KtlkR
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4967 Hkgw6Xme06G0XXZUcm9JuBU/7oFP/tSrC1tBsnVlq1pZYf6AygIBdXWb9gD/WmXh
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4968 7Eu/xCKrw4RFnXnTgmBz/NHRfVDkfdSscZqexnG1D9LAwQHSuVf8sxDPNesv0W+8
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4969 e49loVjvU+Y0BCFQAbWSW4iOEUYZpW/ITRE4+wIqMXZbAraeBV0KPZ4hAa3qSmf+
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4970 oZBRcbzssL163Odx/OHRuK2J2CHC654+crrlTBnxd/RUKgRbSUKwrZzB2G6OPcGv
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4971 wfiqXsY+XvSZtTbWuvUJxePh8vhhhjpuo1JtlrYc3hZ9OYgoCoV1JiLl5c60U5Es
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4972 oUT9GDl1Qsgb4dF4TJ1IBj+riYiocYpJxPhxzsy6liSLNy2OA6VEjG0FGk53+Ok9
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4973 7UzOA+WaHJHSXafZzrdP1TWJUFlOMA+dOgTKpH69eL1+IRfywOjEwp1UNSbLnJpc
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4974 D0QQLwIFttplKvYkn0DZByJCVnIlGkl4s5LM5rnc8iecX8Jad0iRIlPV6CVM+Nso
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4975 WdARUfyJfXAmz8uk4f2sVfeMu1gdMySdjvxwlgHDJdBPIG51r2b8L/NCTiC57YjF
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4976 zGhS06FLl3V1xx6gBlpqQHjut3efrAGpXGBVpnTJMOcgYAk=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4977 =jt/n
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4978 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4979
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4980 --ReaqsoxgOBHFXBhH--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4981 ''')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4982 m = self.db.issue.get(nodeid, 'messages')[0]
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4983 self.assertEqual(self.db.msg.get(m, 'content'),
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4984 'This is the text of a signed and encrypted email.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4985 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4986 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4987 self.assertEqual(l, 'email-sig-openpgp')
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4988
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
4989 # vim: set filetype=python sts=4 sw=4 et si :

Roundup Issue Tracker: http://roundup-tracker.org/