annotate test/test_mailgw.py @ 6488:99d365eebefd

Rearrage order of python versions. Hopefully travisci runs versions in my specified order. Run non-dev current versions first. Latest ResourceWarning failures only show up in 3.8 and 3.9, so let them run during the first batch of 4 jobs. Then backfill with earlier versions and nightly versions. Note travis has 3.9-dev even though it's tracking a released version.
author John Rouillard <rouilj@ieee.org>
date Mon, 06 Sep 2021 15:00:40 -0400
parents 7f00fc5958ca
children 2453d7b58a92
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1 # -*- encoding: utf-8 -*-
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
2 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
3 # Copyright (c) 2001 Richard Jones, richard@bofh.asn.au.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
4 # This module is free software, and you may redistribute it and/or modify
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
5 # under the same terms as Python, so long as this copyright message and
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
6 # disclaimer are retained in their original form.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
7 #
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
8 # This module is distributed in the hope that it will be useful,
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
2219
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
11
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
12 # TODO: test bcc
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
13
4965
a850f8bae536 Moved test_mailgw to email module and make message comparison sharper to flag differences in headers with the same name.
Bernhard Reiter <bernhard@intevation.de>
parents: 4781
diff changeset
14 import email
5388
d26921b851c3 Python 3 preparation: make relative imports explicit.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5381
diff changeset
15 from . import gpgmelib
6300
778a9f455067 Remove old code import imp, old style trackers db/backend_name
John Rouillard <rouilj@ieee.org>
parents: 6247
diff changeset
16 import unittest, tempfile, os, shutil, errno, sys, difflib, time, io
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
17
5036
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
18 import pytest
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
19
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
20 try:
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
21 import gpg, gpg.core
5038
c977f3530944 Work-around for pytest.mark.skipif() bug
John Kristensen <john@jerrykan.com>
parents: 5037
diff changeset
22 skip_pgp = lambda func, *args, **kwargs: func
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
23 except ImportError:
5109
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
24 # FIX: workaround for a bug in pytest.mark.skip():
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
25 # https://github.com/pytest-dev/pytest/issues/568
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
26 from .pytest_patcher import mark_class
43a1f7fe39f5 Improved work-around for pytest markers bug
John Kristensen <john@jerrykan.com>
parents: 5105
diff changeset
27 skip_pgp = mark_class(pytest.mark.skip(
5494
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
28 reason="Skipping PGP tests: 'gpg' not installed"))
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
29
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
6361
58817c3bf471 Fix roundup/test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6345
diff changeset
44 from roundup.test 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()
6365
7f00fc5958ca Make memorydb persistent across re-open
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6361
diff changeset
226 memorydb.db_nuke('')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
227
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
228 def _allowAnonymousSubmit(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
229 p = [
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
230 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
231 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
232 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
233 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
234 ]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
235 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
236
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
237 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
238 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
239 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
240 return self._handle_message(message)
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
241 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
242 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
243 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
244
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
245 def _handle_mail(self, message, args=(), trap_exc=0):
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
246 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
247 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
248 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
249
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
250 def _get_mail(self):
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
251 """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
252
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
253 Note: the resulting email will have three leading extra lines
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
254 written by the self.debug code branch in Mailer.smtp_send().
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
255 """
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
256 f = open(SENDMAILDEBUG)
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
257 try:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
258 return f.read()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
259 finally:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
260 f.close()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
261
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
262 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
263 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
264 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
265 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
266 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
267 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
268 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
269 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
270 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
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 '''
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 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
274 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
275 # 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
276 # 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
277 # 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
278
65b42fd96c00 partly test subject line of 'help' to trigger help message. Can't verify the help message is sent though
John Rouillard <rouilj@ieee.org>
parents: 5151
diff changeset
279
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
280 # 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
281 # 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
282 def testEmptyMessage(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
283 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
284 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
285 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
286 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
287 Cc: richard@test.test
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
288 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
289 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
290 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
291
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
292 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
293 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
294 self.assertEqual(self.db.issue.get(nodeid, 'title'), 'Testing...')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
295 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
296
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
297
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
298 class MailgwTestCase(MailgwTestAbstractBase, StringFragmentCmpHelper, unittest.TestCase):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
299
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
300 def testTextHtmlMessage(self):
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
301 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
302 charset="iso-8859-1"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
303 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
304 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
305 Cc: richard@test.test
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
306 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
307 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
308 Subject: [issue] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
309
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
310 <body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
311 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
312 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
313 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
314 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
315 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
316 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
317 <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
318 <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
319 <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
320 <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
321 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
322 <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
323 <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
324 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
325 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
326 <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
327 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
328 <ul class="current">
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 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
330 <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
331 <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
332 <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
333 <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
334 <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
335 <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
336 <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
337 <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
338 <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
339 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
340 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
341 <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
342 <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
343 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
344 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
345 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
346 <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
347 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
348 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
349 <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
350 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
351 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
352 <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
353 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
354 </body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
355 '''
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
356 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
357
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
358 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
359 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
360 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
361 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
362 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
363 text_fragments)
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
364
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
365 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
366 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
367
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
368 def testMessageWithFromInIt(self):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
369 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
370 charset="iso-8859-1"
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
371 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
372 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
373 Cc: richard@test.test
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
374 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
375 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
376 Subject: [issue] Testing...
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
377
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
378 From here to there!
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
379 ''')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
380 assert not os.path.exists(SENDMAILDEBUG)
4343
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
381 msgid = self.db.issue.get(nodeid, 'messages')[0]
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
382 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
383
4468
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
384 def testNoMessageId(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
385 self.instance.config['MAIL_DOMAIN'] = 'example.com'
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
386 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
387 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
388 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
389 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
390 Cc: richard@test.test
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
391 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
392 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
393
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
394 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
395 ''')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
396 assert not os.path.exists(SENDMAILDEBUG)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
397 msgid = self.db.issue.get(nodeid, 'messages')[0]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
398 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
399 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
400 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
401 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
402 self.assertEqual(x, 'issueNone')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
403 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
404 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
405 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
406 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
407 Subject: [issue%(nodeid)s] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
408
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
409 Just a test reply
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
410 '''%locals())
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
411 msgid = self.db.issue.get(nodeid, 'messages')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
412 messageid = self.db.msg.get(msgid, 'messageid')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
413 x1, x2 = messageid.split('@')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
414 self.assertEqual(x2, 'example.com>')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
415 x = x1.split('.')[-1]
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
416 self.assertEqual(x, "issue%s"%nodeid)
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
417
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
418 def testOptions(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
419 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
420 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
421 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
422 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
423 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
424 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
425 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
426
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
427 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
428 ''', (('-C', 'issue'), ('-S', 'status=chatting;priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
429 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
430 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
431
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
432 def testOptionsMulti(self):
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
433 nodeid = self._handle_mail('''Content-Type: text/plain;
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
434 charset="iso-8859-1"
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
435 From: Chef <chef@bork.bork.bork>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
436 To: issue_tracker@your.tracker.email.domain.example
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
437 Message-Id: <dummy_test_message_id>
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
438 Reply-To: chef@bork.bork.bork
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
439 Subject: [issue] Testing...
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
440
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
441 Hi there!
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
442 ''', (('-C', 'issue'), ('-S', 'status=chatting'), ('-S', 'priority=critical')))
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
443 self.assertEqual(self.db.issue.get(nodeid, 'status'), '3')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
444 self.assertEqual(self.db.issue.get(nodeid, 'priority'), '1')
502a1a8620e6 Tests and fixes.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4424
diff changeset
445
4478
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
446 def testOptionClass(self):
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
447 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
448 charset="iso-8859-1"
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
449 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
450 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
451 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
452 Reply-To: chef@bork.bork.bork
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
453 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
454
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
455 Hi there!
e7dcec8c40e9 - Add regression test for -c option to mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4468
diff changeset
456 ''', (('-c', 'issue'),))
4479
0bdcb1e7f7ce - fix new mailgw test (-c option :-)
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4478
diff changeset
457 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
458 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
459 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
460
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
461 newmsg = '''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
462 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
463 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
464 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
465 Cc: richard@test.test
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
466 Message-Id: <dummy_test_message_id>
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
467 Subject: [issue] Testing...
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
468
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
469 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
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
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
472 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
473 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
474 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
475 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
476 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
477 self.assertEqual(l, [self.chef_id, self.richard_id])
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
478
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
479 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
480 l = self.db.msg.get('1', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
481 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
482
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
483 return nodeid
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
484
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
485 def testNewIssue(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
486 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
487
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
488 def testNewIssueNosy(self):
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
489 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
490 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
491 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
492 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
493 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
494 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
495
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
496 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
497 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
498 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
499 nodeid = self._handle_mail(self.newmsg)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
500 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
501 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
502 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
503 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
504 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
505 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
506 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
507 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
508 self.assertEqual(recv, [self.richard_id])
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
509
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
510 def testAlternateAddress(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
511 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
512 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
513 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
514 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
515 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
516 Subject: [issue] Testing...
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
517
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
518 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
519 ''')
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
520 userlist = self.db.user.list()
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
521 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
522 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
523 "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
524
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
525 def testNewIssueNoClass(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
526 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
527 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
528 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
529 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
530 Cc: richard@test.test
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
531 Message-Id: <dummy_test_message_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
532 Subject: Testing...
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
533
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
534 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
535 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
536 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
537
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
538 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
539 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
540 self._handle_mail('''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
541 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
542 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
543 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
544 Message-Id: <dummy_test_message_id>
560
d7b9751f8927 Mail gateway improvements.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 537
diff changeset
545 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
546
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
547 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
548 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
549 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
550 '''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
551 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
552 Content-Type: text/plain; charset="utf-8"
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
553 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
554 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
555 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
556 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
557 <issue_tracker@your.tracker.email.domain.example>
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
558 MIME-Version: 1.0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
559 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
560 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
561 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
562 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
563 X-Roundup-Issue-Id: 1
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
564 Content-Transfer-Encoding: quoted-printable
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
565
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
566
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
567 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
568
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
569 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
570
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
571 ----------
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
572 assignedto: richard
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
573 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
574 nosy: Chef, mary, richard
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
575 status: unread
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
576 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
577 tx_Source: email
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
578
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
579 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
580 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
581 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
582 _______________________________________________________________________
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
583 ''')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
584
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
585 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
586 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
587 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
588 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
589 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
590 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
591 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
592 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
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 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
595 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
596 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
597 '''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
598 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
599 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
600 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
601 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
602 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
603 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
604 <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
605 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
606 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
607 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
608 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
609 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
610 X-Roundup-Issue-Id: 1
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
611 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
612
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
613 This is a test submission of a new issue.
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
614
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
615 ----------
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 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
617 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
618 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
619 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
620 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
621 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
622
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 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
625 <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
626 _______________________________________________________________________
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 ''')
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
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 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
630 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
631 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
632 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
633 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
634 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
635 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
636 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
637
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 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
639 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
640 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
641 '''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
642 TO: mary@test.test, richard@test.test
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
643 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
644 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
645 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
646 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
647 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
648 <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
649 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
650 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
651 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
652 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
653 X-Roundup-Issue-Status: unread
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
654 X-Roundup-Issue-Id: 1
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
655 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
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 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
658
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
659 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
660
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 ----------
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 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
663 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
664 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
665 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
666 title: Testing...
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
667 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
668
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
669 _______________________________________________________________________
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 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
671 <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
672 _______________________________________________________________________
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
673 ''')
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
674
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
675 octetstream_msg = '''From: mary <mary@test.test>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
676 To: issue_tracker@your.tracker.email.domain.example
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
677 Message-Id: <followup_dummy_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
678 In-Reply-To: <dummy_test_message_id>
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
679 Subject: [issue1] Testing...
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
680 Content-Type: multipart/mixed; boundary="uh56ypi7view24rr"
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 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
684 Content-Type: text/plain; charset=us-ascii
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
685 Content-Disposition: inline
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 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
688 make it as-is through roundup due to Content-Type
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
689 application/octet-stream)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
690 --
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
691 Ralf Schlatterbeck email: ralf@zoo.priv.at
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
692
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
693 --uh56ypi7view24rr
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
694 Content-Type: application/octet-stream
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
695 Content-Disposition: attachment; filename=testfile
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
696 Content-Transfer-Encoding: quoted-printable
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
697
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
698 This is a file containing text
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
699 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
700
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
701 --uh56ypi7view24rr--
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
702 '''
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
703
6345
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
704 filename_msg = '''From: mary <mary@test.test>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
705 To: issue_tracker@your.tracker.email.domain.example
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
706 Message-Id: <followup_dummy_id>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
707 In-Reply-To: <dummy_test_message_id>
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
708 Subject: [issue1] Testing...
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
709 Content-Type: multipart/mixed; boundary="uh56ypi7view24rr"
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
710 Content-Disposition: inline
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
711
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
712 --uh56ypi7view24rr
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
713 Content-Type: text/plain; charset=us-ascii
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
714 Content-Disposition: inline
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
715
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
716 Attach a file with non-ascii characters in it (encoded latin-1 should
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
717 make it as-is through roundup due to Content-Type
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
718 application/octet-stream)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
719 --
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
720 Ralf Schlatterbeck email: ralf@zoo.priv.at
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
721
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
722 --uh56ypi7view24rr
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
723 Content-Type: application/octet-stream
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
724 Content-Disposition: attachment;
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
725 filename==?iso-8859-1?Q?20210312=5FM=FCnchen=5FRepor?=
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
726 =?iso-8859-1?Q?t.pdf?=
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
727 Content-Transfer-Encoding: quoted-printable
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
728
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
729 This is a file containing text
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
730 in latin-1 format =E4=F6=FC=C4=D6=DC=DF
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
731
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
732 --uh56ypi7view24rr--
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
733 '''
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
734
3974
ff089ebe95d1 remove duplicate Content-Type header from multipart_msg...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3966
diff changeset
735 multipart_msg = '''From: mary <mary@test.test>
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
736 To: issue_tracker@your.tracker.email.domain.example
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
737 Message-Id: <followup_dummy_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
738 In-Reply-To: <dummy_test_message_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
739 Subject: [issue1] Testing...
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
740 Content-Type: multipart/mixed; boundary="bxyzzy"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
741 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
742
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
743
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
744 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
745 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWE"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
746 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
747
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
748 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
749 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
750 Content-Disposition: inline
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 test attachment first text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
753
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
754 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
755 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
756 Content-Disposition: attachment; filename="first.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
757 Content-Transfer-Encoding: base64
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 SnVzdCBhIHRlc3QgAQo=
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 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
762 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
763 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
764
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
765 test attachment second text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
766
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
767 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
768 Content-Type: text/html
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
769 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
770
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
771 <html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
772 to be ignored.
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
773 </html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
774
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
775 --bCsyhTFzCvuiizWE--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
776
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
777 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
778 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWF"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
779 Content-Disposition: inline
609
633f2b542146 Clean up mail handling, multipart handling.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 599
diff changeset
780
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
781 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
782 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
783 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
784
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
785 test attachment third text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
786
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
787 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
788 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
789 Content-Disposition: attachment; filename="second.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
790 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
791
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
792 SnVzdCBhIHRlc3QK
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
793
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
794 --bCsyhTFzCvuiizWF--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
795
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
796 --bxyzzy--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
797 '''
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
798
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
799 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
800 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
801 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
802 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
803 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
804 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
805
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
806
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
807 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
808 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
809 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
810
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
811 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
812
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
813 --001485f339f8f361fb049188dbba
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
814 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
815 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
816
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
817 <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
818
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
819 --001485f339f8f361fb049188dbba--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
820 '''
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
821
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
822 multipart_msg_rfc822 = '''From: mary <mary@test.test>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
823 To: issue_tracker@your.tracker.email.domain.example
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
824 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
825 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
826 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
827 Content-Type: multipart/mixed; boundary=001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
828
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
829 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
830 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
831 Content-Type: text/plain; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
832 Content-Transfer-Encoding: 7bit
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 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
835
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
836 --001485f339f8f361fb049188dbba
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
837 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
838 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
839 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
840
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
841 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
842 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
843 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
844 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
845 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
846 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
847
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
848 This is a multi-part message in MIME format.
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
849 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
850 Content-Type: text/plain; charset=ISO-8859-15; format=flowed
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
851 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
852
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
853 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
854 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
855
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
856 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
857 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
858 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
859
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
860 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
861 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
862 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
863 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
864
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
865 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
866
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
867 --001485f339f8f361fb049188dbba--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
868 '''
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
869
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
870 def testOctetStreamTranscoding(self):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
871 self.doNewIssue()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
872 self._handle_mail(self.octetstream_msg)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
873 messages = self.db.issue.get('1', 'messages')
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
874 messages.sort()
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
875 msg = self.db.msg.getnode (messages[-1])
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
876 assert(len(msg.files) == 1)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
877 names = {0 : 'testfile'}
5547
081be318661b Do not transcode binary email attachments (issue2551004).
Joseph Myers <jsm@polyomino.org.uk>
parents: 5546
diff changeset
878 content = [b'''This is a file containing text
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
879 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
880 ''']
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
881 for n, id in enumerate (msg.files):
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
882 f = self.db.file.getnode (id)
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
883 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
884 self.assertEqual(f.binary_content, content [n])
5545
4523fe3cf04c Add failing transcoding test
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5542
diff changeset
885
6345
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
886 def testFileAttachWithUmlaut(self):
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
887 self.doNewIssue()
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
888 self._handle_mail(self.filename_msg)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
889 messages = self.db.issue.get('1', 'messages')
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
890 messages.sort()
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
891 msg = self.db.msg.getnode (messages[-1])
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
892 assert(len(msg.files) == 1)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
893 names = {0 : u'20210312_M\xfcnchen_Report.pdf'}
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
894 content = [b'''This is a file containing text
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
895 in latin-1 format \xE4\xF6\xFC\xC4\xD6\xDC\xDF
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
896 ''']
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
897 for n, id in enumerate (msg.files):
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
898 f = self.db.file.getnode (id)
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
899 self.assertEqual(f.name, names.get (n, 'unnamed'))
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
900 self.assertEqual(f.binary_content, content [n])
14c9284a8bad Fix filename created from mail attachments
Ralf Schlatterbeck <rsc@runtux.com>
parents: 6300
diff changeset
901
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
902 def testMultipartKeepAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
903 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
904 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
905 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
906 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
907 msg = self.db.msg.getnode (messages[-1])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
908 assert(len(msg.files) == 5)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
909 names = {0 : 'first.dvi', 4 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
910 content = {3 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
911 4 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
912 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
913 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
914 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
915 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
916 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
917 self.assertEqual(msg.content, 'test attachment second text/plain')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
918
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
919 def testMultipartSeveralAttachmentMessages(self):
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
920 self.doNewIssue()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
921 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
922 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
923 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
924 self.assertEqual(messages[-1], '2')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
925 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
926 self.assertEqual(len(msg.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
927 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
928 self.assertEqual(len(issue.files), 5)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
929 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
930 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
931 4 : 'Just a test\n'}
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
932 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
933 f = self.db.file.getnode (id)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
934 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
935 if n in content :
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
936 self.assertEqual(f.content, content [n])
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
937 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
938 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
939 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
940
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
941 self._handle_mail(self.multipart_msg)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
942 issue = self.db.issue.getnode ('1')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
943 self.assertEqual(len(issue.files), 10)
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
944 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
945 messages.sort()
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
946 self.assertEqual(messages[-1], '3')
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
947 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
948 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
949 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
950
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
951 def testMultipartKeepFiles(self):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
952 self.doNewIssue()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
953 self._handle_mail(self.multipart_msg)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
954 messages = self.db.issue.get('1', 'messages')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
955 messages.sort()
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
956 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
957 self.assertEqual(len(msg.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
958 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
959 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
960 names = {0 : 'first.dvi', 4 : 'second.dvi'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
961 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
962 4 : 'Just a test\n'}
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
963 for n, id in enumerate (msg.files):
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
964 f = self.db.file.getnode (id)
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
965 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
966 if n in content :
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
967 self.assertEqual(f.content, content [n])
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
968 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
969 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
970 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
971 Message-Id: <followup_dummy_id2>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
972 In-Reply-To: <dummy_test_message_id>
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
973 Subject: [issue1] Testing...
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
974
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
975 This ist a message without attachment
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
976 ''')
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
977 issue = self.db.issue.getnode ('1')
4503
9f488541802f Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4498
diff changeset
978 self.assertEqual(len(issue.files), 5)
4498
8df9492c2746 Fix file-unlink bug in mailgw
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4479
diff changeset
979 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
980
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
981 def testMultipartDropAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
982 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
983 self.db.config.MAILGW_IGNORE_ALTERNATIVES = True
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
984 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
985 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
986 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
987 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
988 self.assertEqual(len(msg.files), 2)
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
989 names = {1 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
990 content = {0 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
991 1 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
992 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
993 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
994 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
995 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
996 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
997 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
998
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
999 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
1000 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
1001 self.doNewIssue()
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.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
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="utf-8"
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
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1031 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1032 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
1033
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1034
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1035 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
1036
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1037 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
1038 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
1039 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
1040
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1041 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1042 status: unread -> chatting
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 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1045 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
1046 <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
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
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1050 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
1051 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
1052 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1053 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
1054 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
1055 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
1056 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
1057 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1058 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
1059 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
1060 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1061 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
1062 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
1063 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
1064 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
1065 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
1066 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
1067 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
1068 '''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
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 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
1071 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1072 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
1073 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
1074 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
1075 <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
1076 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
1077 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
1078 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
1079 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
1080 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
1081 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
1082 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1083 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1084 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
1085
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 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
1088
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1089 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
1090 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
1091 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
1092
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1093 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1094 status: unread -> chatting
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 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1097 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
1098 <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
1099 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1100 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1101
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1102 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
1103 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
1104 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1105 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
1106 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
1107 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1108 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
1109 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
1110 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1111 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
1112 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
1113 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
1114 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
1115 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
1116 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
1117 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
1118 '''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
1119 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
1120 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
1121 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1122 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
1123 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
1124 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
1125 <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
1126 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
1127 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
1128 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
1129 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
1130 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
1131 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
1132 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1133 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1134
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1135
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1136 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1137 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
1138 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
1139 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
1140
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1141
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1142 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
1143
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1144 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
1145
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1146 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1147 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1148
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 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
1151 <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
1152 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1153 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1154 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
1155 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
1156 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
1157 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1158 filename="unnamed"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1159
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1160 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
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 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1164
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1165 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
1166 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
1167 self.doNewIssue()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1168 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
1169 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
1170 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
1171 messages.sort()
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1172 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
1173 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
1174 name = 'unnamed'
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1175 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
1176 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
1177 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
1178 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
1179 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
1180 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
1181 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
1182 '''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
1183 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
1184 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
1185 Subject: [issue1] Testing...
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1186 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
1187 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
1188 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
1189 <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
1190 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
1191 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
1192 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
1193 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
1194 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
1195 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
1196 X-Roundup-Issue-Files: unnamed
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1197 X-Roundup-Issue-Id: 1
4423
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1198
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1199
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1200 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1201 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
1202 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
1203 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
1204
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1205
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1206 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
1207
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1208 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
1209
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1210 ----------
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1211 status: unread -> chatting
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1212
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1213 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1214 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
1215 <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
1216 _______________________________________________________________________
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1217 --utf-8
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1218 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
1219 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
1220 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
1221 Content-Disposition: attachment;
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1222 filename="unnamed"
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1223
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1224 PGh0bWw+dW1sYXV0IMOkw7bDvMOEw5bDnMOfPC9odG1sPgo=
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1225
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1226 --utf-8--
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1227 ''')
579802067547 Fix charset of first text-part of outgoing multipart messages...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4407
diff changeset
1228
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1229 def testMultipartRFC822(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1230 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1231 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1232 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1233 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1234 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
1235 self.assertEqual(len(msg.files), 1)
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1236 name = "Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1237 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1238 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1239 self.assertEqual(f.name, name)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1240 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1241 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1242 '''FROM: roundup-admin@your.tracker.email.domain.example
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
1243 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
1244 Content-Type: multipart/mixed; charset="utf-8"
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1245 Subject: [issue1] Testing...
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1246 To: chef@bork.bork.bork, richard@test.test
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1247 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
1248 Reply-To: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1249 <issue_tracker@your.tracker.email.domain.example>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1250 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1251 Message-Id: <followup_dummy_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1252 In-Reply-To: <dummy_test_message_id>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1253 X-Roundup-Name: Roundup issue tracker
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1254 X-Roundup-Loop: hello
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1255 X-Roundup-Issue-Status: chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1256 X-Roundup-Issue-Files: Fwd: Original email subject.eml
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1257 X-Roundup-Issue-Id: 1
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1258
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1259
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1260 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1261 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1262 Content-Type: text/plain; charset="utf-8"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1263 Content-Transfer-Encoding: quoted-printable
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1264
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1265
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1266 Contrary, Mary <mary@test.test> added the comment:
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1267
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1268 First part: Text
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1269
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1270 ----------
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1271 status: unread -> chatting
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1272
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1273 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1274 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
1275 <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
1276 _______________________________________________________________________
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1277 --utf-8
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1278 Content-Type: message/rfc822
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1279 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1280 Content-Disposition: attachment;
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1281 filename="Fwd: Original email subject.eml"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1282
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1283 Message-Id: <followup_dummy_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1284 In-Reply-To: <dummy_test_message_id_2>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1285 MIME-Version: 1.0
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1286 Subject: Fwd: Original email subject
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1287 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
1288 Content-Type: multipart/alternative; boundary="090500050101020406060002"
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1289
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1290 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
1291 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1292 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
1293 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1294
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1295 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1296 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1297
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1298 --090500050101020406060002
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1299 Content-Type: text/html; charset=ISO-8859-15
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1300 Content-Transfer-Encoding: 7bit
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1301
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1302 <html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1303 some text in inner email
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1304 ========================
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1305 </html>
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1306
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1307 --090500050101020406060002--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1308
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1309 --utf-8--
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1310 ''')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1311
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1312 html_doc='''<html><body>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1313 <script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1314 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
1315 </script>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1316 <style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1317 p {display:block}
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1318 </style>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1319 <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
1320 <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
1321 <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
1322 <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
1323 <input type="submit" value="Search" />
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1324 <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
1325 <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
1326 </form>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1327 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1328 <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
1329 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1330 <ul class="current">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1331 <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
1332 <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
1333 <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
1334 <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
1335 <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
1336 <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
1337 <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
1338 <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
1339 <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
1340 <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
1341 </ul>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1342 <div class="section" id="prerequisites">
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1343 <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
1344 <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
1345 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
1346 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
1347 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
1348 <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
1349 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
1350 known to require this.</p>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1351 <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
1352 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
1353 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
1354 <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
1355 </div>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1356 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
1357 </html>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1358 '''
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1359 # 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
1360 # to test quoted printable conversion
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1361
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1362 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
1363 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
1364 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1365 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
1366 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1367 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
1368
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1369
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1370 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1371 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
1372 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1373
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1374 75,23,16,18
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1375
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1376 --001485f339f8f361fb049188dbba
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1377 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
1378 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1379
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1380 %s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1381 --001485f339f8f361fb049188dbba--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1382 '''%html_doc
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1383
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1384 def testMultipartTextifyHTML(self):
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1385 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
1386
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1387 # \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
1388 # 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
1389 # 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
1390 # input.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1391 self.doNewIssue()
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1392 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
1393 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
1394 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
1395 messages.sort()
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1396 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
1397 # html converted to utf-8 text
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1398 self.compareStringFragments(msg.content,
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1399 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
1400 self.assertEqual(msg.type, None)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1401 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
1402 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
1403 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
1404 # 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
1405 # 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
1406 # works.
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1407 content = { 0: "75,23,16,18\n",
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1408 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
1409 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
1410 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
1411 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
1412 self.assertEqual(f.name, name)
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1413 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
1414 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
1415
5513
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1416 self.compareMessages(self._get_mail()
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1417 .replace('=E2=80=99', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1418 .replace('=E2=80=9C', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1419 .replace('=E2=80=9D', '')
19bd4b413ed6 be more lenient when comparing string results
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5502
diff changeset
1420 .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
1421 '''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
1422 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
1423 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
1424 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
1425 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1426 Reply-To: Roundup issue tracker
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1427 <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
1428 Message-Id: <followup_dummy_id>
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1429 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
1430 X-Roundup-issue-status: chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1431 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
1432 Subject: [issue1] Testing...
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1433 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
1434 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
1435 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
1436 Precedence: bulk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1437 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
1438 X-Roundup-Loop: hello
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1439 X-Roundup-Version: 1.5.1
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1440 X-Roundup-Issue-Id: 1
5305
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1441
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1442 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1443 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1444 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
1445 Content-Transfer-Encoding: quoted-printable
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1446
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1447
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1448 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
1449
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1450 Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1451 Home
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1452 Download
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1453 Docs
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1454 Roundup Features
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1455 Installing Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1456 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
1457 Roundup FAQ
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1458 User Guide
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1459 Customising Roundup
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1460 Administration Guide
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1461 Prerequisites
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1462
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1463 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
1464 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
1465 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
1466 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
1467
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1468 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
1469 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
1470 known to require this.
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1471
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1472 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
1473 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
1474 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
1475 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
1476
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1477 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
1478
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1479 ----------
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1480 status: unread -> chatting
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1481
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1482 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1483 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
1484 <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
1485 _______________________________________________________________________
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1486 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1487 Content-Type: text/csv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1488 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1489 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1490 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1491 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1492
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1493 NzUsMjMsMTYsMTgK
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1494
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1495 --===============6077820410007357357==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1496 Content-Type: text/html
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1497 MIME-Version: 1.0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1498 Content-Transfer-Encoding: base64
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1499 Content-Disposition: attachment;
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1500 filename="unnamed"
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1501
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1502 PGh0bWw+PGJvZHk+CjxzY3JpcHQ+CnRoaXMgbXVzdCBub3QgYmUgaW4gb3V0cHV0Cjwvc2NyaXB0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1503 Pgo8c3R5bGU+CnAge2Rpc3BsYXk6YmxvY2t9Cjwvc3R5bGU+CiAgICA8ZGl2IGNsYXNzPSJoZWFk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1504 ZXIiPjxoMT5Sb3VuZHVwPC9oMT4KICAgICAgICA8ZGl2IGlkPSJzZWFyY2hib3giIHN0eWxlPSJk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1505 aXNwbGF5OiBub25lIj4KICAgICAgICAgIDxmb3JtIGNsYXNzPSJzZWFyY2giIGFjdGlvbj0iLi4v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1506 c2VhcmNoLmh0bWwiIG1ldGhvZD0iZ2V0Ij4KICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQi
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1507 IG5hbWU9InEiIHNpemU9IjE4IiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiB2
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1508 YWx1ZT0iU2VhcmNoIiAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1509 aGVja19rZXl3b3JkcyIgdmFsdWU9InllcyIgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9Imhp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1510 ZGRlbiIgbmFtZT0iYXJlYSIgdmFsdWU9ImRlZmF1bHQiIC8+CiAgICAgICAgICA8L2Zvcm0+CiAg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1511 ICAgICAgPC9kaXY+CiAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPiQoJyNz
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1512 ZWFyY2hib3gnKS5zaG93KDApOzwvc2NyaXB0PgogICAgPC9kaXY+CiAgICAgICA8dWwgY2xhc3M9
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1513 ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUtbDEiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1514 ZXJuYWwiIGhyZWY9Ii4uL2luZGV4Lmh0bWwiPkhvbWU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1515 cmVlLWwxIj48YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJodHRwOi8vcHlwaS5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1516 eXRob24ub3JnL3B5cGkvcm91bmR1cCI+RG93bmxvYWQ8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1517 cmVlLWwxIGN1cnJlbnQiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9Ii4uL2Rv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1518 Y3MuaHRtbCI+RG9jczwvYT48dWwgY2xhc3M9ImN1cnJlbnQiPgo8bGkgY2xhc3M9InRvY3RyZWUt
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1519 bDIiPjxhIGNsYXNzPSJyZWZlcmVuY2UgaW50ZXJuYWwiIGhyZWY9ImZlYXR1cmVzLmh0bWwiPlJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1520 dW5kdXAgRmVhdHVyZXM8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIGN1cnJlbnQiPjxh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1521 IGNsYXNzPSJjdXJyZW50IHJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iIj5JbnN0YWxsaW5nIFJv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1522 dW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1523 IGludGVybmFsIiBocmVmPSJ1cGdyYWRpbmcuaHRtbCI+VXBncmFkaW5nIHRvIG5ld2VyIHZlcnNp
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1524 b25zIG9mIFJvdW5kdXA8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0i
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1525 cmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJGQVEuaHRtbCI+Um91bmR1cCBGQVE8L2E+PC9saT4K
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1526 PGxpIGNsYXNzPSJ0b2N0cmVlLWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVm
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1527 PSJ1c2VyX2d1aWRlLmh0bWwiPlVzZXIgR3VpZGU8L2E+PC9saT4KPGxpIGNsYXNzPSJ0b2N0cmVl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1528 LWwyIj48YSBjbGFzcz0icmVmZXJlbmNlIGludGVybmFsIiBocmVmPSJjdXN0b21pemluZy5odG1s
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1529 Ij5DdXN0b21pc2luZyBSb3VuZHVwPC9hPjwvbGk+CjxsaSBjbGFzcz0idG9jdHJlZS1sMiI+PGEg
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1530 Y2xhc3M9InJlZmVyZW5jZSBpbnRlcm5hbCIgaHJlZj0iYWRtaW5fZ3VpZGUuaHRtbCI+QWRtaW5p
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1531 c3RyYXRpb24gR3VpZGU8L2E+PC9saT4KPC91bD4KPGRpdiBjbGFzcz0ic2VjdGlvbiIgaWQ9InBy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1532 ZXJlcXVpc2l0ZXMiPgo8aDI+PGEgY2xhc3M9InRvYy1iYWNrcmVmIiBocmVmPSIjaWQ1Ij5QcmVy
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1533 ZXF1aXNpdGVzPC9hPjwvaDI+CjxwPlJvdW5kdXAgcmVxdWlyZXMgUHl0aG9uIDIuNSBvciBuZXdl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1534 ciAoYnV0IG5vdCBQeXRob24gMykgd2l0aCBhIGZ1bmN0aW9uaW5nCmFueWRibSBtb2R1bGUuIERv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1535 d25sb2FkIHRoZSBsYXRlc3QgdmVyc2lvbiBmcm9tIDxhIGNsYXNzPSJyZWZlcmVuY2UgZXh0ZXJu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1536 YWwiIGhyZWY9Imh0dHA6Ly93d3cucHl0aG9uLm9yZy8iPmh0dHA6Ly93d3cucHl0aG9uLm9yZy88
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1537 L2E+LgpJdCBpcyBoaWdobHkgcmVjb21tZW5kZWQgdGhhdCB1c2VycyBpbnN0YWxsIHRoZSBsYXRl
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1538 c3QgcGF0Y2ggdmVyc2lvbgpvZiBweXRob24gYXMgdGhlc2UgY29udGFpbiBtYW55IGZpeGVzIHRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1539 IHNlcmlvdXMgYnVncy48L3A+CjxwPlNvbWUgdmFyaWFudHMgb2YgTGludXggd2lsbCBuZWVkIGFu
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1540 IGFkZGl0aW9uYWwgJiM4MjIwO3B5dGhvbiBkZXYmIzgyMjE7IHBhY2thZ2UKaW5zdGFsbGVkIGZv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1541 ciBSb3VuZHVwIGluc3RhbGxhdGlvbiB0byB3b3JrLiBEZWJpYW4gYW5kIGRlcml2YXRpdmVzLCBh
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1542 cmUKa25vd24gdG8gcmVxdWlyZSB0aGlzLjwvcD4KPHA+SWYgeW91JiM4MjE3O3JlIG9uIHdpbmRv
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1543 d3MsIHlvdSB3aWxsIGVpdGhlciBuZWVkIHRvIGJlIHVzaW5nIHRoZSBBY3RpdmVTdGF0ZSBweXRo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1544 b24KZGlzdHJpYnV0aW9uIChhdCA8YSBjbGFzcz0icmVmZXJlbmNlIGV4dGVybmFsIiBocmVmPSJo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1545 dHRwOi8vd3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vIj5odHRwOi8v
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1546 d3d3LmFjdGl2ZXN0YXRlLmNvbS9Qcm9kdWN0cy9BY3RpdmVQeXRob24vPC9hPiksIG9yIHlvdSYj
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1547 ODIxNztsbApoYXZlIHRvIGluc3RhbGwgdGhlIHdpbjMyYWxsIHBhY2thZ2Ugc2VwYXJhdGVseSAo
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1548 Z2V0IGl0IGZyb20KPGEgY2xhc3M9InJlZmVyZW5jZSBleHRlcm5hbCIgaHJlZj0iaHR0cDovL3N0
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1549 YXJzaGlwLnB5dGhvbi5uZXQvY3Jldy9taGFtbW9uZC93aW4zMi8iPmh0dHA6Ly9zdGFyc2hpcC5w
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1550 eXRob24ubmV0L2NyZXcvbWhhbW1vbmQvd2luMzIvPC9hPikuPC9wPgo8L2Rpdj4KdW1sYXV0IMOk
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1551 w7bDvMOEw5bDnMOfPC9ib2R5Pgo8L2h0bWw+Cg==
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1552
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1553 --===============6077820410007357357==--
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1554 ''')
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1555
e20f472fde7d issue2550799: provide basic support for handling html only emails
John Rouillard <rouilj@ieee.org>
parents: 5248
diff changeset
1556
4424
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1557 def testMultipartRFC822Unpack(self):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1558 self.doNewIssue()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1559 self.db.config.MAILGW_UNPACK_RFC822 = True
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1560 self._handle_mail(self.multipart_msg_rfc822)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1561 messages = self.db.issue.get('1', 'messages')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1562 messages.sort()
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1563 msg = self.db.msg.getnode (messages[-1])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1564 self.assertEqual(len(msg.files), 2)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1565 t = 'some text in inner email\n========================\n'
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1566 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
1567 for n, id in enumerate (msg.files):
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1568 f = self.db.file.getnode (id)
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1569 self.assertEqual(f.name, 'unnamed')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1570 if n in content :
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1571 self.assertEqual(f.content, content [n])
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1572 self.assertEqual(msg.content, 'First part: Text')
f1affb6b7a08 Mail gateway fixes and improvements.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4423
diff changeset
1573
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1574 def testSimpleFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1575 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1576 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
1577 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1578 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
1579 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
1580 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1581 In-Reply-To: <dummy_test_message_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1582 Subject: [issue1] Testing...
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1583
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1584 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1585 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1586 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
1587 '''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
1588 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
1589 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
1590 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1591 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1592 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
1593 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1594 <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
1595 MIME-Version: 1.0
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1596 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1597 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
1598 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
1599 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1600 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
1601 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1602 X-Roundup-Issue-Id: 1
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1603
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1604
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1605 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
1606
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1607 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1608
571
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1609 ----------
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
1610 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1611
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1612 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1613 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
1614 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1615 _______________________________________________________________________
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
1616 ''')
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
1617
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1618 def testFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1619 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1620
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1621 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1622 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1623 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1624 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1625 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1626 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
1627 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1628
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1629 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1630 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1631 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1632 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1633 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
1634 self.john_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1635
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1636 self.compareMessages(self._get_mail(),
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1637 '''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
1638 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
1639 Content-Type: text/plain; charset="utf-8"
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1640 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1641 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
1642 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
1643 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1644 <issue_tracker@your.tracker.email.domain.example>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1645 MIME-Version: 1.0
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1646 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1647 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1648 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
1649 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1650 X-Roundup-Issue-Status: chatting
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1651 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1652 X-Roundup-Issue-Id: 1
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1653
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1654
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1655 richard <richard@test.test> added the comment:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1656
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1657 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1658
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1659 ----------
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1660 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
1661 nosy: +john, mary
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1662 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1663
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1664 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1665 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
1666 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1667 _______________________________________________________________________
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1668 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1669
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1670 def testFollowupUTF8(self):
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1671 self.doNewIssue()
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1672
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1673 self._handle_mail('''Content-Type: text/plain;
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1674 charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1675 Content-Transfer-Encoding: quoted-printable
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1676 From: richard <richard@test.test>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1677 To: issue_tracker@your.tracker.email.domain.example
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1678 Message-Id: <followup_dummy_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1679 In-Reply-To: <dummy_test_message_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1680 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1681
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1682 This is a followup with UTF-8 characters in it:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1683 =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1684 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1685 l = self.db.issue.get('1', 'nosy')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1686 l.sort()
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1687 self.assertEqual(l, [self.chef_id, self.richard_id, self.mary_id,
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1688 self.john_id])
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1689
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1690 self.compareMessages(self._get_mail(),
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1691 '''FROM: roundup-admin@your.tracker.email.domain.example
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1692 TO: chef@bork.bork.bork, john@test.test, mary@test.test
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1693 Content-Type: text/plain; charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1694 Subject: [issue1] Testing...
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1695 To: chef@bork.bork.bork, john@test.test, mary@test.test
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1696 From: richard <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1697 Reply-To: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1698 <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1699 MIME-Version: 1.0
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1700 Message-Id: <followup_dummy_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1701 In-Reply-To: <dummy_test_message_id>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1702 X-Roundup-Name: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1703 X-Roundup-Loop: hello
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1704 X-Roundup-Issue-Status: chatting
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1705 Content-Transfer-Encoding: quoted-printable
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1706 X-Roundup-Issue-Id: 1
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1707
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1708
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1709 richard <richard@test.test> added the comment:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1710
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1711 This is a followup with UTF-8 characters in it:
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1712 =C3=A4=C3=B6=C3=BC=C3=84=C3=96=C3=9C=C3=9F
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1713
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1714 ----------
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1715 assignedto: -> mary
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1716 nosy: +john, mary
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1717 status: unread -> chatting
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1718
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1719 _______________________________________________________________________
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1720 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1721 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1722 _______________________________________________________________________
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1723 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
1724
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1725 def testFollowupNoSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1726 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
1727 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1728
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1729 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
1730 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1731 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1732 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
1733 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1734 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
1735 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
1736
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1737 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1738 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1739 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
1740 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1741 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
1742 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1743
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1744 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1745 '''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
1746 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
1747 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
1748 Subject: [issue1] Testing...
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1749 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
1750 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
1751 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1752 <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
1753 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1754 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1755 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
1756 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1757 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1758 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1759 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1760 X-Roundup-Issue-Id: 1
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1761
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1762 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
1763
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1764 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1765
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1766 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1767 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1768 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1769 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1770
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1771 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1772 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
1773 <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
1774 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1775 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1776 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
1777
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1778 def testFollowupExplicitSubjectChange(self):
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1779 self.doNewIssue()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1780
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1781 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
1782 charset="iso-8859-1"
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1783 From: richard <richard@test.test>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1784 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
1785 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1786 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
1787 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
1788
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1789 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1790 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1791 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
1792 l.sort()
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1793 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
1794 self.john_id])
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1795
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1796 # check that the message has the right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1797 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1798 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1799
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1800 self.compareMessages(self._get_mail(),
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1801 '''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
1802 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
1803 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
1804 Subject: [issue1] new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1805 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
1806 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
1807 Reply-To: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1808 <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
1809 MIME-Version: 1.0
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1810 Message-Id: <followup_dummy_id>
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1811 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
1812 X-Roundup-Name: Roundup issue tracker
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1813 X-Roundup-Loop: hello
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1814 X-Roundup-Issue-Status: chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1815 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1816 X-Roundup-Issue-Id: 1
4405
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1817
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1818 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
1819
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1820 This is a followup
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1821
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1822 ----------
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1823 assignedto: -> mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1824 nosy: +john, mary
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1825 status: unread -> chatting
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1826 title: Testing... -> new title
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1827
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1828 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1829 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
1830 <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
1831 _______________________________________________________________________
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1832 ''')
863ec554525c new mailgw config option subject_updates_title...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4373
diff changeset
1833
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1834 def testNosyGeneration(self):
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1835 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
1836 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
1837
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1838 # create a nosy message
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1839 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
1840 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
1841 self.db.journaltag = 'richard'
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1842 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
1843 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
1844
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1845
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1846 # check that message has right tx_Source
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1847 self.assertEqual(self.db.msg.get('1', 'tx_Source'), 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1848
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1849 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
1850 '''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
1851 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
1852 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
1853 Subject: [issue2] test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1854 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
1855 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
1856 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
1857 <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
1858 MIME-Version: 1.0
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1859 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
1860 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
1861 X-Roundup-Loop: hello
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1862 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
1863 Content-Transfer-Encoding: quoted-printable
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1864 X-Roundup-Issue-Id: 2
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1865
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1866
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1867 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
1868
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1869 This is a test
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1870
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1871 ----------
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1872 messages: 1
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1873 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
1874 status: unread
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1875 title: test
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
1876 tx_Source: email
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1877
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1878 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1879 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
1880 <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
1881 _______________________________________________________________________
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1882 ''')
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
1883
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1884 def testNosyMessageCcBccEtc(self):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1885 self.doNewIssue()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1886 oldvalues = self.db.getnode('issue', '1').copy()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1887 oldvalues['assignedto'] = None
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1888 # reconstruct old behaviour: This would reuse the
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1889 # database-handle from the doNewIssue above which has committed
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1890 # 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
1891 #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
1892 self.db = self.instance.open('Chef')
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1893 self.db.issue.set('1', assignedto=self.chef_id)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1894 self.db.commit()
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1895 # 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
1896 # 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
1897 # 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
1898 # get it.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1899 self.db.issue.nosymessage('1', None, oldvalues,
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1900 cc=['3','4', '5'], bcc=['1', '3', '5'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1901 cc_emails=['john@example.com'],
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1902 bcc_emails=["kermit@example.com"])
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1903 new_mail = ""
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1904 for line in self._get_mail().split("\n"):
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1905 if "Message-Id: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1906 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1907 if "Date: " in line:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1908 continue
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1909 new_mail += line+"\n"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1910
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1911 # 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
1912 # we need to split the emails and compare.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1913 new_mails=new_mail.split("\nFrom ")
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1914 # restore the "From " prefix removed from first line of
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1915 # second message by strip.
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1916 new_mails[1]="From " + new_mail.split("\nFrom ")[1]
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1917
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1918 self.compareMessages(new_mails[0], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1919 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1920 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
1921 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1922 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1923 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
1924 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
1925 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1926 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1927 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1928 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1929 X-Roundup-Issue-Id: 1
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1930 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1931 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1932 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1933 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1934 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1935
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1936
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1937 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1938
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1939
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1940 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1941 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1942
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1943 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1944 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
1945 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1946 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1947 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1948
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1949 self.compareMessages(new_mails[1], """
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1950 FROM: roundup-admin@your.tracker.email.domain.example
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1951 TO: admin@test.com, kermit@example.com
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1952 Content-Type: text/plain; charset="utf-8"
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1953 Subject: [issue1] Testing...
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1954 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
1955 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
1956 X-Roundup-Name: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1957 X-Roundup-Loop: hello
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1958 X-Roundup-Issue-Status: unread
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1959 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
1960 X-Roundup-Issue-Id: 1
5312
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1961 In-Reply-To: <dummy_test_message_id>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1962 MIME-Version: 1.0
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1963 Reply-To: Roundup issue tracker
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1964 <issue_tracker@your.tracker.email.domain.example>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1965 Content-Transfer-Encoding: quoted-printable
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1966
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1967
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1968 Change by Bork, Chef <chef@bork.bork.bork>:
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1969
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1970
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1971 ----------
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1972 assignedto: -> Chef
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1973
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1974 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1975 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
1976 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1977 _______________________________________________________________________
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1978 """)
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1979
a4fe76fba54a issue2550957: Duplicate emails (with patch).
John Rouillard <rouilj@ieee.org>
parents: 5305
diff changeset
1980
5675
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1981 def testNosyMessageNoteFilter(self):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1982 def note_filter(original_note, issue_id, db, newvalues, oldvalues):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1983 return 'This content came from note_filter().'
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1984 self.doNewIssue()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1985 oldvalues = self.db.getnode('issue', '1').copy()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1986 oldvalues['assignedto'] = None
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1987 # reconstruct old behaviour: This would reuse the
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1988 # database-handle from the doNewIssue above which has committed
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1989 # as user "Chef". So we close and reopen the db as that user.
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1990 #self.db.close() actually don't close 'cos this empties memorydb
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1991 self.db = self.instance.open('Chef')
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1992 self.db.issue.set('1', assignedto=self.chef_id)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1993 self.db.commit()
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1994 self.db.issue.nosymessage('1', None, oldvalues,
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1995 cc=['3','4', '5'],
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1996 cc_emails=['john@example.com'],
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1997 note_filter=note_filter)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1998 new_mail = ""
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
1999 # Message-Id: and Date: change every time - remove them.
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2000 for line in self._get_mail().split("\n"):
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2001 if "Message-Id: " in line:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2002 continue
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2003 if "Date: " in line:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2004 continue
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2005 new_mail += line+"\n"
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2006
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2007 self.compareMessages(new_mail, """
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2008 FROM: roundup-admin@your.tracker.email.domain.example
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2009 TO: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2010 Content-Type: text/plain; charset="utf-8"
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2011 Subject: [issue1] Testing...
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2012 To: chef@bork.bork.bork, fred@example.com, john@example.com, richard@test.test
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2013 From: "Bork, Chef" <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2014 X-Roundup-Name: Roundup issue tracker
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2015 X-Roundup-Loop: hello
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2016 X-Roundup-Issue-Status: unread
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2017 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2018 X-Roundup-Issue-Id: 1
5675
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2019 In-Reply-To: <dummy_test_message_id>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2020 MIME-Version: 1.0
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2021 Reply-To: Roundup issue tracker
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2022 <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2023 Content-Transfer-Encoding: quoted-printable
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2024
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2025
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2026 Change by Bork, Chef <chef@bork.bork.bork>:
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2027
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2028 This content came from note_filter().
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2029
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2030 _______________________________________________________________________
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2031 Roundup issue tracker <issue_tracker@your.tracker.email.domain.example>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2032 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2033 _______________________________________________________________________
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2034 """)
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2035
f3d68c1bb96e issue2551018 add new nosy_filter parameter to nosymessage. Function
John Rouillard <rouilj@ieee.org>
parents: 5649
diff changeset
2036
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2037 def testPropertyChangeOnly(self):
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2038 self.doNewIssue()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2039 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
2040 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
2041 # 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
2042 # 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
2043 # 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
2044 #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
2045 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
2046 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
2047 self.db.commit()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2048 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
2049
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2050 new_mail = ""
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2051 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
2052 if "Message-Id: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2053 continue
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2054 if "Date: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2055 continue
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
2056 new_mail += line+"\n"
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2057
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2058 self.compareMessages(new_mail, """
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2059 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
2060 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
2061 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
2062 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2063 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
2064 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
2065 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
2066 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2067 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
2068 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2069 X-Roundup-Issue-Id: 1
4358
887a153cedec The email for the first message on an issue...
Richard Jones <richard@users.sourceforge.net>
parents: 4350
diff changeset
2070 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
2071 MIME-Version: 1.0
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2072 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2073 <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
2074 Content-Transfer-Encoding: quoted-printable
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2075
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2076
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2077 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
2078
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2079
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2080 ----------
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2081 assignedto: -> Chef
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2082
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2083 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2084 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
2085 <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
2086 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
2087 """)
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
2088
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2089
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
2090 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
2091 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
2092 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
2093 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
2094 # 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
2095 # 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
2096 # 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
2097 #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
2098 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
2099 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
2100 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
2101 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
2102
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
2103 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
2104 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
2105 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
2106 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
2107 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
2108 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
2109 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
2110
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
2111 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
2112 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
2113 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
2114 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
2115 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
2116 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
2117 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
2118 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
2119 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
2120 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
2121 X-Roundup-Version: 1.3.3
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2122 X-Roundup-Issue-Id: 1
5081
786f0581bc90 issue2109308 add subject argument to nosymessage. Initial patch Frank Niessink. Test and application with slight mods by rouilj
John Rouillard <rouilj@ieee.org>
parents: 5069
diff changeset
2123 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
2124 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
2125 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
2126 <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
2127 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
2128
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
2129
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
2130 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
2131
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
2132
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
2133 ----------
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
2134 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
2135
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
2136 _______________________________________________________________________
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
2137 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
2138 <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
2139 _______________________________________________________________________
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
2140 """)
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
2141
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2142 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2143 # FOLLOWUP TITLE MATCH
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2144 #
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
2145 def testFollowupTitleMatch(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2146 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2147 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
2148 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2149 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
2150 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
2151 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
2152 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
2153
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2154 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2155 ''')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2156
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2157 l = self.db.msg.get('2', 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2158 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
2159
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2160 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
2161 '''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
2162 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
2163 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
2164 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2165 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
2166 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
2167 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2168 <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
2169 MIME-Version: 1.0
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2170 Message-Id: <followup_dummy_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2171 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
2172 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
2173 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2174 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2175 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
2176 Content-Transfer-Encoding: quoted-printable
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2177
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2178
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2179 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
2180
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2181 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2182
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2183 ----------
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2184 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
2185 nosy: +john, mary
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2186 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2187
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2188 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2189 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
2190 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2191 _______________________________________________________________________
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
2192 ''')
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
2193
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2194 def testFollowupTitleMatchMultiRe(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2195 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2196 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
2197 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2198 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2199 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
2200 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2201 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
2202
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2203 This is a followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2204 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2205
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2206 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
2207 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2208 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2209 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
2210 Message-Id: <followup2_dummy_id>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2211 Subject: Ang: Re: Testing...
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2212
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2213 This is a followup
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2214 ''')
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2215 self.assertEqual(nodeid1, nodeid2)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2216 self.assertEqual(nodeid1, nodeid3)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
2217
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2218 def testFollowupTitleMatchNever(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2219 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2220 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
2221 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
2222 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2223 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
2224 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
2225 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2226 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2227
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2228 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2229 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2230
3678
9365dcf5d587 don't supply an In-Reply-To when testing Subject matching
Richard Jones <richard@users.sourceforge.net>
parents: 3579
diff changeset
2231 def testFollowupTitleMatchNeverInterval(self):
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2232 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2233 # force failure of the interval
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2234 time.sleep(2)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2235 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
2236 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
2237 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2238 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
2239 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
2240 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2241 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2242
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2243 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2244 '''), nodeid)
4005
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2245
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2246
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2247 def testFollowupTitleMatchInterval(self):
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
2248 nodeid = self.doNewIssue()
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2249 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
2250 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
2251 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2252 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
2253 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
2254 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2255 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2256
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2257 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2258 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
2259
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2260 simple_followup = '''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2261 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2262 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
2263 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2264 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2265 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2266 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2267
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2268 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
2269 '''
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2270
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2271 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
2272 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
2273 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
2274 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2275 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
2276 '''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
2277 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
2278 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2279 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2280 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2281 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
2282 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2283 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2284 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2285 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2286 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2287 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
2288 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2289 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2290 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2291 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2292
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2293
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2294 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2295
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2296 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2297
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2298 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2299 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2300 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2301
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2302 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2303 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
2304 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2305 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2306
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2307 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2308
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2309 def testFollowupNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2310 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2311 self.db.config.ADD_RECIPIENTS_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2312 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
2313 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2314 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
2315 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
2316 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2317 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2318 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2319 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2320
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2321 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2322 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2323 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
2324 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2325 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2326 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2327 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2328 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2329 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
2330 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2331 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2332 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2333 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2334 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2335 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
2336 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2337 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2338 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2339 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2340
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2341
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2342 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2343
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2344 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2345
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2346 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2347 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2348 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2349
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2350 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2351 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
2352 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2353 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2354
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2355 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2356
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2357 def testFollowupNosyAuthorAndCopy(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2358 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2359 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2360 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
2361 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
2362 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
2363 '''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
2364 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
2365 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
2366 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
2367 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
2368 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
2369 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
2370 <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
2371 MIME-Version: 1.0
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2372 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2373 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
2374 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
2375 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2376 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2377 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
2378 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
2379
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2380
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2381 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2382
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2383 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
2384
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2385 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2386 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
2387 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
2388
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2389 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2390 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
2391 <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
2392 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2393
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2394 ''')
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2395
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2396 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
2397 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
2398 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
2399 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
2400 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2401 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
2402 '''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
2403 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
2404 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2405 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2406 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
2407 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
2408 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2409 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2410 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2411 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2412 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2413 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
2414 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2415 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2416 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2417 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2418
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2419
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2420 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2421
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2422 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2423
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2424 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2425 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2426 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2427
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2428 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2429 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
2430 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2431 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2432
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2433 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2434
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2435 def testFollowupNoNosyAuthor(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2436 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2437 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
2438 self._handle_mail(self.simple_followup)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2439 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
2440 '''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
2441 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
2442 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2443 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2444 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2445 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
2446 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2447 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2448 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2449 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2450 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2451 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
2452 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2453 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2454 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2455 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2456
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2457
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2458 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2459
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2460 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2461
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2462 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2463 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2464
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2465 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2466 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
2467 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2468 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2469
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2470 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2471
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2472 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
2473 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
2474 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
2475 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
2476 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
2477 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
2478 '''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
2479 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
2480 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
2481 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
2482 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
2483 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
2484 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
2485 <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
2486 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
2487 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
2488 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
2489 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
2490 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2491 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2492 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
2493 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
2494
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2495
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2496 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
2497
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2498 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
2499
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2500 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2501 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
2502
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2503 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2504 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
2505 <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
2506 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2507
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2508 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2509
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2510 # 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
2511 # 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
2512 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
2513 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
2514 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
2515 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
2516 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
2517 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
2518 '''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
2519 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
2520 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
2521 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
2522 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
2523 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
2524 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
2525 <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
2526 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
2527 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
2528 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
2529 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
2530 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2531 X-Roundup-Issue-Id: 1
4547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2532 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
2533 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
2534
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2535
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2536 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
2537
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2538 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
2539
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2540 ----------
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2541 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
2542
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2543 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2544 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
2545 <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
2546 _______________________________________________________________________
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2547
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2548 ''')
d9d7319afffa Add config-option "nosy" to messages_to_author setting in [nosy] section...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4542
diff changeset
2549
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2550 def testFollowupNoNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2551 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
2552 self.instance.config.ADD_RECIPIENTS_TO_NOSY = 'no'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2553 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2554 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2555 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
2556 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
2557 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2558 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2559 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2560 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2561
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2562 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2563 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2564 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
2565 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2566 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
2567 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2568 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2569 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2570 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
2571 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
2572 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2573 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2574 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2575 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2576 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
2577 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2578 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
2579 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2580 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2581
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2582
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2583 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2584
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2585 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2586
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2587 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2588 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
2589
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2590 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2591 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
2592 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
2593 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2594
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2595 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
2596
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2597 def testFollowupEmptyMessage(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2598 self.doNewIssue()
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2599
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2600 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
2601 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2602 From: richard <richard@test.test>
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2603 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
2604 Message-Id: <followup_dummy_id>
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2605 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
2606 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
2607
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2608 ''')
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2609 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
2610 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2611 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
2612 self.john_id])
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2613
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
2614 # should be no file created (ie. no message)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2615 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
2616
3579
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2617 def testFollowupEmptyMessageNoSubject(self):
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2618 self.doNewIssue()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2619
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2620 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
2621 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2622 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
2623 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
2624 Message-Id: <followup_dummy_id>
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2625 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
2626 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
2627
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2628 ''')
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2629 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
2630 l.sort()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2631 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
2632 self.john_id])
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2633
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
2634 # 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
2635 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
2636
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2637 def testNosyRemove(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2638 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2639
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2640 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2641 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2642 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2643 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2644 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2645 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2646 Subject: [issue1] Testing... [nosy=-richard]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2647
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2648 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2649 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2650 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
2651 self.assertEqual(l, [self.chef_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2652
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2653 # NO NOSY MESSAGE SHOULD BE SENT!
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
2654 assert not os.path.exists(SENDMAILDEBUG)
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
2655
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2656 def testNosyReplytoTracker(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2657 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
2658 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
2659 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2660 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
2661 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
2662 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
2663 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
2664
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2665 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
2666 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2667 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
2668 '''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
2669 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
2670 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
2671 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2672 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
2673 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
2674 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
2675 <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
2676 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2677 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
2678 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
2679 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2680 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2681 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
2682 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
2683
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2684
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2685 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
2686
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2687 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
2688
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2689 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2690 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2691 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2692 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2693 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2694 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2695 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2696
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2697 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2698 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
2699 <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
2700 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2701 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2702
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2703 def testNosyReplytoSomeaddress(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2704 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
2705 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
2706 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2707 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
2708 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
2709 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
2710 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
2711
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2712 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
2713 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2714 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
2715 '''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
2716 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
2717 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
2718 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2719 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
2720 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
2721 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
2722 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2723 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
2724 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
2725 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2726 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2727 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
2728 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
2729
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2730
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2731 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
2732
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2733 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
2734
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2735 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2736 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2737 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2738 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2739 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2740 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2741 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2742
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2743 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2744 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
2745 <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
2746 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2747 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2748
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2749 def testNosyReplytoAuthor(self):
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2750 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
2751 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
2752 charset="iso-8859-1"
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2753 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
2754 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
2755 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
2756 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
2757
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2758 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
2759 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2760 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
2761 '''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
2762 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
2763 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
2764 Subject: [issue1] Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2765 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
2766 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
2767 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
2768 MIME-Version: 1.0
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2769 Message-Id: <dummy_test_message_id>
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2770 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
2771 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
2772 X-Roundup-Issue-Id: 1
5098
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2773 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
2774 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
2775
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2776
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2777 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
2778
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2779 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
2780
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2781 ----------
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2782 assignedto: richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2783 messages: 1
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2784 nosy: Chef, mary, richard
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2785 status: unread
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2786 title: Testing...
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2787 tx_Source: email
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2788
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2789 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2790 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
2791 <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
2792 _______________________________________________________________________
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2793 ''')
99e289359798 issue2550803: Replying to NOSY mail goes to the tracker through
John Rouillard <rouilj@ieee.org>
parents: 5081
diff changeset
2794
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
2795 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
2796 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
2797 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
2798 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
2799 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
2800 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
2801 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
2802 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
2803 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
2804 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
2805
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
2806 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
2807 '''
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2808 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
2809 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
2810 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
2811 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2812 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
2813 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2814 body_diff = self.assertEqual(str(value), """
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2815 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
2816
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2817 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
2818 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2819 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
2820 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2821 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
2822
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2823 # 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
2824 # 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
2825 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2826 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
2827 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
2828 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2829 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
2830 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2831 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
2832 except Unauthorized as value:
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
2833 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
2834 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
2835
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
2836 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
2837
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2838 ...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
2839
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2840 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
2841 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2842 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
2843 else:
5378
35ea9b1efc14 Python 3 preparation: "raise" syntax.
Joseph Myers <jsm@polyomino.org.uk>
parents: 5312
diff changeset
2844 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
2845
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
2846 # 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
2847 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
2848 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
2849 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
2850
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2851 # now with the permission
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2852 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2853 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
2854 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
2855 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
2856 self.db.security.role['anonymous'].permissions=p
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2857 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
2858 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
2859 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
2860 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
2861
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2862 def testNewUserAuthorEncodedName(self):
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2863 l = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2864 # 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
2865 message = '''Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2866 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2867 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
2868 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
2869 Message-Id: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2870 Subject: [issue] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2871
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2872 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
2873 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2874 self._allowAnonymousSubmit()
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2875 self._handle_mail(message)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2876 m = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2877 new = list(m - l)[0]
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2878 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2879 self.assertEqual(name, 'H€llo')
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
2880
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2881 def testNewUserAuthorMixedEncodedName(self):
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2882 l = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2883 # 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
2884 message = '''Content-Type: text/plain;
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2885 charset="iso-8859-1"
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2886 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
2887 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
2888 Message-Id: <dummy_test_message_id>
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2889 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
2890 X1
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2891 X2
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2892
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2893 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
2894 '''
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2895 self._allowAnonymousSubmit()
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2896 self._handle_mail(message)
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2897 title = self.db.issue.get('1', 'title')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2898 self.assertEqual(title, b2s(b'Test \xc3\x84\xc3\x96\xc3\x9c umlauts X1 X2'))
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2899 m = set(self.db.user.list())
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2900 new = list(m - l)[0]
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2901 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2902 self.assertEqual(name, b2s(b'Firstname \xc3\xa4\xc3\xb6\xc3\x9f Last'))
4505
a00e0e73bb26 Yet another fix to the mail gateway...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4503
diff changeset
2903
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2904 def testNewUserAuthorMixedEncodedNameSpacing(self):
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2905 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
2906 # 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
2907 message = '''Content-Type: text/plain;
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2908 charset="iso-8859-1"
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2909 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
2910 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
2911 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
2912 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
2913 X1
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2914
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2915 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
2916 '''
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2917 self._allowAnonymousSubmit()
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2918 self._handle_mail(message)
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2919 title = self.db.issue.get('1', 'title')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2920 self.assertEqual(title, b2s(b'Test (\xc3\x84\xc3\x96\xc3\x9c) umlauts X1'))
4575
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2921 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
2922 new = list(m - l)[0]
c426cb251bc7 Be more tolerant when parsing RFC2047 encoded mail headers.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4570
diff changeset
2923 name = self.db.user.get(new, 'realname')
5794
95a366d46065 Replace deprecated assertEquals with assertEqual and failUnlessRaises
John Rouillard <rouilj@ieee.org>
parents: 5750
diff changeset
2924 self.assertEqual(name,
5493
725266c03eab updated mailgw to no longer use mimetools based on jerrykan's patch
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5476
diff changeset
2925 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
2926
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2927 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
2928 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
2929 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
2930 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
2931 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
2932 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
2933 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
2934 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
2935
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2936 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
2937 '''
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
2938 # 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
2939 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
2940 self.compareMessages(self._get_mail(),
4974
65a76a7f3e01 issue2550877 partly fixed.
Bernhard Reiter <bernhard@intevation.de>
parents: 4970
diff changeset
2941 '''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
2942 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
2943 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
2944 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
2945 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
2946 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
2947 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
2948 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
2949 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
2950 Precedence: bulk
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2951 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
2952 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
2953 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
2954
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2955 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2956 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
2957 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
2958 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
2959
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2960
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2961
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2962 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
2963
4580
782737d1a2d7 issue2431638 wrong registration link in bounce mail.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4579
diff changeset
2964 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
2965
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
2966 ...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
2967
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2968 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
2969
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2970 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2971 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
2972 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
2973 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
2974
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2975 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
2976 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
2977 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
2978 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
2979 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
2980 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
2981
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2982 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
2983
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2984 --===============0639262320==--
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2985 ''')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
2986
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
2987 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
2988 self.db.user.set(self.mary_id,
5476
b0048969990d encoding fixes in test cases
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5418
diff changeset
2989 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
2990 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
2991 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
2992 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
2993 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
2994 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
2995 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2996 In-Reply-To: <dummy_test_message_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2997 Subject: [issue1] Testing...
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2998 Content-Type: text/plain;
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
2999 charset="iso-8859-1"
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3000 Content-Transfer-Encoding: quoted-printable
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3001
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3002 A message with encoding (encoded oe =F6)
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3003
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3004 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3005 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
3006 '''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
3007 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
3008 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
3009 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3010 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
3011 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
3012 <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
3013 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3014 <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
3015 MIME-Version: 1.0
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3016 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3017 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
3018 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
3019 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3020 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3021 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
3022 Content-Transfer-Encoding: quoted-printable
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3023
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3024
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
3025 =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
3026 comment:
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3027
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
3028 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
3029
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3030 ----------
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3031 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3032
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3033 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3034 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
3035 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3036 _______________________________________________________________________
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
3037 ''')
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3038
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3039 def testEncNonUTF8(self):
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3040 self.doNewIssue()
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3041 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
3042 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
3043 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3044 From: mary <mary@test.test>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3045 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
3046 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3047 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
3048 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3049 Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3050 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3051 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3052
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3053 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
3054
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3055 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3056 self.compareMessages(self._get_mail(),
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3057 '''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
3058 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
3059 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
3060 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3061 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
3062 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
3063 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3064 <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
3065 MIME-Version: 1.0
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3066 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3067 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
3068 X-Roundup-Name: Roundup issue tracker
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3069 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3070 X-Roundup-Issue-Id: 1
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3071 X-Roundup-Issue-Status: chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3072 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3073
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3074
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3075 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
3076
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3077 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
3078
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3079 ----------
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3080 status: unread -> chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3081
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3082 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3083 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
3084 <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
3085 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3086 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
3087
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
3088
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
3089 def testMultipartEnc01(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
3090 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
3091 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
3092 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
3093 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
3094 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
3095 Subject: [issue1] Testing...
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3096 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
3097 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
3098
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3099 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
3100 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
3101
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3102 ------_=_NextPart_000_01
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3103 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
3104 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
3105 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
3106
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3107 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
3108
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3109 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3110 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
3111 '''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
3112 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
3113 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
3114 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3115 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3116 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
3117 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3118 <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
3119 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
3120 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
3121 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
3122 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
3123 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3124 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3125 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
3126 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
3127
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3128
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3129 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
3130
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
3131 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
3132
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3133 ----------
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3134 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3135
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3136 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3137 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
3138 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3139 _______________________________________________________________________
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
3140 ''')
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
3141
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
3142 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
3143 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
3144 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
3145 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
3146 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
3147 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
3148 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
3149 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
3150 Content-Disposition: inline
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3151
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3152
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3153 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3154 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
3155 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
3156
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3157 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
3158
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3159 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3160 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
3161 Content-Disposition: attachment; filename="main.dvi"
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3162 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
3163
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3164 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
3165
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3166 --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
3167 ''')
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
3168 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
3169 messages.sort()
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
3170 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
3171 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
3172 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
3173
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3174 def testFollowupStupidQuoting(self):
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3175 self.doNewIssue()
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3176
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3177 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
3178 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3179 From: richard <richard@test.test>
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3180 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
3181 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3182 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
3183 Subject: Re: "[issue1] Testing... "
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3184
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3185 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3186 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
3187 self.compareMessages(self._get_mail(),
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3188 '''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
3189 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
3190 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
3191 Subject: [issue1] Testing...
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3192 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3193 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
3194 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
3195 <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
3196 MIME-Version: 1.0
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3197 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3198 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
3199 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
3200 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
3201 X-Roundup-Issue-Id: 1
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
3202 X-Roundup-Issue-Status: chatting
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3203 Content-Transfer-Encoding: quoted-printable
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3204
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3205
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3206 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
3207
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3208 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3209
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3210 ----------
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3211 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
3212
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3213 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3214 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
3215 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
3216 _______________________________________________________________________
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3217 ''')
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
3218
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3219 firstquotingtest = '''Content-Type: text/plain;
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3220 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3221 From: richard <richard@test.test>
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3222 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
3223 Message-Id: <followup_dummy_id>
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3224 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
3225 Subject: Re: [issue1] Testing...
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3226
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3227 Blah blah wrote:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3228 > 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
3229 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3230 >
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3231
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3232 This is a followup
4579
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
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3235 def testEmailQuoting(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3236 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
3237 # 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
3238 # 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
3239 # so nuke all trailing newlines.
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3240 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
3241
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3242 def testEmailQuotingNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3243 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
3244 # 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
3245 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
3246 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
3247
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3248 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
3249 # 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
3250 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
3251 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
3252 > 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
3253 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3254 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3255
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3256 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
3257
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3258 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
3259 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
3260
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3261 def testEmailQuotingNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3262 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
3263 # 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
3264 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3265 # 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
3266 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
3267 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
3268 # 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
3269 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
3270 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
3271 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
3272 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
3273
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
3274 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
3275 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
3276 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
3277 # 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
3278 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
3279 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
3280
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
3281 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
3282 # 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
3283 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
3284 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
3285 > 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
3286 > 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
3287 >
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
3288
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
3289 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
3290 # 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
3291 # 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
3292 # 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
3293
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
3294 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
3295 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
3296
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
3297 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
3298 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
3299 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
3300
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
3301 # 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
3302 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
3303 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
3304 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
3305 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
3306 # 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
3307 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
3308 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
3309 > 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
3310 > 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
3311 >
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
3312
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
3313 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
3314 # 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
3315 # 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
3316 # 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
3317
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
3318 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
3319 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
3320
5117
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3321 def testEmailReplaceBodyNewIsNew(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3322 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
3323 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
3324 # 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
3325 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
3326 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
3327
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3328 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
3329 # 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
3330 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
3331 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
3332 > 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
3333 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3334 >
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3335
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3336 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
3337 # 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
3338 # 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
3339 # msg or something.
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3340
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3341 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
3342 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
3343
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3344 def testEmailReplaceBodyNewIsFollowup(self):
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3345 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
3346 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
3347 # 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
3348 self.doNewIssue()
14abd0a67207 Fix issue934009: Have New Issues Submitted By Email *Not* Change Body!
John Rouillard <rouilj@ieee.org>
parents: 5109
diff changeset
3349 # 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
3350 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
3351 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
3352 # 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
3353 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
3354 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
3355 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
3356 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
3357
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3358 def testEmailQuotingRemove(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3359 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
3360 # 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
3361 # 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
3362 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3363 self.innerTestQuoting(self.firstquotingtest, '''Blah blah wrote:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3364 > 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
3365 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3366 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3367
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3368 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
3369
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3370 secondquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3371 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3372 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3373 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
3374 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3375 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3376 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3377
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3378 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
3379 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3380 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3381
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3382 AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3383
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3384 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3385
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3386 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3387
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3388 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3389
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3390 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3391 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3392 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3393 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3394
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3395 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3396 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3397 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3398 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3399
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3400 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3401 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3402 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3403 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3404 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3405 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3406 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3407 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3408 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3409 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3410 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3411 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3412
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3413 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3414 added signature
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3415 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3416 def testEmailQuoting2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3417 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
3418 # 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
3419 # 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
3420 # so nuke all trailing newlines.
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3421 self.innerTestQuoting(self.secondquotingtest, '''AA:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3422
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3423 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3424
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3425 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3426
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3427 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3428
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3429 TEXT BEFORE QUOTE
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3430
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3431 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3432 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3433 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3434 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3435
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3436 CC''', 'AA:')
4579
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3437
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3438 def testEmailQuotingRemove2(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3439 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
3440 # 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
3441 # 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
3442 # 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
3443 # [:-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
3444 self.innerTestQuoting(self.secondquotingtest,
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3445 '\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
3446
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3447 thirdquotingtest = '''Content-Type: text/plain;
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3448 charset="iso-8859-1"
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3449 From: richard <richard@test.test>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3450 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
3451 Message-Id: <followup_dummy_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3452 In-Reply-To: <dummy_test_message_id>
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3453 Subject: Re: [issue1] Testing...
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3454
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3455 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
3456 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3457 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3458 >
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3459 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3460 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3461 > aa
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3462 AA0
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3463 AA
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3464
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3465 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3466 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3467 > bb
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3468 BB
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3469
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3470 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3471 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3472 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3473 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3474 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3475 > cc
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3476
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3477 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3478 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3479 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3480
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3481 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3482 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3483
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3484 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3485 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3486 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3487 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3488
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3489 CC
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3490
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3491 NAME
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3492 --
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3493 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3494 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3495 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3496 sig
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3497 '''
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3498
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3499 # 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
3500 # 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
3501 @expectedFailure
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3502 def testEmailQuotingRemove3(self):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3503 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
3504 self.innerTestQuoting(self.thirdquotingtest,
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3505 '\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
3506
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3507 def innerTestQuoting(self, msgtext, expect, summary=None):
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3508 nodeid = self.doNewIssue()
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3509
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3510 messages = self.db.issue.get(nodeid, 'messages')
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3511
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3512 self._handle_mail(msgtext)
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3513 # figure the new message id
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3514 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
3515 for msg in messages:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3516 newmessages.remove(msg)
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3517 messageid = newmessages[0]
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
3518
5123
226052e0cc4c Fixed incorrect header comparisons in compareMessages. It iterated
John Rouillard <rouilj@ieee.org>
parents: 5117
diff changeset
3519 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
3520 if summary:
ba4c632143f6 issue2550535 Fix keep_quoted_text=yes setting.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 4575
diff changeset
3521 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
3522
1549
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3523 def testUserLookup(self):
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
3524 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
3525 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
3526 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
3527 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
3528 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
3529 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
3530
1810
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
3531 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
3532 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
3533 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
3534 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
3535 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
3536
4531
ddff9669361b Fix matching of incoming email addresses to the alternate_addresses field...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4505
diff changeset
3537 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
3538 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
3539 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
3540 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
3541 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
3542
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3543 def testUserCreate(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
3544 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
3545 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
3546
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3547 def testRegistrationConfirmation(self):
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3548 otk = "Aj4euk4LZSAdwePohj90SME5SpopLETL"
2089
93f03c6714d8 A few big changes in this commit:
Richard Jones <richard@users.sourceforge.net>
parents: 1984
diff changeset
3549 self.db.getOTKManager().set(otk, username='johannes')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3550 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
3551 charset="iso-8859-1"
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3552 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
3553 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
3554 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
3555 Message-Id: <dummy_test_message_id>
2709
6b5c77c03231 testRegistrationConfirmation: remove CR...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2705
diff changeset
3556 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
3557 -- key %s
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3558
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3559 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
3560 ''' % otk)
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
3561 self.db.user.lookup('johannes')
1859
492a962b6d6f Make signature matching more precise: only match '-- '...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1811
diff changeset
3562
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3563 def testFollowupOnNonIssue(self):
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3564 self.db.keyword.create(name='Foo')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3565 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
3566 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3567 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
3568 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
3569 Message-Id: <followup_dummy_id>
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3570 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
3571 Subject: [keyword1] Testing... [name=Bar]
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3572
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
3573 ''')
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
3574 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3575
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3576 def testResentFrom(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3577 nodeid = self._handle_mail('''Content-Type: text/plain;
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3578 charset="iso-8859-1"
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3579 From: Chef <chef@bork.bork.bork>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3580 Resent-From: mary <mary@test.test>
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3581 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
3582 Cc: richard@test.test
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3583 Message-Id: <dummy_test_message_id>
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3584 Subject: [issue] Testing...
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3585
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3586 This is a test submission of a new issue.
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3587 ''')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3588 assert not os.path.exists(SENDMAILDEBUG)
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3589 l = self.db.issue.get(nodeid, 'nosy')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3590 l.sort()
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3591 self.assertEqual(l, [self.richard_id, self.mary_id])
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
3592 return nodeid
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3593
5045
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3594 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
3595 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
3596 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
3597 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
3598 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
3599 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
3600 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
3601 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
3602 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
3603 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
3604
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3605 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
3606 ''')
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3607 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
3608 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
3609 l.sort()
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3610 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
3611 return nodeid
a46d5d0fd5f8 Fix issue1615201: Added a new configuration option EMAIL_KEEP_REAL_FROM
Peter Funk <pf@artcom-gmbh.de>
parents: 5038
diff changeset
3612
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3613 def testDejaVu(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3614 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
3615 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3616 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3617 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
3618 X-Roundup-Loop: hello
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3619 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
3620 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
3621 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
3622 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3623
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3624 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
3625 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3626
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3627 def testItsBulkStupid(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
3628 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
3629 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3630 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3631 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
3632 Precedence: bulk
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3633 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
3634 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
3635 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
3636 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3637
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3638 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
3639 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
3640
6247
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3641 def testItsAutoSubmittedStupid(self):
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3642 self.assertRaises(IgnoreBulk, self._handle_mail,
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3643 '''Content-Type: text/plain;
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3644 charset="iso-8859-1"
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3645 From: Chef <chef@bork.bork.bork>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3646 Auto-Submitted: Auto-Generated
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3647 To: issue_tracker@your.tracker.email.domain.example
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3648 Cc: richard@test.test
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3649 Message-Id: <dummy_test_message_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3650 Subject: Re: [issue] Testing...
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3651
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3652 Hi, I'm on holidays, and this is a dumb auto-responder.
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3653 ''')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3654
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3655 def testItsHumanSubmitted(self):
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3656 ''' keep trailing spaces on Auto-submitted header
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3657 '''
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3658 self.db.keyword.create(name='Foo')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3659 self._handle_mail('''Content-Type: text/plain;
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3660 charset="iso-8859-1"
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3661 From: richard <richard@test.test>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3662 To: issue_tracker@your.tracker.email.domain.example
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3663 Message-Id: <followup_dummy_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3664 In-Reply-To: <dummy_test_message_id>
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3665 Auto-submitted: No
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3666 Subject: [keyword1] Testing... [name=Bar]
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3667
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3668 ''')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3669 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3670
ca0915457761 Handle auto-submitted header on inbound email like bulk.
John Rouillard <rouilj@ieee.org>
parents: 5849
diff changeset
3671
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3672 def testAutoReplyEmailsAreIgnored(self):
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3673 self.assertRaises(IgnoreBulk, self._handle_mail,
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3674 '''Content-Type: text/plain;
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3675 charset="iso-8859-1"
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3676 From: Chef <chef@bork.bork.bork>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3677 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
3678 Cc: richard@test.test
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3679 Message-Id: <dummy_test_message_id>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3680 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
3681
3810
4536c0e544be Bah! The python-mode in my emacs is borked by this line,,,
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3809
diff changeset
3682 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
3683 ''')
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
3684
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3685 def testNoSubject(self):
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3686 self.assertRaises(MailUsageError, self._handle_mail,
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3687 '''Content-Type: text/plain;
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3688 charset="iso-8859-1"
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3689 From: Chef <chef@bork.bork.bork>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3690 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
3691 Cc: richard@test.test
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3692 Reply-To: chef@bork.bork.bork
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3693 Message-Id: <dummy_test_message_id>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3694
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3695 ''')
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
3696
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3697 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3698 # TEST FOR INVALID DESIGNATOR HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3699 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3700 def testInvalidDesignator(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3701 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
3702 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3703 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3704 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
3705 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
3706 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3707 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3708 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
3709 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
3710
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3711 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3712 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
3713 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3714 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3715 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
3716 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
3717 Subject: [issue12345] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3718 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3719 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
3720 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
3721
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3722 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3723
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3724 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3725 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
3726 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
3727 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3728 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
3729 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
3730 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3731 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3732 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
3733 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
3734
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3735 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3736 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
3737 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
3738 '[frobulated] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3739
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3740 def testInvalidClassLooseReply(self):
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3741 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3742 nodeid = self._handle_mail('''Content-Type: text/plain;
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3743 charset="iso-8859-1"
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3744 From: Chef <chef@bork.bork.bork>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3745 To: issue_tracker@your.tracker.email.domain.example
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3746 Subject: Re: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3747 Cc: richard@test.test
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3748 Reply-To: chef@bork.bork.bork
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3749 Message-Id: <dummy_test_message_id>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3750
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3751 ''')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3752 assert not os.path.exists(SENDMAILDEBUG)
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3753 self.assertEqual(self.db.issue.get(nodeid, 'title'),
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3754 '[frobulated] testing')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
3755
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3756 def testInvalidClassLooseReplyQuoted(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3757 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3758 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3759 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3760 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3761 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3762 Subject: Re: "[frobulated] testing"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3763 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3764 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3765 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3766
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3767 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
3768 e.g. Re: "[issue1] bla bla"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3769 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3770 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3771 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3772 '[frobulated] testing')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3773
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3774 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3775 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
3776 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
3777 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3778 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
3779 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
3780 Subject: [issue1234] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3781 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3782 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
3783 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
3784
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3785 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3786 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
3787 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
3788 '[issue1234] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3789
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3790 def testClassLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3791 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
3792 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
3793 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
3794 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3795 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
3796 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
3797 Subject: [keyword1] Testing... [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3798 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3799 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
3800 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
3801
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3802 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3803 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
3804 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
3805
5151
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3806 def testDoublePrefixLoose(self):
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3807 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3808 self.instance.config.MAILGW_SUBJECT_SUFFIX_PARSING = 'loose'
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3809 nodeid = self._handle_mail('''Content-Type: text/plain;
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3810 charset="iso-8859-1"
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3811 From: Chef <chef@bork.bork.bork>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3812 To: issue_tracker@your.tracker.email.domain.example
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3813 Subject: [frobulated] [frobulatedagain] testing stuff after double prefix
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3814 Cc: richard@test.test
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3815 Reply-To: chef@bork.bork.bork
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3816 Message-Id: <dummy_test_message_id>
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3817
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3818 ''')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3819 assert not os.path.exists(SENDMAILDEBUG)
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3820 self.assertEqual(self.db.issue.get(nodeid, 'title'),
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3821 '[frobulated] [frobulatedagain] testing stuff after double prefix')
6bbb6dd97458 Fix subject parsing in mail gateway.
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5150
diff changeset
3822
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3823 def testClassStrictInvalid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3824 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
3825 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3826
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3827 message = '''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3828 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3829 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3830 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
3831 Subject: Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3832 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3833 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3834 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3835
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3836 '''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3837 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
3838
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3839 def testClassStrictValid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3840 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
3841 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3842
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3843 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
3844 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3845 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3846 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
3847 Subject: [issue] Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3848 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3849 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3850 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3851
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3852 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3853
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3854 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
3855 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
3856
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3857 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3858 # TEST FOR INVALID COMMANDS HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3859 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3860 def testInvalidCommands(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3861 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
3862 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3863 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3864 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
3865 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
3866 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3867 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3868 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
3869 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
3870
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3871 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3872
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3873 def testInvalidCommandPassthrough(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3874 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
3875 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
3876 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3877 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
3878 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
3879 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3880 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3881 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
3882 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
3883
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3884 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3885 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
3886 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
3887 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3888
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3889 def testInvalidCommandPassthroughLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3890 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
3891 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
3892 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3893 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
3894 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
3895 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3896 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3897 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
3898 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
3899
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3900 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3901 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
3902 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
3903 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3904
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3905 def testInvalidCommandPassthroughLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3906 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
3907 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
3908 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3909 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
3910 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
3911 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3912 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3913 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
3914 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
3915
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3916 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3917 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
3918 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
3919 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
3920
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3921 def testCommandDelimiters(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3922 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
3923 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
3924 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3925 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
3926 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
3927 Subject: testing {assignedto=mary}
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3928 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3929 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
3930 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
3931
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3932 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3933 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
3934 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
3935 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
3936
3724
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3937 def testPrefixDelimiters(self):
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3938 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
3939 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
3940 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
3941 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3942 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
3943 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
3944 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
3945 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
3946 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
3947
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3948 ''')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
3949 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
3950 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
3951
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3952 def testCommandDelimitersIgnore(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3953 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
3954 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
3955 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3956 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
3957 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
3958 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
3959 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3960 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
3961 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
3962
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3963 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3964 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
3965 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
3966 'testing [assignedto=mary]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
3967 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
3968
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
3969 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
3970 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
3971 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
3972 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
3973 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
3974 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
3975 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
3976 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
3977 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
3978 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
3979
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
3980 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
3981 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3982
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3983 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
3984 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
3985 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
3986 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
3987 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
3988 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
3989 Subject: Testing...
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3990
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3991 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
3992 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
3993
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
3994 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
3995 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
3996
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3997 def testHelpSubject(self):
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3998 message = '''Content-Type: text/plain;
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
3999 charset="iso-8859-1"
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4000 From: Chef <chef@bork.bork.bork>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4001 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
4002 Message-Id: <dummy_test_message_id2>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4003 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
4004 Subject: hElp
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4005
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4006
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4007 '''
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
4008 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
4009
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4010 def testMaillistSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4011 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
4012 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
4013 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
4014 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4015 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4016 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
4017 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
4018 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4019 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4020 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4021
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4022 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4023
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4024 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4025 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
4026
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4027 def testUnknownPrefixSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4028 self.db.keyword.create(name='Foo')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4029 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
4030 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4031 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4032 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
4033 Subject: VeryStrangeRe: [keyword1] Testing.. [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4034 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4035 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4036 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4037
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4038 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4039
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4040 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4041 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
4042
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4043 def testOneCharSubject(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4044 message = '''Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4045 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4046 From: Chef <chef@bork.bork.bork>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4047 To: issue_tracker@your.tracker.email.domain.example
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4048 Subject: b
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4049 Cc: richard@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4050 Reply-To: chef@bork.bork.bork
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4051 Message-Id: <dummy_test_message_id>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4052
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4053 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4054 try:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4055 self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4056 except MailUsageError:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4057 self.fail('MailUsageError raised')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4058
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4059 def testIssueidLast(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4060 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4061 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
4062 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
4063 From: mary <mary@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4064 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
4065 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4066 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
4067 Subject: New title [issue1]
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4068
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4069 This is a second followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4070 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4071
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4072 assert nodeid1 == nodeid2
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
4073 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
4074
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4075 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
4076 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
4077 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
4078 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
4079 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
4080 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
4081 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
4082 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
4083 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
4084 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
4085 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
4086 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
4087 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
4088 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
4089 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
4090
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4091 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
4092 '''%locals())
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4093 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
4094 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
4095 '''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
4096 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
4097 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
4098 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
4099 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
4100 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
4101 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
4102 <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
4103 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
4104 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
4105 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
4106 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
4107 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4108 X-Roundup-Issue-Id: 1
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4109 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
4110 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
4111
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4112
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4113 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
4114
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4115 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
4116
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4117 ----------
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4118 nosy: +mary
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4119 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
4120
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4121 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4122 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
4123 <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
4124 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4125 ''')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
4126
5069
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4127 def testSpacesAroundMultilinkPropertyValue(self):
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4128 self.db.keyword.create(name='Foo')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4129 self.db.keyword.create(name='Bar')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4130 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
4131 nodeid1 = self.doNewIssue()
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4132 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
4133 charset="iso-8859-1"
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4134 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
4135 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
4136 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4137 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
4138 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
4139
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4140 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
4141 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4142 assert os.path.exists(SENDMAILDEBUG)
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4143 self.compareMessages(self._get_mail(),
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4144 '''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
4145 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
4146 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
4147 Subject: [issue1] set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4148 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
4149 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
4150 Reply-To: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4151 <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
4152 MIME-Version: 1.0
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4153 Message-Id: <followup_dummy_id>
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4154 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
4155 X-Roundup-Name: Roundup issue tracker
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4156 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4157 X-Roundup-Issue-Id: 1
5069
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4158 X-Roundup-Issue-Status: chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4159 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
4160 Content-Transfer-Encoding: quoted-printable
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4161
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4162 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
4163
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4164 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
4165
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4166 ----------
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4167 keyword: +Baz This, Foo
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4168 nosy: +mary
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4169 status: unread -> chatting
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4170 title: Testing... -> set keyword
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4171
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4172 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4173 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
4174 <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
4175 _______________________________________________________________________
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4176 ''')
2706b66675bf issue2550763 Strip whitespace from Multilink values after + or -.
John Rouillard <rouilj@ieee.org>
parents: 5045
diff changeset
4177
5150
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4178 def testmsgHeaderPropertyAssignedto(self):
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4179 ''' 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
4180 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
4181 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4182 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
4183 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
4184 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
4185 Subject: [issue1] set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4186 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
4187 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
4188 Reply-To: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4189 <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
4190 MIME-Version: 1.0
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4191 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4192 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
4193 X-Roundup-Name: Roundup issue tracker
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4194 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4195 X-Roundup-Issue-Id: 1
5150
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4196 X-Roundup-Issue-Status: chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4197 X-Roundup-Issue-Assignedto: mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4198 Content-Transfer-Encoding: quoted-printable
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4199
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4200 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
4201
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4202 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
4203
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4204 ----------
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4205 assignedto: -> mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4206 nosy: +mary
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4207 status: unread -> chatting
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4208 title: Testing... -> set assignedto
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4209
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4210 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4211 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
4212 <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
4213 _______________________________________________________________________
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4214 '''
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4215 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
4216
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4217 nodeid1 = self.doNewIssue()
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4218 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
4219 charset="iso-8859-1"
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4220 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
4221 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
4222 Message-Id: <followup_dummy_id>
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4223 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
4224 Subject: [issue1] set assignedto [assignedto=mary]
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4225
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4226 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
4227 ''')
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4228 assert os.path.exists(SENDMAILDEBUG)
0c9eed9c4029 Add test for msg_header_property of assignedto
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5125
diff changeset
4229 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
4230
5124
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4231 def testmsgHeaderPropertyEmptyString(self):
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4232 ''' 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
4233 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
4234 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4235 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
4236 TO: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4237 Content-Type: text/plain; charset="utf-8"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4238 Subject: [issue1] set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4239 To: mary@test.test, richard@test.test
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4240 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
4241 Reply-To: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4242 <issue_tracker@your.tracker.email.domain.example>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4243 MIME-Version: 1.0
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4244 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4245 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4246 X-Roundup-Name: Roundup issue tracker
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4247 X-Roundup-Loop: hello
5750
2c0f89edabe1 issue2551043: Add X-Roundup-issue-id email header.
John Rouillard <rouilj@ieee.org>
parents: 5675
diff changeset
4248 X-Roundup-Issue-Id: 1
5124
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4249 X-Roundup-Issue-Status: chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4250 Content-Transfer-Encoding: quoted-printable
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4251
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4252 Bork, Chef <chef@bork.bork.bork> added the comment:
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4253
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4254 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
4255
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4256 ----------
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4257 keyword: +Baz This, Foo
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4258 nosy: +mary
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4259 status: unread -> chatting
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4260 title: Testing... -> set keyword
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4261
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4262 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4263 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
4264 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4265 _______________________________________________________________________
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4266 '''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4267 self.db.keyword.create(name='Foo')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4268 self.db.keyword.create(name='Bar')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4269 self.db.keyword.create(name='Baz This')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4270
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4271 self.db.issue.properties['keyword'].msg_header_property=''
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4272
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4273 nodeid1 = self.doNewIssue()
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4274 nodeid2 = self._handle_mail('''Content-Type: text/plain;
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4275 charset="iso-8859-1"
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4276 From: "Bork, Chef" <chef@bork.bork.bork>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4277 To: issue_tracker@your.tracker.email.domain.example
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4278 Message-Id: <followup_dummy_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4279 In-Reply-To: <dummy_test_message_id>
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4280 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
4281
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4282 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
4283 ''')
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4284 assert os.path.exists(SENDMAILDEBUG)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4285 self.compareMessages(self._get_mail(), reference_email)
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4286
a927f9549af0 Fix issue2550751: Email Header Issue.
John Rouillard <rouilj@ieee.org>
parents: 5123
diff changeset
4287
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4288 def testOutlookAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4289 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
4290 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4291 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4292 Content-Type: multipart/mixed;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4293 boundary="----_=_NextPart_001_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4294 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
4295 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
4296 Message-ID: <CA37F17219784343816CA6613D2E339205E7D0F9@nrcwstexb1.nrc.ca>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4297 X-MS-Has-Attach: yes
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4298 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4299 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
4300 Thread-Index: AcrKJo/t3pUBBwTpSwWNE3LE67UBDQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4301 From: "Hugh" <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4302 To: <richard@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4303 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
4304
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4305 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
4306
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4307 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4308 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4309 boundary="----_=_NextPart_002_01CACA65.40A51CBC"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4310
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4311
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4312 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4313 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4314 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4315 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4316
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4317
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4318 Hi Richard,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4319
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4320 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
4321 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
4322 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
4323 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
4324 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
4325 our tracker.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4326
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4327 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
4328
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4329 <<battery backup>>=20
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4330
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4331 ------_=_NextPart_002_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4332 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4333 charset="us-ascii"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4334 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4335
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4336 <!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
4337 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4338 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4339 <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
4340 charset=3Dus-ascii">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4341 <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
4342 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4343 <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
4344 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4345 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4346 <!-- Converted from text/rtf format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4347 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4348
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4349 <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
4350 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4351
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4352 <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
4353 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
4354 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
4355 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
4356 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
4357 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
4358
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4359 <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
4360 look into this.&nbsp; Much appreciated.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4361 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4362 <BR>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4363
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4364 <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
4365 backup&gt;&gt; </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4366 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4367
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4368 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4369 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4370 ------_=_NextPart_002_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4371
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4372 ------_=_NextPart_001_01CACA65.40A51CBC
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4373 Content-Type: message/rfc822
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4374 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4375
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4376 X-MimeOLE: Produced By Microsoft Exchange V6.5
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4377 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4378 Content-Type: multipart/alternative;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4379 boundary="----_=_NextPart_003_01CAC15A.29717800"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4380 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
4381 Content-class: urn:content-classes:message
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4382 Subject: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4383 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
4384 Message-ID: <p06240809c7bf02f9624c@[128.114.22.203]>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4385 X-MS-Has-Attach:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4386 X-MS-TNEF-Correlator:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4387 Thread-Topic: battery backup
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4388 Thread-Index: AcrBWimtulTrSvBdQ2CcfZ8lyQdxmQ==
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4389 From: "Jerry" <jerry@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4390 To: "Hugh" <hugh@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4391
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4392 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
4393
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4394 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4395 Content-Type: text/plain;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4396 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4397 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4398
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4399 Dear Hugh,
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4400 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
4401 battery is worse than this.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4402
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4403 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
4404 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
4405
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4406 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
4407 a more modest number of batteries
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4408
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4409 Jerry
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4410
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4411
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4412 ------_=_NextPart_003_01CAC15A.29717800
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4413 Content-Type: text/html;
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4414 charset="iso-8859-1"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4415 Content-Transfer-Encoding: quoted-printable
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4416
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4417 <!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
4418 <HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4419 <HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4420 <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
4421 charset=3Diso-8859-1">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4422 <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
4423 6.5.7654.12">
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4424 <TITLE>battery backup</TITLE>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4425 </HEAD>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4426 <BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4427 <!-- Converted from text/plain format -->
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4428
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4429 <P><FONT SIZE=3D2>Dear Hugh,</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4430
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4431 <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
4432 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
4433
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4434 <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
4435 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4436
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4437 <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
4438 take 100 car </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4439
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4440 <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
4441 batteries.</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4442 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4443
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4444 <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
4445 minute, so we get to </FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4446
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4447 <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
4448 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4449
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4450 <P><FONT SIZE=3D2>Jerry</FONT>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4451 </P>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4452
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4453 </BODY>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4454 </HTML>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4455 ------_=_NextPart_003_01CAC15A.29717800--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4456
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4457 ------_=_NextPart_001_01CACA65.40A51CBC--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4458 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4459 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4460 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4461 msgid = self.db.issue.get(nodeid, 'messages')[0]
5649
f8893e1cde0d assert_ is depricated. Replacing with assertTrue to reduce logs in travisci.
John Rouillard <rouilj@ieee.org>
parents: 5547
diff changeset
4462 self.assertTrue(self.db.msg.get(msgid, 'content').startswith('Hi Richard'))
4373
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4463 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
4464 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4465 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
4466 fileid = self.db.msg.get(msgid, 'files')[1]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4467 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
4468
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4469 def testForwardedMessageAttachment(self):
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4470 message = '''Return-Path: <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4471 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
4472 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
4473 Message-ID: <4BC4F9C7.50409@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4474 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
4475 From: Rupert Goldie <rgg@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4476 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
4477 MIME-Version: 1.0
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4478 To: ekit issues <issues@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4479 Subject: [Fwd: PHP ERROR (fb)] post limit reached
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4480 Content-Type: multipart/mixed; boundary="------------000807090608060304010403"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4481
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4482 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
4483 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4484 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
4485 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4486
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4487 Catch this exception and log it without emailing.
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4488
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4489 --------------000807090608060304010403
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4490 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
4491 Content-Transfer-Encoding: 7bit
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4492 Content-Disposition: inline; filename="PHP ERROR (fb).eml"
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4493
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4494 Return-Path: <ektravj@test.test>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4495 X-Sieve: CMU Sieve 2.2
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4496 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
4497 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
4498 To: facebook-errors@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4499 From: ektravj@test.test
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4500 Subject: PHP ERROR (fb)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4501 Message-Id: <20100413230100.D601D27E84@mail2.elax3.ekorp.com>
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4502 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
4503
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4504 [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
4505 Stack trace:
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4506 #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
4507 #1 {main}
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4508 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
4509
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4510
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4511 --------------000807090608060304010403--
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4512 '''
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4513 nodeid = self._handle_mail(message)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4514 assert not os.path.exists(SENDMAILDEBUG)
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4515 msgid = self.db.issue.get(nodeid, 'messages')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4516 self.assertEqual(self.db.msg.get(msgid, 'content'),
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4517 'Catch this exception and log it without emailing.')
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4518 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
4519 fileid = self.db.msg.get(msgid, 'files')[0]
18cc4323e2ad Accept single-character subject lines
Richard Jones <richard@users.sourceforge.net>
parents: 4358
diff changeset
4520 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
4521
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4522
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4523 def testStandardMsg(self):
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4524 self.instance.config['MAIL_DOMAIN'] = 'example.com'
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4525 name = u'Accented chars \xe4\xf6\xfc\xc4\xd6\xdc\xdf'
5848
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4526 # Python2 wants an UTF-8 string in first component of adr and content
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4527 # while Python3 wants a String
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4528 # It *may* be a bug that the subject can be Unicode in python2.
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4529 # But it doesn't hurt if the encoding happens to be utf-8
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4530 if sys.version_info[0] <= 2:
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4531 name = name.encode('utf-8')
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4532 adr = 'someone@example.com'
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4533 to = [adr]
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4534 adr = (name, adr)
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4535 mailer = roundupdb.Mailer(self.db.config)
5848
f767a83a6af0 Fix test for mailer.standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5836
diff changeset
4536 mailer.standard_message(to, subject=name, content=name, author=adr)
5829
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4537 assert os.path.exists(SENDMAILDEBUG)
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4538 self.compareMessages(self._get_mail(),
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4539 '''
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4540 FROM: roundup-admin@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4541 TO: someone@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4542 From: =?utf-8?b?QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=?=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4543 <someone@example.com>
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4544 To: someone@example.com
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4545 MIME-Version: 1.0
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4546 Content-Type: text/plain; charset="utf-8"
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4547 Subject: =?utf-8?b?QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=?=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4548 X-Roundup-Name: Roundup issue tracker
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4549 X-Roundup-Loop: hello
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4550 Content-Transfer-Encoding: base64
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4551
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4552 QWNjZW50ZWQgY2hhcnMgw6TDtsO8w4TDlsOcw58=
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4553 ''')
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4554
7c05c481e470 Add test for standard_message
Ralf Schlatterbeck <rsc@runtux.com>
parents: 5794
diff changeset
4555
5036
380d8d8b30a3 Replace existing run_tests.py script with a pytest script
John Kristensen <john@jerrykan.com>
parents: 5033
diff changeset
4556 @skip_pgp
5033
63c79c0992ae Update tests to work with py.test
John Kristensen <john@jerrykan.com>
parents: 4994
diff changeset
4557 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
4558 pgphome = gpgmelib.pgphome
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4559 def setUp(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4560 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
4561 self.db.security.addRole(name = 'pgp', description = 'PGP Role')
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4562 self.instance.config['PGP_HOMEDIR'] = self.pgphome
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4563 self.instance.config['PGP_ROLES'] = 'pgp'
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4564 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
4565 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
4566 self.instance.config['ADMIN_EMAIL'] = 'roundup-admin@example.com'
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4567 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
4568 gpgmelib.setUpPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4569
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4570 def tearDown(self):
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4571 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
4572 gpgmelib.tearDownPGP()
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4573
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4574 def testPGPUnsignedMessage(self):
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4575 self.assertRaises(MailUsageError, self._handle_mail,
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4576 '''Content-Type: text/plain;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4577 charset="iso-8859-1"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4578 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4579 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4580 Message-Id: <dummy_test_message_id>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4581 Subject: [issue] Testing non-signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4582
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4583 This is no pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4584 ''')
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4585
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4586 signed_msg = '''Content-Disposition: inline
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4587 From: John Doe <john@test.test>
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4588 To: issue_tracker@your.tracker.email.domain.example
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4589 Subject: [issue] Testing signed message...
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4590 Content-Type: multipart/signed; micalg=pgp-sha1;
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4591 protocol="application/pgp-signature"; boundary="cWoXeonUoKmBZSoM"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4592
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4593
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4594 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4595 Content-Type: text/plain; charset=us-ascii
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4596 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4597
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4598 This is a pgp signed message.
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4599
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4600 --cWoXeonUoKmBZSoM
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4601 Content-Type: application/pgp-signature; name="signature.asc"
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4602 Content-Description: Digital signature
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4603 Content-Disposition: inline
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4604
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4605 -----BEGIN PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4606 Version: GnuPG v1.4.10 (GNU/Linux)
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4607
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4608 iJwEAQECAAYFAk6N4A4ACgkQv8+6oPhbo5x5nAP/d7R7SxTvLoVESI+1r7eDXp1J
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4609 LvBVU2EF3YFYKBHMLcWmjG92fNjnHX6NENTEhTeBynba5IPEwUfITC+7PmgPmQkA
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4610 VXnFZnwraHxsYgyFsVFN1kkTSbwRUlWl9+nTEsr0yBLTpZN0QSIDcwu+i/xVcg+t
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4611 ZQ4K6R3m3AOw7BLdvZs=
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4612 =wpYk
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4613 -----END PGP SIGNATURE-----
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4614
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4615 --cWoXeonUoKmBZSoM--
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4616 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4617
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4618 def testPGPSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4619 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
4620 m = self.db.issue.get(nodeid, 'messages')[0]
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4621 self.assertEqual(self.db.msg.get(m, 'content'),
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4622 'This is a pgp signed message.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4623 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4624 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4625 self.assertEqual(l, 'email-sig-openpgp')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4626
4540
bf67fed13ef9 Fix PGP implementation
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4531
diff changeset
4627
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4628 def testPGPSignedMessageFail(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4629 # 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
4630 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
4631 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
4632
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4633 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
4634 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
4635 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
4636 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
4637 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
4638 boundary="d6Gm4EdcadzBjdND"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4639
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4640 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4641 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
4642 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4643
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4644 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4645
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4646 --d6Gm4EdcadzBjdND
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4647 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
4648 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
4649
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4650 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4651 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
4652
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4653 hQEMAzfeQttq+Q2YAQf9FxCtZVgC7jAy6UkeAJ1imCpnh9DgKA5w40OFtrY4mVAp
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4654 cL7kCkvGvJCW7uQZrmSgIiYaZGLI3GS42XutORC6E6PzBEW0fJUMIXYmoSd0OFeY
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4655 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
4656 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
4657 9g2UvGxW8U24NAS1mOg868U05hquLPIcFz9jGZGknJu7HBpOkQ9GjKqkzN8pgZVN
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4658 VbN8IdDqi0QtRKE44jtWQlyNlESMjv6GtC2V9F6qKNK8AfHtBexDhyv4G9cPFFNO
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4659 afQ6e4dPi89RYIQyydtwiqao8fj6jlAy2Z1cbr7YxwBG7BeUZv9yis7ShaAIo78S
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4660 82MrCYpSjfHNwKiSfC5yITw22Uv4wWgixVdAsaSdtBqEKXJPG9LNey18ArsBjSM1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4661 P81iDOWUp/uyIe5ZfvNI38BBxEYslPTUlDk2GB8J2Vun7IWHoj9a4tY3IotC9jBr
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4662 5Qnigzqrt7cJZX6OrN0c+wnOjXbMGYXmgSs4jeM=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4663 =XX5Q
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4664 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4665
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4666 --d6Gm4EdcadzBjdND--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4667 '''
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4668 def testPGPEncryptedUnsignedMessageError(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4669 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
4670
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4671 def testPGPEncryptedUnsignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4672 # 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
4673 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
4674 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
4675 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
4676 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
4677 'This is the text to be encrypted')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4678 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4679 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4680 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
4681
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4682 def testPGPEncryptedUnsignedMessageFromNonPGPUser(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4683 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
4684 '"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
4685 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
4686 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
4687 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
4688 '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
4689 self.assertEqual(self.db.msg.get(m, 'author'), self.mary_id)
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4690 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4691 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4692 self.assertEqual(l, 'email')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4693
4541
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4694
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4695 # 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
4696 # 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
4697 def testPGPEncryptedUnsignedMessageCheckBounce(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4698 # 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
4699 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
4700 # 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
4701 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
4702 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
4703 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
4704 # 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
4705 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
4706 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
4707 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
4708 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
4709 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
4710 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
4711 plain = gpg.core.Data()
b7fa56ced601 use gpg module instead of pyme module for PGP encryption
Christof Meerwald <cmeerw@cmeerw.org>
parents: 5493
diff changeset
4712 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
4713 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
4714 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
4715 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
4716 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
4717 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
4718 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
4719 '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
4720 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
4721 '''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
4722 Content-Disposition: inline
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4723
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4724 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
4725
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4726
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4727 def testPGPEncryptedSignedMessage(self):
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4728 # 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
4729 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
4730 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
4731 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
4732 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
4733 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
4734 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
4735 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
4736 boundary="ReaqsoxgOBHFXBhH"
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4737
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4738 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4739 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
4740 Content-Disposition: attachment
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4741
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4742 Version: 1
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4743
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4744 --ReaqsoxgOBHFXBhH
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4745 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
4746 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
4747
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4748 -----BEGIN PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4749 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
4750
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4751 hQEMAzfeQttq+Q2YAQf+NaC3r8qBURQqxHH9IAP4vg0QAP2yj3n0v6guo1lRf5BA
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4752 EUfTQ3jc3chxLvzTgoUIuMOvhlNroqR1lgLwhfSTCyuKWDZa+aVNiSgsB2MD44Xd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4753 mAkKKmnmOGLmfbICbPQZxl4xNhCMTHiAy1xQE6mTj/+pEAq5XxjJUwn/gJ3O1Wmd
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4754 NyWtJY2N+TRbxUVB2WhG1j9J1D2sjhG26TciE8JeuLDZzaiVNOW9YlX2Lw5KtlkR
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4755 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
4756 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
4757 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
4758 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
4759 wfiqXsY+XvSZtTbWuvUJxePh8vhhhjpuo1JtlrYc3hZ9OYgoCoV1JiLl5c60U5Es
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4760 oUT9GDl1Qsgb4dF4TJ1IBj+riYiocYpJxPhxzsy6liSLNy2OA6VEjG0FGk53+Ok9
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4761 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
4762 D0QQLwIFttplKvYkn0DZByJCVnIlGkl4s5LM5rnc8iecX8Jad0iRIlPV6CVM+Nso
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4763 WdARUfyJfXAmz8uk4f2sVfeMu1gdMySdjvxwlgHDJdBPIG51r2b8L/NCTiC57YjF
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4764 zGhS06FLl3V1xx6gBlpqQHjut3efrAGpXGBVpnTJMOcgYAk=
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4765 =jt/n
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4766 -----END PGP MESSAGE-----
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4767
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4768 --ReaqsoxgOBHFXBhH--
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4769 ''')
62239a524beb PGP support is again working (pyme API has changed significantly)...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4540
diff changeset
4770 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
4771 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
4772 'This is the text of a signed and encrypted email.')
4781
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4773 # check that the message has the right source code
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4774 l = self.db.msg.get(m, 'tx_Source')
6e9b9743de89 Implementation for:
John Rouillard <rouilj@ieee.org>
parents: 4580
diff changeset
4775 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
4776
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
4777 # vim: set filetype=python sts=4 sw=4 et si :

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