annotate test/test_mailgw.py @ 5548:fea11d05110e

Avoid errors from selecting "no selection" on multilink (issue2550722). As discussed in issue 2550722 there are various cases where selecting "no selection" on a multilink can result in inappropriate errors from Roundup: * If selecting "no selection" produces a null edit (a value was set in the multilink in an edit with an error, then removed again, along with all other changes, in the next form submission), so the page is rendered from the form contents including the "-<id>" value for "no selection" for the multilink. * If creating an item with a nonempty value for a multilink has an error, and the resubmission changes that multilink to "no selection" (and this in turn has subcases, according to whether the creation then succeeds or fails on the resubmission, which need fixes in different places in the Roundup code). All of these cases have in common that it is expected and OK to have a "-<id>" value for a submission for a multilink when <id> is not set in that multilink in the database (because the original attempt to set <id> in that multilink had an error), so the hyperdb.py logic to give an error in that case is thus removed. In the subcase of the second case where the resubmission with "no selection" has an error, the templating code tries to produce a menu entry for the "-<id>" multilink value, which also results in an error, hence the templating.py change to ignore such values in the list for a multilink.
author Joseph Myers <jsm@polyomino.org.uk>
date Thu, 27 Sep 2018 11:33:01 +0000
parents 081be318661b
children f8893e1cde0d
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
5542
29346d92d80c Fix email interfaces with Python 3 (issue 2550974, issue 2551000).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5513
diff changeset
16 import unittest, tempfile, os, shutil, errno, imp, 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
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
30
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
31 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
32 from roundup.anypy.strings import b2s, u2s, s2b
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
33
5381
0942fe89e82e Python 3 preparation: change "x.has_key(y)" to "y in x".
Joseph Myers <jsm@polyomino.org.uk>
parents: 5378
diff changeset
34 if 'SENDMAILDEBUG' not in os.environ:
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
35 os.environ['SENDMAILDEBUG'] = 'mail-test.log'
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
36 SENDMAILDEBUG = os.environ['SENDMAILDEBUG']
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
37
4407
f6a2bfd351ee force tests checking text output to work in the "C" locale
Richard Jones <richard@users.sourceforge.net>
parents: 4405
diff changeset
38 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
39 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
40 parseContent, IgnoreLoop, IgnoreBulk, MailUsageError, MailUsageHelp
4981
7f8f27ce1a06 Remove rfc2822.py
John Kristensen <john@jerrykan.com>
parents: 4979
diff changeset
41 from roundup import init, instance, password, __version__
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
42
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
43 #import db_test_base
5388
d26921b851c3 Python 3 preparation: make relative imports explicit.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5381
diff changeset
44 from . import memorydb
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
45 from .cmp_helper import StringFragmentCmpHelper
1797
c1eec970d5c0 Optimize mailgw and cgi tests...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1796
diff changeset
46
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
47 def expectedFailure(method):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
48 """ For marking a failing test.
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
49 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
50 """
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
51 return lambda x: 0
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
52
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
53
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
54 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
55 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
56 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
57
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
58 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
59
5502
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
60 def unfold(lst):
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
61 return [l.replace('\n', '') for l in lst]
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
62
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
63
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
64 class Tracker(object):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
65 def open(self, journaltag):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
66 return self.db
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
67
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
68 class DiffHelper:
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
69 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
70 """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
71
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
72 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
73
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
74 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
75
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
76 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
77 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
78 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
79 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
80 """
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
81 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
82 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
83
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
84 # 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
85 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
86 old['Precedence'] = 'bulk'
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
87
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
88 # 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
89 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
90
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
91 if not new == old:
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
92 res = []
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
93
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
94 replace = {}
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
95
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
96 # 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
97 # 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
98 # 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
99 # 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
100 # 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
101 # present.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
102 # 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
103 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
104 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
105
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
106 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
107 # 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
108 # the test cases in old.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
109 old_headers.append("x-roundup-version")
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
110
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
111 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
112 old_headers.sort()
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 new_headers != old_headers:
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
115 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
116
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
117 for key in new.keys():
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
118 if key.startswith('from '):
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
119 # skip the unix from line
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
120 continue
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
121 if key.lower() == 'x-roundup-version':
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
122 # version changes constantly, so handle it specially
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
123 if new[key] != __version__:
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
124 res.append(' %s: %r != %r' % (key, __version__,
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
125 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
126 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
127 # handle mime messages
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
128 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
129 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
130 # 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
131 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
132 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
133 # 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
134 if not newmimetype == oldmimetype:
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
135 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
136 replace ['--' + newmimeboundary] = '--' + oldmimeboundary
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
137 replace ['--' + newmimeboundary + '--'] = '--' + oldmimeboundary + '--'
5502
497ab896397d compare folded headers in mailgw tests
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5494
diff changeset
138 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
139 # 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
140 # 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
141 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
142 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
143
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
144 # 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
145 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
146 replace=replace)
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
147 if body_diff:
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
148 res.append('')
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
149 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
150
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
151 if res:
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
152 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
153 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
154
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
155 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
156 '''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
157 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
158 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
159 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
160 '''
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
161 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
162 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
163 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
164 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
165 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
166 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
167 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
168 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
169 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
170 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
171 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
172 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
173 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
174 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
175 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
176 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
177 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
178 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
179 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
180 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
181
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
182 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
183
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
184 from roundup.hyperdb import String
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
185
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
186
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
187 class MailgwTestAbstractBase(DiffHelper):
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
188 count = 0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
189 schema = 'classic'
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
190 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
191 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
192 roundupdb._ = mailgw._ = i18n.get_translation(language='C').gettext
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
193 self.__class__.count = self.__class__.count + 1
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
194
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
195 # 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
196 self.db = memorydb.create('admin')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
197
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
198 self.db.issue.addprop(tx_Source=String())
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
199 self.db.msg.addprop(tx_Source=String())
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
200 self.db.post_init()
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
201
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
202 self.db.tx_Source = "email"
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
203
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
204 self.instance = Tracker()
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
205 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
206 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
207 self.instance.MailGW = MailGW
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
208
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
209 self.chef_id = self.db.user.create(username='Chef',
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
210 address='chef@bork.bork.bork', realname='Bork, Chef', roles='User')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
211 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
212 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
213 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
214 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
215 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
216 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
217 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
218 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
219 address='rgg@test.test', roles='User')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
220
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
221 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
222 roundupdb._ = mailgw._ = self.old_translate_
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
223 if os.path.exists(SENDMAILDEBUG):
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
224 os.remove(SENDMAILDEBUG)
1126
d77b86cc541b close the databases before test cleanup
Richard Jones <richard@users.sourceforge.net>
parents: 1095
diff changeset
225 self.db.close()
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
226
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
227 def _allowAnonymousSubmit(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
228 p = [
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
229 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
230 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
231 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
232 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
233 ]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
234 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
235
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
236 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
237 class MailGW(self.instance.MailGW):
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
238 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
239 return self._handle_message(message)
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
240 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
241 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
242 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
243
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
244 def _handle_mail(self, message, args=(), trap_exc=0):
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
245 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
246 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
247 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
248
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
249 def _get_mail(self):
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
250 """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
251
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
252 Note: the resulting email will have three leading extra lines
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
253 written by the self.debug code branch in Mailer.smtp_send().
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
254 """
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
255 f = open(SENDMAILDEBUG)
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
256 try:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
257 return f.read()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
258 finally:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
259 f.close()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
260
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
261 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
262 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
263 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
264 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
265 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
266 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
267 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
268 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
269 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
270
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
271 '''
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
272 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
273 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
274 # 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
275 # 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
276 # 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
277
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
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
279 # 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
280 # 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
281 def testEmptyMessage(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
282 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
283 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
284 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
285 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
286 Cc: richard@test.test
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
287 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
288 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
289 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
290
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
291 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
292 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
293 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'Testing...')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
294 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
295
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
296
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
297 class MailgwTestCase(MailgwTestAbstractBase, StringFragmentCmpHelper, unittest.TestCase):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
298
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
299 def testTextHtmlMessage(self):
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
300 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
301 charset="iso-8859-1"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
302 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
303 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
304 Cc: richard@test.test
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
305 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
306 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
307 Subject: [issue] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
308
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
309 <body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
310 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
311 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
312 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
313 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
314 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
315 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
316 <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
317 <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
318 <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
319 <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
320 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
321 <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
322 <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
323 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
324 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
325 <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
326 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
327 <ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
328 <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
329 <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
330 <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
331 <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
332 <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
333 <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
334 <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
335 <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
336 <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
337 <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
338 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
339 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
340 <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
341 <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
342 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
343 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
344 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
345 <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
346 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
347 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
348 <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
349 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
350 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
351 <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
352 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
353 </body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
354 '''
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
355 text_fragments = ['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/).']
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
356
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
357 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = "dehtml"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
358 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
359 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
360 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
361 self.compareStringFragments(self.db.msg.get(msgid, 'content'),
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
362 text_fragments)
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
363
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
364 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = "none"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
365 self.assertRaises(MailUsageError, self._handle_mail, html_message)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
366
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
367 def testMessageWithFromInIt(self):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
368 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
369 charset="iso-8859-1"
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
370 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
371 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
372 Cc: richard@test.test
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
373 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
374 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
375 Subject: [issue] Testing...
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
376
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
377 From here to there!
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
378 ''')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
379 assert not os.path.exists(SENDMAILDEBUG)
4343
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
380 msgid = self.db.issue.get(nodeid, 'messages')[0]
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
381 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
382
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
383 def testNoMessageId(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
384 self.instance.config['MAIL_DOMAIN'] = 'example.com'
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
385 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
386 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
387 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
388 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
389 Cc: richard@test.test
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
390 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
391 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
392
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
393 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
394 ''')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
395 assert not os.path.exists(SENDMAILDEBUG)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
396 msgid = self.db.issue.get(nodeid, 'messages')[0]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
397 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
398 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
399 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
400 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
401 self.assertEqual(x, 'issueNone')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
402 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
403 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
404 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
405 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
406 Subject: [issue%(nodeid)s] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
407
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
408 Just a test reply
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
409 '''%locals())
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
410 msgid = self.db.issue.get(nodeid, 'messages')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
411 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
412 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
413 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
414 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
415 self.assertEqual(x, "issue%s"%nodeid)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
416
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
417 def testOptions(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
418 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
419 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
420 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
421 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
422 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
423 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
424 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
425
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
426 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
427 ''', (('-C', 'issue'), ('-S', 'status=chatting;priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
428 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
429 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
430
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
431 def testOptionsMulti(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
432 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
433 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
434 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
435 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
436 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
437 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
438 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
439
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
440 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
441 ''', (('-C', 'issue'), ('-S', 'status=chatting'), ('-S', 'priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
442 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
443 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
444
4478
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
445 def testOptionClass(self):
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
446 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
447 charset="iso-8859-1"
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
448 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
449 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
450 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
451 Reply-To: chef@bork.bork.bork
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
452 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
453
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
454 Hi there!
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
455 ''', (('-c', 'issue'),))
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
456 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
457 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
458 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
459
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
460 newmsg = '''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
461 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
462 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
463 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
464 Cc: richard@test.test
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
465 Message-Id: <dummy_test_message_id>
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
466 Subject: [issue] Testing...
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
467
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
468 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
469 '''
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
470
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
471 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
472 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
473 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
474 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
475 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
476 self.assertEqual(l, [self.chef_id, self.richard_id])
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
477
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
478 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
479 l = self.db.msg.get('1', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
480 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
481
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
482 return nodeid
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
483
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
484 def testNewIssue(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
485 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
486
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
487 def testNewIssueNosy(self):
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
488 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
489 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
490 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
491 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
492 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
493 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
494
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
495 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
496 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
497 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
498 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
499 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
500 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
501 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
502 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
503 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
504 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
505 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
506 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
507 self.assertEqual(recv, [self.richard_id])
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
508
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
509 def testAlternateAddress(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
510 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
511 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
512 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
513 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
514 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
515 Subject: [issue] Testing...
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
516
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
517 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
518 ''')
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
519 userlist = self.db.user.list()
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
520 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
521 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
522 "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
523
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
524 def testNewIssueNoClass(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
525 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
526 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
527 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
528 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
529 Cc: richard@test.test
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
530 Message-Id: <dummy_test_message_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
531 Subject: Testing...
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
532
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
533 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
534 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
535 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
536
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
537 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
538 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
539 self._handle_mail('''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
540 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
541 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
542 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
543 Message-Id: <dummy_test_message_id>
560
d7b9751f8927 Mail gateway improvements.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 537
diff changeset
544 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
545
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
546 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
547 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
548 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
549 '''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
550 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
551 Content-Type: text/plain; charset="utf-8"
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
552 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
553 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
554 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
555 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
556 <issue_tracker@your.tracker.email.domain.example>
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
557 MIME-Version: 1.0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
558 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
559 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
560 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
561 X-Roundup-Issue-Status: unread
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
562 Content-Transfer-Encoding: quoted-printable
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
563
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
564
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
565 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
566
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
567 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
568
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
569 ----------
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
570 assignedto: richard
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
571 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
572 nosy: Chef, mary, richard
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
573 status: unread
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
574 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
575 tx_Source: email
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
576
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
577 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
578 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
579 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
580 _______________________________________________________________________
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
581 ''')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
582
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
583 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
584 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
585 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
586 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
587 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
588 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
589 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
590 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
591
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
592 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
593 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
594 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
595 '''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
596 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
597 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
598 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
599 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
600 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
601 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
602 <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
603 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
604 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
605 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
606 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
607 X-Roundup-Issue-Status: unread
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
608 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
609
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 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
611
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 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
614 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
615 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
616 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
617 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
618 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
619
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
620 _______________________________________________________________________
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 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
622 <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
623 _______________________________________________________________________
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 ''')
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
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 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
627 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
628 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
629 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
630 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
631 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
632 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
633 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
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 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
636 ''')
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 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
638 '''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
639 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
640 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
641 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
642 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
643 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
644 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
645 <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
646 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
647 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
648 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
649 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
650 X-Roundup-Issue-Status: unread
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
651 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
652
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 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
654
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 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
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 ----------
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 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
659 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
660 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
661 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
662 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
663 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
664
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 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
666 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
667 <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
668 _______________________________________________________________________
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
669 ''')
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
670
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
671 octetstream_msg = '''From: mary <mary@test.test>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
672 To: issue_tracker@your.tracker.email.domain.example
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
673 Message-Id: <followup_dummy_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
674 In-Reply-To: <dummy_test_message_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
675 Subject: [issue1] Testing...
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
676 Content-Type: multipart/mixed; boundary="uh56ypi7view24rr"
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
677 Content-Disposition: inline
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
678
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
679 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
680 Content-Type: text/plain; charset=us-ascii
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
681 Content-Disposition: inline
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
682
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
683 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
684 make it as-is through roundup due to Content-Type
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
685 application/octet-stream)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
686 --
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
687 Ralf Schlatterbeck email: ralf@zoo.priv.at
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
688
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
689 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
690 Content-Type: application/octet-stream
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
691 Content-Disposition: attachment; filename=testfile
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
692 Content-Transfer-Encoding: quoted-printable
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
693
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
694 This is a file containing text
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
695 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
696
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
697 --uh56ypi7view24rr--
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
698 '''
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
699
3974
ff089ebe95d1 remove duplicate Content-Type header from multipart_msg...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3966
diff changeset
700 multipart_msg = '''From: mary <mary@test.test>
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
701 To: issue_tracker@your.tracker.email.domain.example
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
702 Message-Id: <followup_dummy_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
703 In-Reply-To: <dummy_test_message_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
704 Subject: [issue1] Testing...
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
705 Content-Type: multipart/mixed; boundary="bxyzzy"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
706 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
707
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
708
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
709 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
710 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWE"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
711 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
712
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
713 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
714 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
715 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
716
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
717 test attachment first text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
718
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
719 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
720 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
721 Content-Disposition: attachment; filename="first.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
722 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
723
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
724 SnVzdCBhIHRlc3QgAQo=
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
725
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
726 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
727 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
728 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
729
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
730 test attachment second text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
731
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
732 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
733 Content-Type: text/html
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
734 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
735
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
736 <html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
737 to be ignored.
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
738 </html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
739
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
740 --bCsyhTFzCvuiizWE--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
741
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
742 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
743 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWF"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
744 Content-Disposition: inline
609
633f2b542146 Clean up mail handling, multipart handling.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 599
diff changeset
745
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
746 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
747 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
748 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
749
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
750 test attachment third text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
751
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
752 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
753 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
754 Content-Disposition: attachment; filename="second.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
755 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
756
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
757 SnVzdCBhIHRlc3QK
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
758
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
759 --bCsyhTFzCvuiizWF--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
760
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
761 --bxyzzy--
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
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
764 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
765 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
766 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
767 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
768 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
769 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
770
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
771
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
772 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
773 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
774 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
775
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
776 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
777
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
778 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
779 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
780 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
781
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
782 <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
783
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
784 --001485f339f8f361fb049188dbba--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
785 '''
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
786
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
787 multipart_msg_rfc822 = '''From: mary <mary@test.test>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
788 To: issue_tracker@your.tracker.email.domain.example
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
789 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
790 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
791 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
792 Content-Type: multipart/mixed; boundary=001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
793
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
794 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
795 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
796 Content-Type: text/plain; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
797 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
798
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
799 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
800
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
801 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
802 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
803 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
804 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
805
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
806 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
807 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
808 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
809 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
810 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
811 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
812
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
813 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
814 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
815 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
816 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
817
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
818 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
819 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
820
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
821 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
822 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
823 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
824
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
825 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
826 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
827 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
828 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
829
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
830 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
831
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
832 --001485f339f8f361fb049188dbba--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
833 '''
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
834
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
835 def testOctetStreamTranscoding(self):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
836 self.doNewIssue()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
837 self._handle_mail(self.octetstream_msg)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
838 messages = self.db.issue.get('1', 'messages')
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
839 messages.sort()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
840 msg = self.db.msg.getnode (messages[-1])
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
841 assert(len(msg.files) == 1)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
842 names = {0 : 'testfile'}
5547
081be318661b Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5546
diff changeset
843 content = [b'''This is a file containing text
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
844 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
845 ''']
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
846 for n, id in enumerate (msg.files):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
847 f = self.db.file.getnode (id)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
848 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
849 self.assertEqual(f.binary_content, content [n])
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
850
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
851 def testMultipartKeepAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
852 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
853 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
854 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
855 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
856 msg = self.db.msg.getnode (messages[-1])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
857 assert(len(msg.files) == 5)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
858 names = {0 : 'first.dvi', 4 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
859 content = {3 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
860 4 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
861 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
862 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
863 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
864 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
865 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
866 self.assertEqual(msg.content, 'test attachment second text/plain')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
867
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
868 def testMultipartSeveralAttachmentMessages(self):
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
869 self.doNewIssue()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
870 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
871 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
872 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
873 self.assertEqual(messages[-1], '2')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
874 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
875 self.assertEqual(len(msg.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
876 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
877 self.assertEqual(len(issue.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
878 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
879 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
880 4 : 'Just a test\n'}
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
881 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
882 f = self.db.file.getnode (id)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
883 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
884 if n in content :
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
885 self.assertEqual(f.content, content [n])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
886 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
887 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
888 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
889
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
890 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
891 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
892 self.assertEqual(len(issue.files), 10)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
893 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
894 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
895 self.assertEqual(messages[-1], '3')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
896 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
897 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
898 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
899
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
900 def testMultipartKeepFiles(self):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
901 self.doNewIssue()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
902 self._handle_mail(self.multipart_msg)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
903 messages = self.db.issue.get('1', 'messages')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
904 messages.sort()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
905 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
906 self.assertEqual(len(msg.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
907 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
908 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
909 names = {0 : 'first.dvi', 4 : 'second.dvi'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
910 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
911 4 : 'Just a test\n'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
912 for n, id in enumerate (msg.files):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
913 f = self.db.file.getnode (id)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
914 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
915 if n in content :
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
916 self.assertEqual(f.content, content [n])
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
917 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
918 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
919 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
920 Message-Id: <followup_dummy_id2>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
921 In-Reply-To: <dummy_test_message_id>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
922 Subject: [issue1] Testing...
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
923
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
924 This ist a message without attachment
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
925 ''')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
926 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
927 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
928 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
929
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
930 def testMultipartDropAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
931 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
932 self.db.config.MAILGW_IGNORE_ALTERNATIVES = True
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
933 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
934 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
935 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
936 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
937 self.assertEqual(len(msg.files), 2)
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
938 names = {1 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
939 content = {0 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
940 1 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
941 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
942 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
943 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
944 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
945 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
946 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
947
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
948 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
949 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
950 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
951 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
952 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
953 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
954 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
955 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
956 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
957 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
958 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
959 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
960 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
961 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
962 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
963 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
964 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
965 '''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
966 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
967 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
968 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
969 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
970 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
971 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
972 <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
973 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
974 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
975 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
976 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
977 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
978 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
979 X-Roundup-Issue-Files: unnamed
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
980 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
981
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
982
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
983 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
984
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
985 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
986 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
987 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
988
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
989 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
990 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
991
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
992 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
993 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
994 <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
995 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
996 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
997
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
998 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
999 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
1000 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1001 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
1002 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
1003 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
1004 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
1005 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
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), 1)
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1008 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1009 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
1010 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
1011 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
1012 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
1013 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
1014 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
1015 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
1016 '''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
1017 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
1018 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
1019 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1020 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
1021 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
1022 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
1023 <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
1024 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
1025 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
1026 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
1027 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
1028 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
1029 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
1030 X-Roundup-Issue-Files: unnamed
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1031 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
1032
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1033
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1034 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
1035
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1036 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
1037 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
1038 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
1039
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1040 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1041 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1042
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1043 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1044 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
1045 <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
1046 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1047 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1048
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1049 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
1050 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
1051 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1052 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
1053 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
1054 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1055 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
1056 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
1057 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1058 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
1059 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
1060 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
1061 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
1062 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
1063 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
1064 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
1065 '''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
1066 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
1067 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
1068 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1069 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
1070 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
1071 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
1072 <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
1073 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
1074 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
1075 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
1076 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
1077 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
1078 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
1079 X-Roundup-Issue-Files: unnamed
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1080
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1081
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1082 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1083 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
1084 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
1085 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
1086
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1087
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1088 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
1089
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1090 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
1091
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1092 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1093 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1094
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1095 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1096 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
1097 <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
1098 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1099 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1100 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
1101 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
1102 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
1103 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1104 filename="unnamed"
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 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
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 --utf-8--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1109 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1110
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1111 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
1112 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
1113 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1114 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
1115 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
1116 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
1117 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1118 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
1119 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
1120 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1121 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
1122 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
1123 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
1124 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
1125 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
1126 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
1127 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
1128 '''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
1129 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
1130 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
1131 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1132 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
1133 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
1134 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
1135 <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
1136 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
1137 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
1138 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
1139 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
1140 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
1141 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
1142 X-Roundup-Issue-Files: unnamed
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1143
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1144
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1145 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1146 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
1147 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
1148 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
1149
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1150
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1151 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
1152
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1153 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
1154
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1155 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1156 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1157
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1158 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1159 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
1160 <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
1161 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1162 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1163 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
1164 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
1165 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
1166 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1167 filename="unnamed"
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 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1170
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1171 --utf-8--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1172 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1173
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1174 def testMultipartRFC822(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1175 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1176 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1177 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1178 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1179 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
1180 self.assertEqual(len(msg.files), 1)
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1181 name = "Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1182 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1183 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1184 self.assertEqual(f.name, name)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1185 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1186 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1187 '''FROM: roundup-admin@your.tracker.email.domain.example
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1188 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
1189 Content-Type: multipart/mixed; charset="utf-8"
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1190 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1191 To: chef@bork.bork.bork, richard@test.test
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1192 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
1193 Reply-To: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1194 <issue_tracker@your.tracker.email.domain.example>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1195 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1196 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1197 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1198 X-Roundup-Name: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1199 X-Roundup-Loop: hello
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1200 X-Roundup-Issue-Status: chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1201 X-Roundup-Issue-Files: Fwd: Original email subject.eml
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1202
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1203
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1204 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1205 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1206 Content-Type: text/plain; charset="utf-8"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1207 Content-Transfer-Encoding: quoted-printable
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1208
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1209
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1210 Contrary, Mary <mary@test.test> added the comment:
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1211
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1212 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1213
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1214 ----------
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1215 status: unread -> chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1216
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1217 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1218 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
1219 <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
1220 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1221 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1222 Content-Type: message/rfc822
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1223 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1224 Content-Disposition: attachment;
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1225 filename="Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1226
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1227 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1228 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1229 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1230 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1231 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
1232 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1233
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1234 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
1235 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1236 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
1237 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1238
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1239 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1240 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1241
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1242 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1243 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1244 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1245
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1246 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1247 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1248 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1249 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1250
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1251 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1252
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1253 --utf-8--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1254 ''')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1255
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1256 html_doc='''<html><body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1257 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1258 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
1259 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1260 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1261 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1262 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1263 <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
1264 <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
1265 <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
1266 <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
1267 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1268 <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
1269 <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
1270 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1271 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1272 <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
1273 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1274 <ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1275 <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
1276 <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
1277 <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
1278 <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
1279 <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
1280 <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
1281 <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
1282 <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
1283 <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
1284 <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
1285 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1286 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1287 <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
1288 <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
1289 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
1290 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
1291 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
1292 <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
1293 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
1294 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1295 <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
1296 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
1297 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
1298 <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
1299 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1300 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
1301 </html>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1302 '''
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1303 # 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
1304 # to test quoted printable conversion
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1306 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
1307 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
1308 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1309 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
1310 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1311 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
1312
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1313
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1314 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1315 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
1316 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1317
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1318 75,23,16,18
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1319
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1320 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1321 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
1322 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1323
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1324 %s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1325 --001485f339f8f361fb049188dbba--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1326 '''%html_doc
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1327
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1328 def testMultipartTextifyHTML(self):
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1329 text_fragments = ['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']
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1330
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1331 # \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
1332 # 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
1333 # 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
1334 # input.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1335 self.doNewIssue()
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1336 self.db.config.MAILGW_CONVERT_HTMLTOTEXT = 'dehtml'
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1337 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
1338 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
1339 messages.sort()
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1340 msg = self.db.msg.getnode(messages[-1])
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1341 # html converted to utf-8 text
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1342 self.compareStringFragments(msg.content,
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1343 text_fragments + [b2s(b" \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f")])
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1344 self.assertEqual(msg.type, None)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1345 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
1346 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
1347 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
1348 # 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
1349 # 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
1350 # works.
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1351 content = { 0: "75,23,16,18\n",
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1352 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
1353 b2s(b" \xc3\xa4\xc3\xb6\xc3\xbc\xc3\x84\xc3\x96\xc3\x9c\xc3\x9f")) }
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1354 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
1355 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
1356 self.assertEqual(f.name, name)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1357 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
1358 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
1359
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1360 self.compareMessages(self._get_mail()
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1361 .replace('=E2=80=99', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1362 .replace('=E2=80=9C', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1363 .replace('=E2=80=9D', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1364 .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
1365 '''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
1366 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
1367 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
1368 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
1369 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1370 Reply-To: Roundup issue tracker
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1371 <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
1372 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1373 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
1374 X-Roundup-issue-status: chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1375 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
1376 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1377 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
1378 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
1379 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
1380 Precedence: bulk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1381 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
1382 X-Roundup-Loop: hello
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1383 X-Roundup-Version: 1.5.1
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1384
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1385 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1386 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1387 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
1388 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1389
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1390
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1391 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
1392
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1393 Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1394 Home
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1395 Download
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1396 Docs
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1397 Roundup Features
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1398 Installing Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1399 Upgrading to newer versions of Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1400 Roundup FAQ
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1401 User Guide
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1402 Customising Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1403 Administration Guide
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1404 Prerequisites
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1405
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1406 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
1407 anydbm module. Download the latest version from http://www.python.org/.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1408 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
1409 of python as these contain many fixes to serious bugs.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1410
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1411 Some variants of Linux will need an additional python dev package
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1412 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
1413 known to require this.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1414
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1415 If youre on windows, you will either need to be using the ActiveState python
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1416 distribution (at http://www.activestate.com/Products/ActivePython/), or youll
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1417 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
1418 http://starship.python.net/crew/mhammond/win32/).
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1419
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1420 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
1421
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1422 ----------
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1423 status: unread -> chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1424
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1425 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1426 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
1427 <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
1428 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1429 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1430 Content-Type: text/csv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1431 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1432 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1433 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1434 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1435
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1436 NzUsMjMsMTYsMTgK
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1437
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1438 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1439 Content-Type: text/html
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1440 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1441 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1442 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1443 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1444
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1445 PGh0bWw+PGJvZHk+CjxzY3JpcHQ+CnRoaXMgbXVzdCBub3QgYmUgaW4gb3V0cHV0Cjwvc2NyaXB0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1446 Pgo8c3R5bGU+CnAge2Rpc3BsYXk6YmxvY2t9Cjwvc3R5bGU+CiAgICA8ZGl2IGNsYXNzPSJoZWFk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1447 ZXIiPjxoMT5Sb3VuZHVwPC9oMT4KICAgICAgICA8ZGl2IGlkPSJzZWFyY2hib3giIHN0eWxlPSJk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1448 aXNwbGF5OiBub25lIj4KICAgICAgICAgIDxmb3JtIGNsYXNzPSJzZWFyY2giIGFjdGlvbj0iLi4v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1449 c2VhcmNoLmh0bWwiIG1ldGhvZD0iZ2V0Ij4KICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQi
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1450 IG5hbWU9InEiIHNpemU9IjE4IiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiB2
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1451 YWx1ZT0iU2VhcmNoIiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1452 aGVja19rZXl3b3JkcyIgdmFsdWU9InllcyIgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9Imhp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1453 ZGRlbiIgbmFtZT0iYXJlYSIgdmFsdWU9ImRlZmF1bHQiIC8+CiAgICAgICAgICA8L2Zvcm0+CiAg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1454 ICAgICAgPC9kaXY+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoJyNz
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1455 ZWFyY2hib3gnKS5zaG93KDApOzwvc2NyaXB0PgogICAgPC9kaXY+CiAgICAgICA8dWwgY2xhc3M9
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1456 ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUtbDEiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1457 ZXJuYWwiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkhvbWU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1458 cmVlLWwxIj48YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJodHRwOi8vcHlwaS5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1459 eXRob24ub3JnL3B5cGkvcm91bmR1cCI+RG93bmxvYWQ8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1460 cmVlLWwxIGN1cnJlbnQiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9Ii4uL2Rv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1461 Y3MuaHRtbCI+RG9jczwvYT48dWwgY2xhc3M9ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUt
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1462 bDIiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9ImZlYXR1cmVzLmh0bWwiPlJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1463 dW5kdXAgRmVhdHVyZXM8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIGN1cnJlbnQiPjxh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1464 IGNsYXNzPSJjdXJyZW50IHJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iIj5JbnN0YWxsaW5nIFJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1465 dW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1466 IGludGVybmFsIiBocmVmPSJ1cGdyYWRpbmcuaHRtbCI+VXBncmFkaW5nIHRvIG5ld2VyIHZlcnNp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1467 b25zIG9mIFJvdW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0i
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1468 cmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJGQVEuaHRtbCI+Um91bmR1cCBGQVE8L2E+PC9saT4K
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1469 PGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVm
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1470 PSJ1c2VyX2d1aWRlLmh0bWwiPlVzZXIgR3VpZGU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1471 LWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJjdXN0b21pemluZy5odG1s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1472 Ij5DdXN0b21pc2luZyBSb3VuZHVwPC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jdHJlZS1sMiI+PGEg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1473 Y2xhc3M9InJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iYWRtaW5fZ3VpZGUuaHRtbCI+QWRtaW5p
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1474 c3RyYXRpb24gR3VpZGU8L2E+PC9saT4KPC91bD4KPGRpdiBjbGFzcz0ic2VjdGlvbiIgaWQ9InBy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1475 ZXJlcXVpc2l0ZXMiPgo8aDI+PGEgY2xhc3M9InRvYy1iYWNrcmVmIiBocmVmPSIjaWQ1Ij5QcmVy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1476 ZXF1aXNpdGVzPC9hPjwvaDI+CjxwPlJvdW5kdXAgcmVxdWlyZXMgUHl0aG9uIDIuNSBvciBuZXdl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1477 ciAoYnV0IG5vdCBQeXRob24gMykgd2l0aCBhIGZ1bmN0aW9uaW5nCmFueWRibSBtb2R1bGUuIERv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1478 d25sb2FkIHRoZSBsYXRlc3QgdmVyc2lvbiBmcm9tIDxhIGNsYXNzPSJyZWZlcmVuY2UgZXh0ZXJu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1479 YWwiIGhyZWY9Imh0dHA6Ly93d3cucHl0aG9uLm9yZy8iPmh0dHA6Ly93d3cucHl0aG9uLm9yZy88
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1480 L2E+LgpJdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdGhhdCB1c2VycyBpbnN0YWxsIHRoZSBsYXRl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1481 c3QgcGF0Y2ggdmVyc2lvbgpvZiBweXRob24gYXMgdGhlc2UgY29udGFpbiBtYW55IGZpeGVzIHRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1482 IHNlcmlvdXMgYnVncy48L3A+CjxwPlNvbWUgdmFyaWFudHMgb2YgTGludXggd2lsbCBuZWVkIGFu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1483 IGFkZGl0aW9uYWwgJiM4MjIwO3B5dGhvbiBkZXYmIzgyMjE7IHBhY2thZ2UKaW5zdGFsbGVkIGZv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1484 ciBSb3VuZHVwIGluc3RhbGxhdGlvbiB0byB3b3JrLiBEZWJpYW4gYW5kIGRlcml2YXRpdmVzLCBh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1485 cmUKa25vd24gdG8gcmVxdWlyZSB0aGlzLjwvcD4KPHA+SWYgeW91JiM4MjE3O3JlIG9uIHdpbmRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1486 d3MsIHlvdSB3aWxsIGVpdGhlciBuZWVkIHRvIGJlIHVzaW5nIHRoZSBBY3RpdmVTdGF0ZSBweXRo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1487 b24KZGlzdHJpYnV0aW9uIChhdCA8YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1488 dHRwOi8vd3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vIj5odHRwOi8v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1489 d3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vPC9hPiksIG9yIHlvdSYj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1490 ODIxNztsbApoYXZlIHRvIGluc3RhbGwgdGhlIHdpbjMyYWxsIHBhY2thZ2Ugc2VwYXJhdGVseSAo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1491 Z2V0IGl0IGZyb20KPGEgY2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cDovL3N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1492 YXJzaGlwLnB5dGhvbi5uZXQvY3Jldy9taGFtbW9uZC93aW4zMi8iPmh0dHA6Ly9zdGFyc2hpcC5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1493 eXRob24ubmV0L2NyZXcvbWhhbW1vbmQvd2luMzIvPC9hPikuPC9wPgo8L2Rpdj4KdW1sYXV0IMOk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1494 w7bDvMOEw5bDnMOfPC9ib2R5Pgo8L2h0bWw+Cg==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1495
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1496 --===============6077820410007357357==--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1497 ''')
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1498
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1499
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1500 def testMultipartRFC822Unpack(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1501 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1502 self.db.config.MAILGW_UNPACK_RFC822 = True
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1503 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1504 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1505 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1506 msg = self.db.msg.getnode (messages[-1])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1507 self.assertEqual(len(msg.files), 2)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1508 t = 'some text in inner email\n========================\n'
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1509 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
1510 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1511 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1512 self.assertEqual(f.name, 'unnamed')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1513 if n in content :
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1514 self.assertEqual(f.content, content [n])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1515 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1516
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1517 def testSimpleFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1518 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1519 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
1520 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1521 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
1522 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
1523 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1524 In-Reply-To: <dummy_test_message_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1525 Subject: [issue1] Testing...
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1526
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1527 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1528 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1529 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
1530 '''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
1531 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
1532 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
1533 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1534 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1535 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
1536 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1537 <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
1538 MIME-Version: 1.0
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1539 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1540 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
1541 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
1542 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1543 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
1544 Content-Transfer-Encoding: quoted-printable
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1545
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1546
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1547 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
1548
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1549 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1550
571
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1551 ----------
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1552 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1553
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1554 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1555 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
1556 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1557 _______________________________________________________________________
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
1558 ''')
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1559
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1560 def testFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1561 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1562
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1563 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1564 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1565 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1566 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1567 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1568 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
1569 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1570
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1571 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1572 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1573 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1574 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1575 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
1576 self.john_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1577
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1578 self.compareMessages(self._get_mail(),
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1579 '''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
1580 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
1581 Content-Type: text/plain; charset="utf-8"
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1582 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1583 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
1584 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
1585 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1586 <issue_tracker@your.tracker.email.domain.example>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1587 MIME-Version: 1.0
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1588 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1589 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1590 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
1591 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1592 X-Roundup-Issue-Status: chatting
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1593 Content-Transfer-Encoding: quoted-printable
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1594
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1595
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1596 richard <richard@test.test> added the comment:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1597
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1598 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1599
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1600 ----------
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1601 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
1602 nosy: +john, mary
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1603 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1604
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1605 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1606 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
1607 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1608 _______________________________________________________________________
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1609 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1610
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1611 def testFollowupNoSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1612 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
1613 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1614
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1615 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
1616 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1617 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1618 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
1619 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1620 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
1621 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
1622
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1623 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1624 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1625 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
1626 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1627 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
1628 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1629
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1630 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1631 '''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
1632 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
1633 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
1634 Subject: [issue1] Testing...
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1635 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
1636 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
1637 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1638 <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
1639 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1640 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1641 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
1642 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1643 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1644 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1645 Content-Transfer-Encoding: quoted-printable
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1646
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1647 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
1648
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1649 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1650
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1651 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1652 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1653 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1654 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1655
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1656 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1657 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
1658 <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
1659 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1660 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1661 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
1662
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1663 def testFollowupExplicitSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1664 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1665
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1666 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
1667 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1668 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1669 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
1670 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1671 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
1672 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
1673
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1674 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1675 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1676 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
1677 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1678 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
1679 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1680
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1681 # check that the message has the right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1682 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1683 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1684
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1685 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1686 '''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
1687 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
1688 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
1689 Subject: [issue1] new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1690 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
1691 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
1692 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1693 <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
1694 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1695 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1696 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
1697 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1698 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1699 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1700 Content-Transfer-Encoding: quoted-printable
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1701
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1702 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
1703
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1704 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1705
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1706 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1707 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1708 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1709 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1710 title: Testing... -> new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1711
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1712 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1713 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
1714 <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
1715 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1716 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1717
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1718 def testNosyGeneration(self):
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1719 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
1720 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
1721
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1722 # create a nosy message
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1723 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
1724 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
1725 self.db.journaltag = 'richard'
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1726 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
1727 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
1728
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1729
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1730 # check that message has right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1731 self.assertEqual(self.db.msg.get('1', 'tx_Source'), 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1732
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1733 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
1734 '''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
1735 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
1736 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
1737 Subject: [issue2] test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1738 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
1739 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
1740 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
1741 <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
1742 MIME-Version: 1.0
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1743 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
1744 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
1745 X-Roundup-Loop: hello
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1746 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
1747 Content-Transfer-Encoding: quoted-printable
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1748
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1749
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1750 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
1751
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1752 This is a test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1753
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1754 ----------
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1755 messages: 1
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1756 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
1757 status: unread
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1758 title: test
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1759 tx_Source: email
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1760
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1761 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1762 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
1763 <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
1764 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1765 ''')
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1766
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1767 def testNosyMessageCcBccEtc(self):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1768 self.doNewIssue()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1769 oldvalues = self.db.getnode('issue', '1').copy()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1770 oldvalues['assignedto'] = None
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1771 # reconstruct old behaviour: This would reuse the
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1772 # database-handle from the doNewIssue above which has committed
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1773 # 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
1774 #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
1775 self.db = self.instance.open('Chef')
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1776 self.db.issue.set('1', assignedto=self.chef_id)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1777 self.db.commit()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1778 # 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
1779 # 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
1780 # 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
1781 # get it.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1782 self.db.issue.nosymessage('1', None, oldvalues,
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1783 cc=['3','4', '5'], bcc=['1', '3', '5'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1784 cc_emails=['john@example.com'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1785 bcc_emails=["kermit@example.com"])
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1786 new_mail = ""
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1787 for line in self._get_mail().split("\n"):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1788 if "Message-Id: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1789 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1790 if "Date: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1791 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1792 new_mail += line+"\n"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1793
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1794 # 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
1795 # we need to split the emails and compare.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1796 new_mails=new_mail.split("\nFrom ")
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1797 # restore the "From " prefix removed from first line of
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1798 # second message by strip.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1799 new_mails[1]="From " + new_mail.split("\nFrom ")[1]
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1800
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1801 self.compareMessages(new_mails[0], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1802 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1803 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
1804 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1805 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1806 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
1807 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
1808 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1809 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1810 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1811 X-Roundup-Version: 1.3.3
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1812 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1813 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1814 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1815 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1816 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1817
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1818
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1819 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1820
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1821
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1822 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1823 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1824
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1825 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1826 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
1827 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1828 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1829 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1830
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1831 self.compareMessages(new_mails[1], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1832 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1833 TO: admin@test.com, kermit@example.com
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1834 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1835 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1836 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
1837 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
1838 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1839 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1840 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1841 X-Roundup-Version: 1.3.3
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1842 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1843 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1844 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1845 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1846 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1847
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1848
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1849 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1850
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1851
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1852 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1853 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1854
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1855 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1856 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
1857 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1858 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1859 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1860
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1861
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1862 def testPropertyChangeOnly(self):
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1863 self.doNewIssue()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1864 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
1865 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
1866 # 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
1867 # 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
1868 # 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
1869 #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
1870 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
1871 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
1872 self.db.commit()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1873 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
1874
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1875 new_mail = ""
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1876 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
1877 if "Message-Id: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1878 continue
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1879 if "Date: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1880 continue
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
1881 new_mail += line+"\n"
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1882
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1883 self.compareMessages(new_mail, """
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1884 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
1885 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
1886 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
1887 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1888 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
1889 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
1890 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
1891 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1892 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
1893 X-Roundup-Version: 1.3.3
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1894 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
1895 MIME-Version: 1.0
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1896 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1897 <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
1898 Content-Transfer-Encoding: quoted-printable
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1899
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1900
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1901 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
1902
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1903
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1904 ----------
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1905 assignedto: -> Chef
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1906
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1907 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1908 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
1909 <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
1910 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
1911 """)
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
1912
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1913
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
1914 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
1915 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
1916 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
1917 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
1918 # 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
1919 # 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
1920 # 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
1921 #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
1922 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
1923 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
1924 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
1925 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
1926
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
1927 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
1928 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
1929 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
1930 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
1931 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
1932 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
1933 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
1934
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
1935 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
1936 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
1937 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
1938 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
1939 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
1940 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
1941 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
1942 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
1943 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
1944 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
1945 X-Roundup-Version: 1.3.3
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
1946 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
1947 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
1948 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
1949 <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
1950 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
1951
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
1952
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
1953 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
1954
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
1955
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
1956 ----------
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
1957 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
1958
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
1959 _______________________________________________________________________
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
1960 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
1961 <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
1962 _______________________________________________________________________
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
1963 """)
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
1964
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1965 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1966 # FOLLOWUP TITLE MATCH
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1967 #
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
1968 def testFollowupTitleMatch(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1969 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1970 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
1971 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1972 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
1973 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
1974 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
1975 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
1976
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
1977 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
1978 ''')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1979
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1980 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1981 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1982
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1983 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
1984 '''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
1985 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
1986 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
1987 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1988 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
1989 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
1990 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1991 <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
1992 MIME-Version: 1.0
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
1993 Message-Id: <followup_dummy_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
1994 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
1995 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
1996 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1997 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
1998 Content-Transfer-Encoding: quoted-printable
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
1999
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2000
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2001 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
2002
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2003 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2004
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2005 ----------
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2006 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
2007 nosy: +john, mary
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2008 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2009
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2010 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2011 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
2012 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2013 _______________________________________________________________________
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
2014 ''')
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2015
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2016 def testFollowupTitleMatchMultiRe(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2017 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2018 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
2019 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2020 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2021 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
2022 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2023 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
2024
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2025 This is a followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2026 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2027
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2028 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
2029 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2030 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2031 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
2032 Message-Id: <followup2_dummy_id>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2033 Subject: Ang: Re: Testing...
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2034
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2035 This is a followup
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2036 ''')
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2037 self.assertEqual(nodeid1, nodeid2)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2038 self.assertEqual(nodeid1, nodeid3)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2039
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2040 def testFollowupTitleMatchNever(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2041 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2042 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
2043 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
2044 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2045 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
2046 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
2047 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2048 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2049
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2050 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2051 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2052
3678
9365dcf5d587 don't supply an In-Reply-To when testing Subject matching
Richard Jones <richard@users.sourceforge.net>
parents: 3579
diff changeset
2053 def testFollowupTitleMatchNeverInterval(self):
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2054 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2055 # force failure of the interval
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2056 time.sleep(2)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2057 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
2058 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
2059 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2060 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
2061 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
2062 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2063 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2064
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2065 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2066 '''), nodeid)
4005
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2067
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2068
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2069 def testFollowupTitleMatchInterval(self):
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2070 nodeid = self.doNewIssue()
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2071 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
2072 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
2073 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2074 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
2075 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
2076 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2077 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2078
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2079 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2080 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2081
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2082 simple_followup = '''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2083 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2084 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
2085 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2086 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2087 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2088 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2089
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2090 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
2091 '''
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2092
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2093 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
2094 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
2095 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
2096 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2097 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
2098 '''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
2099 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
2100 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2101 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2102 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2103 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
2104 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2105 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2106 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2107 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2108 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2109 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
2110 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2111 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2112 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2113
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2114
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2115 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2116
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2117 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2118
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2119 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2120 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2121 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2122
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2123 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2124 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
2125 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2126 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2127
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2128 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2129
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2130 def testFollowupNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2131 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2132 self.db.config.ADD_RECIPIENTS_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2133 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
2134 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2135 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
2136 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
2137 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2138 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2139 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2140 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2141
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2142 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2143 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2144 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
2145 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2146 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2147 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2148 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2149 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2150 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
2151 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2152 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2153 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2154 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2155 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2156 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
2157 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2158 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2159 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2160
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2161
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2162 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2163
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2164 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2165
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2166 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2167 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2168 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2169
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2170 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2171 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
2172 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2173 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2174
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2175 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2176
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2177 def testFollowupNosyAuthorAndCopy(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2178 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2179 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2180 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
2181 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
2182 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
2183 '''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
2184 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
2185 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
2186 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
2187 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
2188 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
2189 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
2190 <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
2191 MIME-Version: 1.0
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2192 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2193 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
2194 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
2195 X-Roundup-Loop: hello
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2196 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
2197 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
2198
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2199
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2200 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2201
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2202 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
2203
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2204 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2205 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
2206 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
2207
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2208 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2209 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
2210 <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
2211 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2212
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2213 ''')
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2214
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2215 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
2216 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
2217 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
2218 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
2219 self._handle_mail(self.simple_followup)
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, richard@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"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
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, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2226 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
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>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2229 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2230 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2231 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
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
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2234 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2235 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2236
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2237
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2238 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2239
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2240 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2241
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2242 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2243 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2244 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2245
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2246 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2247 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
2248 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2249 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2250
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2251 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2252
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2253 def testFollowupNoNosyAuthor(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2254 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2255 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
2256 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2257 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
2258 '''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
2259 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
2260 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2261 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2262 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2263 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
2264 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2265 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2266 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2267 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2268 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2269 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
2270 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2271 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2272 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2273
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2274
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2275 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2276
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2277 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2278
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2279 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2280 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2281
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2282 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2283 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
2284 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2285 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2286
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2287 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2288
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2289 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
2290 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
2291 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
2292 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
2293 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
2294 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
2295 '''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
2296 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
2297 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
2298 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
2299 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
2300 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
2301 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
2302 <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
2303 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
2304 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
2305 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
2306 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
2307 X-Roundup-Loop: hello
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2308 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
2309 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
2310
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2311
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2312 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
2313
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2314 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
2315
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2316 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2317 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
2318
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2319 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2320 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
2321 <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
2322 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2323
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2324 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2325
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2326 # 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
2327 # 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
2328 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
2329 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
2330 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
2331 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
2332 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
2333 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
2334 '''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
2335 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
2336 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
2337 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
2338 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
2339 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
2340 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
2341 <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
2342 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
2343 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
2344 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
2345 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
2346 X-Roundup-Loop: hello
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2347 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
2348 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
2349
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2350
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2351 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
2352
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2353 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
2354
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2355 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2356 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
2357
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2358 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2359 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
2360 <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
2361 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2362
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2363 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2364
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2365 def testFollowupNoNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2366 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2367 self.instance.config.ADD_RECIPIENTS_TO_NOSY = 'no'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2368 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2369 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2370 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
2371 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
2372 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2373 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2374 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2375 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2376
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2377 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2378 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2379 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
2380 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2381 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2382 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2383 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2384 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2385 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
2386 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2387 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2388 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2389 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2390 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2391 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
2392 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2393 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2394 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2395
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2396
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2397 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2398
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2399 This is a followup
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 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2402 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2403
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2404 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2405 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
2406 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2407 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2408
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2409 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2410
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2411 def testFollowupEmptyMessage(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2412 self.doNewIssue()
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2413
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2414 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
2415 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2416 From: richard <richard@test.test>
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2417 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
2418 Message-Id: <followup_dummy_id>
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2419 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
2420 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
2421
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2422 ''')
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2423 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
2424 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2425 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
2426 self.john_id])
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2427
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2428 # should be no file created (ie. no message)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2429 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
2430
3579
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2431 def testFollowupEmptyMessageNoSubject(self):
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2432 self.doNewIssue()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2433
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2434 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
2435 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2436 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
2437 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
2438 Message-Id: <followup_dummy_id>
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2439 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
2440 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
2441
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2442 ''')
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2443 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
2444 l.sort()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2445 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
2446 self.john_id])
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2447
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2448 # 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
2449 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
2450
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2451 def testNosyRemove(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2452 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2453
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2454 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2455 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2456 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2457 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2458 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2459 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2460 Subject: [issue1] Testing... [nosy=-richard]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2461
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2462 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2463 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2464 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2465 self.assertEqual(l, [self.chef_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2466
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2467 # NO NOSY MESSAGE SHOULD BE SENT!
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2468 assert not os.path.exists(SENDMAILDEBUG)
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2469
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2470 def testNosyReplytoTracker(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2471 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
2472 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
2473 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2474 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
2475 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
2476 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
2477 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
2478
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2479 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
2480 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2481 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
2482 '''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
2483 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
2484 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
2485 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2486 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
2487 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
2488 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
2489 <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
2490 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2491 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
2492 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
2493 X-Roundup-Loop: hello
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2494 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
2495 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
2496
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2497
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2498 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
2499
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2500 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
2501
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2502 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2503 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2504 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2505 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2506 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2507 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2508 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2509
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2510 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2511 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
2512 <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
2513 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2514 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2515
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2516 def testNosyReplytoSomeaddress(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2517 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
2518 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
2519 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2520 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
2521 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
2522 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
2523 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
2524
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2525 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
2526 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2527 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
2528 '''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
2529 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
2530 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
2531 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2532 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
2533 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
2534 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
2535 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2536 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
2537 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
2538 X-Roundup-Loop: hello
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2539 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
2540 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
2541
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2542
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2543 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
2544
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2545 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
2546
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2547 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2548 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2549 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2550 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2551 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2552 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2553 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2554
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2555 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2556 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
2557 <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
2558 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2559 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2560
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2561 def testNosyReplytoAuthor(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2562 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
2563 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
2564 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2565 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
2566 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
2567 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
2568 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
2569
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2570 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
2571 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2572 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
2573 '''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
2574 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
2575 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
2576 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2577 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
2578 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
2579 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
2580 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2581 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
2582 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
2583 X-Roundup-Loop: hello
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2584 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
2585 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
2586
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2587
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2588 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
2589
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2590 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
2591
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2592 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2593 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2594 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2595 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2596 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2597 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2598 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2599
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2600 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2601 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
2602 <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
2603 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2604 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2605
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
2606 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
2607 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
2608 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
2609 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
2610 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
2611 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
2612 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
2613 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
2614 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
2615 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
2616
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2617 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
2618 '''
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2619 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
2620 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
2621 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
2622 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2623 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
2624 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2625 body_diff = self.assertEqual(str(value), """
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2626 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
2627
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2628 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
2629 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2630 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
2631 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2632 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
2633
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2634 # 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
2635 # 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
2636 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2637 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
2638 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
2639 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2640 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
2641 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2642 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
2643 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2644 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
2645 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
2646
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
2647 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
2648
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2649 ...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
2650
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2651 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
2652 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2653 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
2654 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2655 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
2656
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2657 # 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
2658 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
2659 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
2660 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
2661
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2662 # now with the permission
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2663 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2664 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
2665 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
2666 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2667 self.db.security.role['anonymous'].permissions=p
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2668 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
2669 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
2670 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
2671 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
2672
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2673 def testNewUserAuthorEncodedName(self):
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2674 l = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2675 # 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
2676 message = '''Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2677 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2678 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
2679 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
2680 Message-Id: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2681 Subject: [issue] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2682
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2683 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
2684 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2685 self._allowAnonymousSubmit()
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2686 self._handle_mail(message)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2687 m = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2688 new = list(m - l)[0]
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2689 name = self.db.user.get(new, 'realname')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2690 self.assertEquals(name, 'H€llo')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2691
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2692 def testNewUserAuthorMixedEncodedName(self):
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2693 l = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2694 # 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
2695 message = '''Content-Type: text/plain;
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2696 charset="iso-8859-1"
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2697 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
2698 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
2699 Message-Id: <dummy_test_message_id>
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2700 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
2701 X1
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2702 X2
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2703
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2704 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
2705 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2706 self._allowAnonymousSubmit()
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2707 self._handle_mail(message)
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2708 title = self.db.issue.get('1', 'title')
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2709 self.assertEquals(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
2710 m = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2711 new = list(m - l)[0]
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2712 name = self.db.user.get(new, 'realname')
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2713 self.assertEquals(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
2714
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2715 def testNewUserAuthorMixedEncodedNameSpacing(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2716 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
2717 # 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
2718 message = '''Content-Type: text/plain;
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2719 charset="iso-8859-1"
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2720 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
2721 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
2722 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
2723 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
2724 X1
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2725
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2726 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
2727 '''
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2728 self._allowAnonymousSubmit()
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2729 self._handle_mail(message)
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2730 title = self.db.issue.get('1', 'title')
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2731 self.assertEquals(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
2732 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
2733 new = list(m - l)[0]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2734 name = self.db.user.get(new, 'realname')
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2735 self.assertEquals(name,
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2736 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
2737
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2738 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
2739 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
2740 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
2741 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
2742 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
2743 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
2744 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
2745 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
2746
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2747 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
2748 '''
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
2749 # 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
2750 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
2751 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
2752 '''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
2753 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
2754 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
2755 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
2756 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
2757 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
2758 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
2759 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
2760 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
2761 Precedence: bulk
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2762 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
2763 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
2764 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
2765
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2766 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2767 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
2768 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
2769 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
2770
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2771
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2772
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2773 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
2774
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
2775 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
2776
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2777 ...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
2778
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2779 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
2780
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2781 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2782 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
2783 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
2784 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
2785
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2786 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
2787 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
2788 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
2789 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
2790 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
2791 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
2792
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2793 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
2794
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2795 --===============0639262320==--
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2796 ''')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2797
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
2798 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
2799 self.db.user.set(self.mary_id,
5476
b0048969990d encoding fixes in test cases
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5418
diff changeset
2800 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
2801 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2802 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
2803 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2804 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
2805 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
2806 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2807 In-Reply-To: <dummy_test_message_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2808 Subject: [issue1] Testing...
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2809 Content-Type: text/plain;
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2810 charset="iso-8859-1"
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2811 Content-Transfer-Encoding: quoted-printable
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2812
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2813 A message with encoding (encoded oe =F6)
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2814
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2815 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2816 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
2817 '''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
2818 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
2819 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
2820 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2821 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
2822 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
2823 <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
2824 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2825 <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
2826 MIME-Version: 1.0
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2827 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2828 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
2829 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
2830 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2831 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
2832 Content-Transfer-Encoding: quoted-printable
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2833
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2834
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
2835 =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
2836 comment:
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2837
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
2838 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
2839
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2840 ----------
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2841 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2842
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2843 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2844 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
2845 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2846 _______________________________________________________________________
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
2847 ''')
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2848
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2849 def testEncNonUTF8(self):
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2850 self.doNewIssue()
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2851 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
2852 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
2853 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2854 From: mary <mary@test.test>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2855 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
2856 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2857 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
2858 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2859 Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2860 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2861 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2862
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2863 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
2864
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2865 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2866 self.compareMessages(self._get_mail(),
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2867 '''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
2868 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
2869 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
2870 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2871 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
2872 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
2873 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2874 <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
2875 MIME-Version: 1.0
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2876 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2877 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
2878 X-Roundup-Name: Roundup issue tracker
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2879 X-Roundup-Loop: hello
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2880 X-Roundup-Issue-Status: chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2881 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2882
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2883
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2884 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
2885
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2886 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
2887
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2888 ----------
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2889 status: unread -> chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2890
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2891 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2892 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
2893 <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
2894 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2895 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2896
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2897
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
2898 def testMultipartEnc01(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2899 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
2900 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
2901 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
2902 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
2903 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
2904 Subject: [issue1] Testing...
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2905 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
2906 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
2907
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2908 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
2909 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
2910
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2911 ------_=_NextPart_000_01
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2912 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
2913 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
2914 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
2915
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2916 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
2917
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2918 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2919 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
2920 '''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
2921 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
2922 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
2923 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2924 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2925 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
2926 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2927 <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
2928 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
2929 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
2930 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
2931 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
2932 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2933 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
2934 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
2935
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2936
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2937 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
2938
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
2939 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
2940
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2941 ----------
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2942 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2943
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2944 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2945 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
2946 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2947 _______________________________________________________________________
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
2948 ''')
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
2949
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
2950 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
2951 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
2952 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
2953 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
2954 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
2955 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
2956 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
2957 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
2958 Content-Disposition: inline
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2959
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2960
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2961 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2962 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
2963 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
2964
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2965 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
2966
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2967 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
2968 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
2969 Content-Disposition: attachment; filename="main.dvi"
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
2970 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
2971
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
2972 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
2973
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
2974 --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
2975 ''')
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
2976 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
2977 messages.sort()
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
2978 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
2979 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
2980 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
2981
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2982 def testFollowupStupidQuoting(self):
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2983 self.doNewIssue()
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2984
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2985 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
2986 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2987 From: richard <richard@test.test>
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2988 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
2989 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2990 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
2991 Subject: Re: "[issue1] Testing... "
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2992
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2993 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2994 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2995 self.compareMessages(self._get_mail(),
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
2996 '''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
2997 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2998 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
2999 Subject: [issue1] Testing...
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3000 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3001 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
3002 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3003 <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
3004 MIME-Version: 1.0
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3005 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3006 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
3007 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
3008 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3009 X-Roundup-Issue-Status: chatting
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3010 Content-Transfer-Encoding: quoted-printable
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3011
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3012
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3013 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
3014
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3015 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3016
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3017 ----------
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3018 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3019
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3020 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3021 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
3022 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3023 _______________________________________________________________________
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3024 ''')
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3025
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3026 firstquotingtest = '''Content-Type: text/plain;
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3027 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3028 From: richard <richard@test.test>
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3029 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
3030 Message-Id: <followup_dummy_id>
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3031 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
3032 Subject: Re: [issue1] Testing...
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3033
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3034 Blah blah wrote:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3035 > 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
3036 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3037 >
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3038
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3039 This is a followup
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3040 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3041
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3042 def testEmailQuoting(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3043 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
3044 # 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
3045 # 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
3046 # so nuke all trailing newlines.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3047 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
3048
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3049 def testEmailQuotingNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3050 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
3051 # 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
3052 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
3053 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
3054
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3055 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
3056 # 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
3057 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
3058 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
3059 > 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
3060 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3061 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3062
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3063 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
3064
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3065 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
3066 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
3067
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3068 def testEmailQuotingNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3069 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
3070 # 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
3071 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3072 # 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
3073 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
3074 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
3075 # 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
3076 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
3077 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
3078 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
3079 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
3080
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
3081 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
3082 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
3083 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
3084 # 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
3085 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
3086 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
3087
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
3088 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
3089 # 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
3090 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
3091 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
3092 > 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
3093 > 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
3094 >
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
3095
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
3096 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
3097 # 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
3098 # 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
3099 # 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
3100
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
3101 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
3102 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
3103
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
3104 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
3105 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
3106 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
3107
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
3108 # 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
3109 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
3110 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
3111 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
3112 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
3113 # 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
3114 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
3115 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
3116 > 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
3117 > 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
3118 >
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
3119
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
3120 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
3121 # 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
3122 # 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
3123 # 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
3124
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
3125 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
3126 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
3127
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3128 def testEmailReplaceBodyNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3129 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
3130 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
3131 # 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
3132 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
3133 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
3134
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3135 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
3136 # 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
3137 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
3138 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
3139 > 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
3140 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3141 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3142
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3143 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
3144 # 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
3145 # 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
3146 # msg or something.
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3147
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3148 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
3149 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
3150
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3151 def testEmailReplaceBodyNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3152 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
3153 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
3154 # 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
3155 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3156 # 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
3157 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
3158 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
3159 # 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
3160 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
3161 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
3162 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
3163 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
3164
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3165 def testEmailQuotingRemove(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3166 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
3167 # 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
3168 # 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
3169 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3170 self.innerTestQuoting(self.firstquotingtest, '''Blah blah wrote:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3171 > 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
3172 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3173 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3174
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3175 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
3176
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3177 secondquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3178 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3179 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3180 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
3181 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3182 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3183 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3184
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3185 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
3186 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3187 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3188
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3189 AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3190
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3191 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3192
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3193 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3194
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3195 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3196
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3197 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3198 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3199 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3200 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3201
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3202 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3203 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3204 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3205 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3206
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3207 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3208 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3209 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3210 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3211 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3212 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3213 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3214 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3215 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3216 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3217 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3218 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3219
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3220 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3221 added signature
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3222 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3223 def testEmailQuoting2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3224 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
3225 # 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
3226 # 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
3227 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3228 self.innerTestQuoting(self.secondquotingtest, '''AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3229
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3230 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3231
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3232 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3233
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3234 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3235
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3236 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3237
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3238 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3239 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3240 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3241 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3242
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3243 CC''', 'AA:')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3244
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3245 def testEmailQuotingRemove2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3246 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
3247 # 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
3248 # 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
3249 # 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
3250 # [:-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
3251 self.innerTestQuoting(self.secondquotingtest,
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3252 '\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
3253
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3254 thirdquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3255 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3256 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3257 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
3258 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3259 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3260 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3261
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3262 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
3263 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3264 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3265 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3266 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3267 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3268 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3269 AA0
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3270 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3271
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3272 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3273 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3274 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3275 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3276
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3277 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3278 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3279 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3280 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3281 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3282 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3283
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3284 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3285 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3286 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3287
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3288 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3289 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3290
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3291 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3292 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3293 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3294 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3295
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3296 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3297
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3298 NAME
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3299 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3300 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3301 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3302 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3303 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3304 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3305
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3306 # 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
3307 # 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
3308 @expectedFailure
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3309 def testEmailQuotingRemove3(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3310 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
3311 self.innerTestQuoting(self.thirdquotingtest,
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3312 '\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
3313
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3314 def innerTestQuoting(self, msgtext, expect, summary=None):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3315 nodeid = self.doNewIssue()
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3316
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3317 messages = self.db.issue.get(nodeid, 'messages')
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3318
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3319 self._handle_mail(msgtext)
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3320 # figure the new message id
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3321 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
3322 for msg in messages:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3323 newmessages.remove(msg)
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3324 messageid = newmessages[0]
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3325
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3326 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
3327 if summary:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3328 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
3329
1549
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3330 def testUserLookup(self):
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3331 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
3332 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
3333 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
3334 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
3335 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
3336 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
3337
1810
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3338 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
3339 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
3340 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
3341 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
3342 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
3343
4531
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3344 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
3345 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
3346 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
3347 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
3348 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
3349
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3350 def testUserCreate(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3351 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
3352 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
3353
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3354 def testRegistrationConfirmation(self):
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3355 otk = "Aj4euk4LZSAdwePohj90SME5SpopLETL"
2089
93f03c6714d8 A few big changes in this commit:
Richard Jones <richard@users.sourceforge.net>
parents: 1984
diff changeset
3356 self.db.getOTKManager().set(otk, username='johannes')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3357 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
3358 charset="iso-8859-1"
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3359 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
3360 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
3361 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
3362 Message-Id: <dummy_test_message_id>
2709
6b5c77c03231 testRegistrationConfirmation: remove CR...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2705
diff changeset
3363 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
3364 -- key %s
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3365
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3366 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
3367 ''' % otk)
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3368 self.db.user.lookup('johannes')
1859
492a962b6d6f Make signature matching more precise: only match '-- '...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1811
diff changeset
3369
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3370 def testFollowupOnNonIssue(self):
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3371 self.db.keyword.create(name='Foo')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3372 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
3373 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3374 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
3375 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
3376 Message-Id: <followup_dummy_id>
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3377 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
3378 Subject: [keyword1] Testing... [name=Bar]
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3379
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3380 ''')
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3381 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3382
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3383 def testResentFrom(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3384 nodeid = self._handle_mail('''Content-Type: text/plain;
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3385 charset="iso-8859-1"
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3386 From: Chef <chef@bork.bork.bork>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3387 Resent-From: mary <mary@test.test>
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3388 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
3389 Cc: richard@test.test
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3390 Message-Id: <dummy_test_message_id>
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3391 Subject: [issue] Testing...
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3392
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3393 This is a test submission of a new issue.
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3394 ''')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3395 assert not os.path.exists(SENDMAILDEBUG)
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3396 l = self.db.issue.get(nodeid, 'nosy')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3397 l.sort()
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3398 self.assertEqual(l, [self.richard_id, self.mary_id])
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3399 return nodeid
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3400
5045
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3401 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
3402 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
3403 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
3404 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
3405 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
3406 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
3407 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
3408 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
3409 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
3410 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
3411
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3412 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
3413 ''')
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3414 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
3415 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
3416 l.sort()
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3417 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
3418 return nodeid
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3419
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3420 def testDejaVu(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3421 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
3422 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3423 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3424 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
3425 X-Roundup-Loop: hello
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3426 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
3427 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
3428 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
3429 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3430
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3431 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
3432 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3433
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3434 def testItsBulkStupid(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3435 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
3436 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3437 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3438 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
3439 Precedence: bulk
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3440 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
3441 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
3442 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
3443 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3444
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3445 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
3446 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3447
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3448 def testAutoReplyEmailsAreIgnored(self):
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3449 self.assertRaises(IgnoreBulk, self._handle_mail,
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3450 '''Content-Type: text/plain;
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3451 charset="iso-8859-1"
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3452 From: Chef <chef@bork.bork.bork>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3453 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
3454 Cc: richard@test.test
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3455 Message-Id: <dummy_test_message_id>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3456 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
3457
3810
4536c0e544be Bah! The python-mode in my emacs is borked by this line,,,
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3809
diff changeset
3458 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
3459 ''')
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3460
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3461 def testNoSubject(self):
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3462 self.assertRaises(MailUsageError, self._handle_mail,
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3463 '''Content-Type: text/plain;
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3464 charset="iso-8859-1"
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3465 From: Chef <chef@bork.bork.bork>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3466 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
3467 Cc: richard@test.test
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3468 Reply-To: chef@bork.bork.bork
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3469 Message-Id: <dummy_test_message_id>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3470
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3471 ''')
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3472
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3473 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3474 # TEST FOR INVALID DESIGNATOR HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3475 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3476 def testInvalidDesignator(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3477 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
3478 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3479 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3480 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
3481 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
3482 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3483 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3484 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
3485 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
3486
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3487 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3488 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
3489 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3490 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3491 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
3492 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
3493 Subject: [issue12345] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3494 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3495 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
3496 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
3497
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3498 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3499
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3500 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3501 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
3502 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
3503 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3504 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
3505 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
3506 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3507 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3508 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
3509 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
3510
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3511 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3512 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
3513 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
3514 '[frobulated] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3515
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3516 def testInvalidClassLooseReply(self):
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3517 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3518 nodeid = self._handle_mail('''Content-Type: text/plain;
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3519 charset="iso-8859-1"
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3520 From: Chef <chef@bork.bork.bork>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3521 To: issue_tracker@your.tracker.email.domain.example
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3522 Subject: Re: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3523 Cc: richard@test.test
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3524 Reply-To: chef@bork.bork.bork
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3525 Message-Id: <dummy_test_message_id>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3526
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3527 ''')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3528 assert not os.path.exists(SENDMAILDEBUG)
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3529 self.assertEqual(self.db.issue.get(nodeid, 'title'),
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3530 '[frobulated] testing')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3531
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3532 def testInvalidClassLooseReplyQuoted(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3533 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3534 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3535 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3536 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3537 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3538 Subject: Re: "[frobulated] testing"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3539 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3540 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3541 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3542
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3543 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
3544 e.g. Re: "[issue1] bla bla"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3545 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3546 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3547 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3548 '[frobulated] testing')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3549
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3550 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3551 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
3552 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
3553 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3554 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
3555 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
3556 Subject: [issue1234] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3557 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3558 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
3559 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
3560
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3561 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3562 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
3563 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
3564 '[issue1234] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3565
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3566 def testClassLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3567 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
3568 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
3569 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
3570 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3571 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
3572 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
3573 Subject: [keyword1] Testing... [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3574 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3575 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
3576 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
3577
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3578 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3579 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
3580 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
3581
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3582 def testDoublePrefixLoose(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3583 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3584 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3585 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3586 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3587 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3588 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3589 Subject: [frobulated] [frobulatedagain] testing stuff after double prefix
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3590 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3591 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3592 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3593
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3594 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3595 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3596 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3597 '[frobulated] [frobulatedagain] testing stuff after double prefix')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3598
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3599 def testClassStrictInvalid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3600 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
3601 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3602
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3603 message = '''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3604 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3605 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3606 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
3607 Subject: Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3608 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3609 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3610 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3611
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3612 '''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3613 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
3614
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3615 def testClassStrictValid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3616 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
3617 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3618
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3619 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
3620 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3621 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3622 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
3623 Subject: [issue] Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3624 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3625 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3626 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3627
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3628 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3629
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3630 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3631 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
3632
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3633 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3634 # TEST FOR INVALID COMMANDS HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3635 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3636 def testInvalidCommands(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3637 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
3638 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3639 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3640 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
3641 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
3642 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3643 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3644 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
3645 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
3646
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3647 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3648
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3649 def testInvalidCommandPassthrough(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3650 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
3651 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
3652 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3653 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
3654 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
3655 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3656 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3657 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
3658 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
3659
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3660 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3661 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
3662 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
3663 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3664
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3665 def testInvalidCommandPassthroughLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3666 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
3667 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
3668 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3669 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
3670 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
3671 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3672 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3673 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
3674 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
3675
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3676 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3677 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
3678 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
3679 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3680
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3681 def testInvalidCommandPassthroughLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3682 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
3683 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
3684 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3685 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
3686 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
3687 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3688 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3689 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
3690 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
3691
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3692 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3693 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
3694 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
3695 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
3696
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3697 def testCommandDelimiters(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3698 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
3699 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
3700 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3701 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
3702 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
3703 Subject: testing {assignedto=mary}
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3704 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3705 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
3706 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
3707
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3708 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3709 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
3710 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
3711 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
3712
3724
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3713 def testPrefixDelimiters(self):
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3714 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
3715 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
3716 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
3717 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3718 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
3719 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
3720 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
3721 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
3722 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
3723
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3724 ''')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3725 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
3726 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
3727
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3728 def testCommandDelimitersIgnore(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3729 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
3730 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
3731 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3732 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
3733 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
3734 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3735 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3736 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
3737 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
3738
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3739 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3740 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
3741 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
3742 'testing [assignedto=mary]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3743 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
3744
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
3745 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
3746 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
3747 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
3748 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
3749 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
3750 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
3751 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
3752 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
3753 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
3754 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
3755
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
3756 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
3757 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3758
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3759 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
3760 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
3761 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
3762 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
3763 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
3764 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
3765 Subject: Testing...
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3766
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3767 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
3768 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3769
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
3770 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
3771 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
3772
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3773 def testHelpSubject(self):
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3774 message = '''Content-Type: text/plain;
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3775 charset="iso-8859-1"
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3776 From: Chef <chef@bork.bork.bork>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3777 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
3778 Message-Id: <dummy_test_message_id2>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3779 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
3780 Subject: hElp
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3781
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3782
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3783 '''
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3784 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
3785
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3786 def testMaillistSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3787 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
3788 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
3789 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
3790 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3791 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3792 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
3793 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
3794 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3795 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3796 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3797
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3798 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3799
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3800 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3801 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
3802
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3803 def testUnknownPrefixSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3804 self.db.keyword.create(name='Foo')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3805 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
3806 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3807 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3808 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
3809 Subject: VeryStrangeRe: [keyword1] Testing.. [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3810 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3811 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3812 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3814 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3815
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3816 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3817 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
3818
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3819 def testOneCharSubject(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3820 message = '''Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3821 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3822 From: Chef <chef@bork.bork.bork>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3823 To: issue_tracker@your.tracker.email.domain.example
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3824 Subject: b
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3825 Cc: richard@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3826 Reply-To: chef@bork.bork.bork
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3827 Message-Id: <dummy_test_message_id>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3828
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3829 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3830 try:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3831 self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3832 except MailUsageError:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3833 self.fail('MailUsageError raised')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
3834
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3835 def testIssueidLast(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3836 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3837 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
3838 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3839 From: mary <mary@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3840 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
3841 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3842 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
3843 Subject: New title [issue1]
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3844
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3845 This is a second followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3846 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3847
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3848 assert nodeid1 == nodeid2
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3849 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
3850
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3851 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
3852 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
3853 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
3854 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
3855 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
3856 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
3857 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
3858 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
3859 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
3860 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
3861 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
3862 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
3863 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
3864 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
3865 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
3866
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3867 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
3868 '''%locals())
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3869 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
3870 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
3871 '''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
3872 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
3873 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
3874 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
3875 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
3876 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
3877 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3878 <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
3879 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
3880 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
3881 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
3882 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
3883 X-Roundup-Loop: hello
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3884 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
3885 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
3886
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3887
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3888 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
3889
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3890 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
3891
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3892 ----------
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3893 nosy: +mary
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3894 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
3895
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3896 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3897 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
3898 <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
3899 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3900 ''')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
3901
5069
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3902 def testSpacesAroundMultilinkPropertyValue(self):
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3903 self.db.keyword.create(name='Foo')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3904 self.db.keyword.create(name='Bar')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3905 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
3906 nodeid1 = self.doNewIssue()
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3907 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
3908 charset="iso-8859-1"
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3909 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
3910 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
3911 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3912 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
3913 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
3914
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3915 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
3916 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3917 assert os.path.exists(SENDMAILDEBUG)
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3918 self.compareMessages(self._get_mail(),
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3919 '''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
3920 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
3921 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
3922 Subject: [issue1] set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3923 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
3924 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
3925 Reply-To: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3926 <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
3927 MIME-Version: 1.0
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3928 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3929 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
3930 X-Roundup-Name: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3931 X-Roundup-Loop: hello
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3932 X-Roundup-Issue-Status: chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3933 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
3934 Content-Transfer-Encoding: quoted-printable
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3935
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3936 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
3937
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3938 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
3939
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3940 ----------
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3941 keyword: +Baz This, Foo
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3942 nosy: +mary
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3943 status: unread -> chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3944 title: Testing... -> set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3945
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3946 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3947 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
3948 <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
3949 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3950 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
3951
5150
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3952 def testmsgHeaderPropertyAssignedto(self):
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3953 ''' 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
3954 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
3955 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3956 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
3957 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
3958 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
3959 Subject: [issue1] set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3960 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
3961 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
3962 Reply-To: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3963 <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
3964 MIME-Version: 1.0
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3965 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3966 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
3967 X-Roundup-Name: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3968 X-Roundup-Loop: hello
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3969 X-Roundup-Issue-Status: chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3970 X-Roundup-Issue-Assignedto: mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3971 Content-Transfer-Encoding: quoted-printable
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3972
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3973 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
3974
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3975 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
3976
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3977 ----------
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3978 assignedto: -> mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3979 nosy: +mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3980 status: unread -> chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3981 title: Testing... -> set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3982
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3983 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3984 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
3985 <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
3986 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3987 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3988 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
3989
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3990 nodeid1 = self.doNewIssue()
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3991 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
3992 charset="iso-8859-1"
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3993 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
3994 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
3995 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3996 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
3997 Subject: [issue1] set assignedto [assignedto=mary]
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3998
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
3999 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
4000 ''')
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4001 assert os.path.exists(SENDMAILDEBUG)
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4002 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
4003
5124
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4004 def testmsgHeaderPropertyEmptyString(self):
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4005 ''' 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
4006 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
4007 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4008 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
4009 TO: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4010 Content-Type: text/plain; charset="utf-8"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4011 Subject: [issue1] set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4012 To: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4013 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
4014 Reply-To: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4015 <issue_tracker@your.tracker.email.domain.example>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4016 MIME-Version: 1.0
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4017 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4018 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4019 X-Roundup-Name: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4020 X-Roundup-Loop: hello
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4021 X-Roundup-Issue-Status: chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4022 Content-Transfer-Encoding: quoted-printable
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4023
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4024 Bork, Chef <chef@bork.bork.bork> added the comment:
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4025
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4026 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
4027
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4028 ----------
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4029 keyword: +Baz This, Foo
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4030 nosy: +mary
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4031 status: unread -> chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4032 title: Testing... -> set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4033
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4034 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4035 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
4036 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4037 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4038 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4039 self.db.keyword.create(name='Foo')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4040 self.db.keyword.create(name='Bar')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4041 self.db.keyword.create(name='Baz This')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4042
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4043 self.db.issue.properties['keyword'].msg_header_property=''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4044
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4045 nodeid1 = self.doNewIssue()
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4046 nodeid2 = self._handle_mail('''Content-Type: text/plain;
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4047 charset="iso-8859-1"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4048 From: "Bork, Chef" <chef@bork.bork.bork>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4049 To: issue_tracker@your.tracker.email.domain.example
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4050 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4051 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4052 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
4053
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4054 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
4055 ''')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4056 assert os.path.exists(SENDMAILDEBUG)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4057 self.compareMessages(self._get_mail(), reference_email)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4058
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4059
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4060 def testOutlookAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4061 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
4062 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4063 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4064 Content-Type: multipart/mixed;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4065 boundary="----_=_NextPart_001_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4066 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
4067 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
4068 Message-ID: <CA37F17219784343816CA6613D2E339205E7D0F9@nrcwstexb1.nrc.ca>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4069 X-MS-Has-Attach: yes
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4070 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4071 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
4072 Thread-Index: AcrKJo/t3pUBBwTpSwWNE3LE67UBDQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4073 From: "Hugh" <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4074 To: <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4075 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
4076
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4077 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
4078
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4079 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4080 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4081 boundary="----_=_NextPart_002_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4082
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4083
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4084 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4085 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4086 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4087 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4088
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4089
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4090 Hi Richard,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4091
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4092 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
4093 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
4094 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
4095 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
4096 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
4097 our tracker.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4098
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4099 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
4100
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4101 <<battery backup>>=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4102
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4103 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4104 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4105 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4106 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4107
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4108 <!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
4109 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4110 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4111 <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
4112 charset=3Dus-ascii">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4113 <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
4114 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4115 <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
4116 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4117 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4118 <!-- Converted from text/rtf format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4119 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4120
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4121 <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
4122 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4123
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4124 <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
4125 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
4126 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
4127 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
4128 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
4129 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
4130
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4131 <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
4132 look into this.&nbsp; Much appreciated.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4133 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4134 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4135
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4136 <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
4137 backup&gt;&gt; </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4138 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4139
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4140 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4141 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4142 ------_=_NextPart_002_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4143
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4144 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4145 Content-Type: message/rfc822
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4146 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4147
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4148 X-MimeOLE: Produced By Microsoft Exchange V6.5
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4149 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4150 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4151 boundary="----_=_NextPart_003_01CAC15A.29717800"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4152 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
4153 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4154 Subject: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4155 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
4156 Message-ID: <p06240809c7bf02f9624c@[128.114.22.203]>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4157 X-MS-Has-Attach:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4158 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4159 Thread-Topic: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4160 Thread-Index: AcrBWimtulTrSvBdQ2CcfZ8lyQdxmQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4161 From: "Jerry" <jerry@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4162 To: "Hugh" <hugh@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4163
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4164 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
4165
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4166 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4167 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4168 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4169 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4170
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4171 Dear Hugh,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4172 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
4173 battery is worse than this.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4174
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4175 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
4176 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
4177
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4178 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
4179 a more modest number of batteries
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4180
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4181 Jerry
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4182
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4183
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4184 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4185 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4186 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4187 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4188
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4189 <!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
4190 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4191 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4192 <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
4193 charset=3Diso-8859-1">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4194 <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
4195 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4196 <TITLE>battery backup</TITLE>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4197 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4198 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4199 <!-- Converted from text/plain format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4200
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4201 <P><FONT SIZE=3D2>Dear Hugh,</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4202
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4203 <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
4204 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
4205
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4206 <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
4207 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4208
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4209 <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
4210 take 100 car </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4211
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4212 <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
4213 batteries.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4214 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4215
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4216 <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
4217 minute, so we get to </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4218
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4219 <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
4220 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4221
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4222 <P><FONT SIZE=3D2>Jerry</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4223 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4224
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4225 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4226 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4227 ------_=_NextPart_003_01CAC15A.29717800--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4228
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4229 ------_=_NextPart_001_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4230 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4231 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4232 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4233 msgid = self.db.issue.get(nodeid, 'messages')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4234 self.assert_(self.db.msg.get(msgid, 'content').startswith('Hi Richard'))
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4235 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
4236 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4237 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
4238 fileid = self.db.msg.get(msgid, 'files')[1]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4239 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
4240
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4241 def testForwardedMessageAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4242 message = '''Return-Path: <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4243 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
4244 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
4245 Message-ID: <4BC4F9C7.50409@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4246 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
4247 From: Rupert Goldie <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4248 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
4249 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4250 To: ekit issues <issues@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4251 Subject: [Fwd: PHP ERROR (fb)] post limit reached
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4252 Content-Type: multipart/mixed; boundary="------------000807090608060304010403"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4253
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4254 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
4255 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4256 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
4257 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4258
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4259 Catch this exception and log it without emailing.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4260
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4261 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4262 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
4263 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4264 Content-Disposition: inline; filename="PHP ERROR (fb).eml"
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 Return-Path: <ektravj@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4267 X-Sieve: CMU Sieve 2.2
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4268 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
4269 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
4270 To: facebook-errors@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4271 From: ektravj@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4272 Subject: PHP ERROR (fb)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4273 Message-Id: <20100413230100.D601D27E84@mail2.elax3.ekorp.com>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4274 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
4275
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4276 [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
4277 Stack trace:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4278 #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
4279 #1 {main}
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4280 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
4281
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4282
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4283 --------------000807090608060304010403--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4284 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4285 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4286 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4287 msgid = self.db.issue.get(nodeid, 'messages')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4288 self.assertEqual(self.db.msg.get(msgid, 'content'),
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4289 'Catch this exception and log it without emailing.')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4290 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
4291 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4292 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
4293
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4294
5036
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
4295 @skip_pgp
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4296 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
4297 pgphome = gpgmelib.pgphome
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4298 def setUp(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4299 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
4300 self.db.security.addRole(name = 'pgp', description = 'PGP Role')
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4301 self.instance.config['PGP_HOMEDIR'] = self.pgphome
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4302 self.instance.config['PGP_ROLES'] = 'pgp'
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4303 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
4304 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
4305 self.instance.config['ADMIN_EMAIL'] = 'roundup-admin@example.com'
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4306 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
4307 gpgmelib.setUpPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4308
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4309 def tearDown(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4310 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
4311 gpgmelib.tearDownPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4312
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4313 def testPGPUnsignedMessage(self):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4314 self.assertRaises(MailUsageError, self._handle_mail,
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4315 '''Content-Type: text/plain;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4316 charset="iso-8859-1"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4317 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4318 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4319 Message-Id: <dummy_test_message_id>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4320 Subject: [issue] Testing non-signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4321
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4322 This is no pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4323 ''')
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4324
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4325 signed_msg = '''Content-Disposition: inline
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4326 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4327 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4328 Subject: [issue] Testing signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4329 Content-Type: multipart/signed; micalg=pgp-sha1;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4330 protocol="application/pgp-signature"; boundary="cWoXeonUoKmBZSoM"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4331
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4332
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4333 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4334 Content-Type: text/plain; charset=us-ascii
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4335 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4336
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4337 This is a pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4338
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4339 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4340 Content-Type: application/pgp-signature; name="signature.asc"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4341 Content-Description: Digital signature
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4342 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4343
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4344 -----BEGIN PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4345 Version: GnuPG v1.4.10 (GNU/Linux)
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4346
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4347 iJwEAQECAAYFAk6N4A4ACgkQv8+6oPhbo5x5nAP/d7R7SxTvLoVESI+1r7eDXp1J
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4348 LvBVU2EF3YFYKBHMLcWmjG92fNjnHX6NENTEhTeBynba5IPEwUfITC+7PmgPmQkA
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4349 VXnFZnwraHxsYgyFsVFN1kkTSbwRUlWl9+nTEsr0yBLTpZN0QSIDcwu+i/xVcg+t
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4350 ZQ4K6R3m3AOw7BLdvZs=
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4351 =wpYk
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4352 -----END PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4353
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4354 --cWoXeonUoKmBZSoM--
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4355 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4356
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4357 def testPGPSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4358 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
4359 m = self.db.issue.get(nodeid, 'messages')[0]
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4360 self.assertEqual(self.db.msg.get(m, 'content'),
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4361 'This is a pgp signed message.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4362 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4363 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4364 self.assertEqual(l, 'email-sig-openpgp')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4365
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4366
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4367 def testPGPSignedMessageFail(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4368 # 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
4369 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
4370 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
4371
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4372 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
4373 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
4374 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
4375 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
4376 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
4377 boundary="d6Gm4EdcadzBjdND"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4378
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4379 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4380 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
4381 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4382
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4383 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4384
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4385 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4386 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
4387 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
4388
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4389 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4390 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
4391
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4392 hQEMAzfeQttq+Q2YAQf9FxCtZVgC7jAy6UkeAJ1imCpnh9DgKA5w40OFtrY4mVAp
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4393 cL7kCkvGvJCW7uQZrmSgIiYaZGLI3GS42XutORC6E6PzBEW0fJUMIXYmoSd0OFeY
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4394 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
4395 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
4396 9g2UvGxW8U24NAS1mOg868U05hquLPIcFz9jGZGknJu7HBpOkQ9GjKqkzN8pgZVN
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4397 VbN8IdDqi0QtRKE44jtWQlyNlESMjv6GtC2V9F6qKNK8AfHtBexDhyv4G9cPFFNO
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4398 afQ6e4dPi89RYIQyydtwiqao8fj6jlAy2Z1cbr7YxwBG7BeUZv9yis7ShaAIo78S
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4399 82MrCYpSjfHNwKiSfC5yITw22Uv4wWgixVdAsaSdtBqEKXJPG9LNey18ArsBjSM1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4400 P81iDOWUp/uyIe5ZfvNI38BBxEYslPTUlDk2GB8J2Vun7IWHoj9a4tY3IotC9jBr
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4401 5Qnigzqrt7cJZX6OrN0c+wnOjXbMGYXmgSs4jeM=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4402 =XX5Q
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4403 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4404
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4405 --d6Gm4EdcadzBjdND--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4406 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4407 def testPGPEncryptedUnsignedMessageError(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4408 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
4409
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4410 def testPGPEncryptedUnsignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4411 # 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
4412 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
4413 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
4414 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
4415 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
4416 'This is the text to be encrypted')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4417 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4418 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4419 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
4420
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4421 def testPGPEncryptedUnsignedMessageFromNonPGPUser(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4422 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
4423 '"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
4424 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
4425 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
4426 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
4427 '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
4428 self.assertEqual(self.db.msg.get(m, 'author'), self.mary_id)
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4429 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4430 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4431 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4432
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4433
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4434 # 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
4435 # 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
4436 def testPGPEncryptedUnsignedMessageCheckBounce(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4437 # 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
4438 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
4439 # 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
4440 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
4441 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
4442 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
4443 # 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
4444 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
4445 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
4446 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
4447 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
4448 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
4449 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
4450 plain = gpg.core.Data()
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4451 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
4452 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
4453 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
4454 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
4455 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
4456 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
4457 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
4458 '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
4459 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
4460 '''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
4461 Content-Disposition: inline
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4462
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4463 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
4464
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4465
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4466 def testPGPEncryptedSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4467 # 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
4468 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
4469 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
4470 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
4471 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
4472 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
4473 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
4474 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
4475 boundary="ReaqsoxgOBHFXBhH"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4476
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4477 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4478 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
4479 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4480
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4481 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4482
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4483 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4484 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
4485 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
4486
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4487 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4488 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
4489
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4490 hQEMAzfeQttq+Q2YAQf+NaC3r8qBURQqxHH9IAP4vg0QAP2yj3n0v6guo1lRf5BA
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4491 EUfTQ3jc3chxLvzTgoUIuMOvhlNroqR1lgLwhfSTCyuKWDZa+aVNiSgsB2MD44Xd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4492 mAkKKmnmOGLmfbICbPQZxl4xNhCMTHiAy1xQE6mTj/+pEAq5XxjJUwn/gJ3O1Wmd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4493 NyWtJY2N+TRbxUVB2WhG1j9J1D2sjhG26TciE8JeuLDZzaiVNOW9YlX2Lw5KtlkR
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4494 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
4495 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
4496 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
4497 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
4498 wfiqXsY+XvSZtTbWuvUJxePh8vhhhjpuo1JtlrYc3hZ9OYgoCoV1JiLl5c60U5Es
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4499 oUT9GDl1Qsgb4dF4TJ1IBj+riYiocYpJxPhxzsy6liSLNy2OA6VEjG0FGk53+Ok9
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4500 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
4501 D0QQLwIFttplKvYkn0DZByJCVnIlGkl4s5LM5rnc8iecX8Jad0iRIlPV6CVM+Nso
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4502 WdARUfyJfXAmz8uk4f2sVfeMu1gdMySdjvxwlgHDJdBPIG51r2b8L/NCTiC57YjF
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4503 zGhS06FLl3V1xx6gBlpqQHjut3efrAGpXGBVpnTJMOcgYAk=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4504 =jt/n
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4505 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4506
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4507 --ReaqsoxgOBHFXBhH--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4508 ''')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4509 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
4510 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
4511 'This is the text of a signed and encrypted email.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4512 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4513 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4514 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
4515
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
4516 # vim: set filetype=python sts=4 sw=4 et si :

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