annotate test/test_mailgw.py @ 4350:23bf9290140a

don't have mailgw tests close the db - they're not testing persistence
author Richard Jones <richard@users.sourceforge.net>
date Mon, 08 Feb 2010 08:30:37 +0000
parents 7a0fe3cff4de
children 887a153cedec
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.
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
11 #
4005
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
12 # $Id: test_mailgw.py,v 1.96 2008-08-19 01:40:59 richard Exp $
2219
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
13
2623b1afc2b6 pre-b3 stuff
Richard Jones <richard@users.sourceforge.net>
parents: 2202
diff changeset
14 # TODO: test bcc
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
15
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
16 import unittest, tempfile, os, shutil, errno, imp, sys, difflib, rfc822, time
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
17
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
18 from cStringIO import StringIO
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
19
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
20 if not os.environ.has_key('SENDMAILDEBUG'):
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
21 os.environ['SENDMAILDEBUG'] = 'mail-test.log'
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
22 SENDMAILDEBUG = os.environ['SENDMAILDEBUG']
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
23
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
24 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
25 parseContent, IgnoreLoop, IgnoreBulk, MailUsageError, MailUsageHelp
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
26 from roundup import init, instance, password, rfc2822, __version__
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
27 from roundup.anypy.sets_ import set
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
28
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
29 #import db_test_base
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
30 import memorydb
1797
c1eec970d5c0 Optimize mailgw and cgi tests...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1796
diff changeset
31
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
32 class Message(rfc822.Message):
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
33 """String-based Message class with equivalence test."""
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
34 def __init__(self, s):
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
35 rfc822.Message.__init__(self, StringIO(s.strip()))
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
36
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
37 def __eq__(self, other):
1796
4de2e611b6f3 Simplify Message comparison.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1795
diff changeset
38 return (self.dict == other.dict and
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
39 self.fp.read() == other.fp.read())
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
40
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
41 class Tracker(object):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
42 def open(self, journaltag):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
43 return self.db
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
44
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
45 class DiffHelper:
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
46 def compareMessages(self, new, old):
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
47 """Compare messages for semantic equivalence."""
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
48 new, old = Message(new), Message(old)
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
49
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
50 # all Roundup-generated messages have "Precedence: bulk"
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
51 old['Precedence'] = 'bulk'
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
52
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
53 # 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
54 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
55
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
56 if not new == old:
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
57 res = []
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
58
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
59 replace = {}
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
60 for key in new.keys():
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
61 if key.startswith('from '):
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
62 # skip the unix from line
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
63 continue
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
64 if key.lower() == 'x-roundup-version':
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
65 # version changes constantly, so handle it specially
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
66 if new[key] != __version__:
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
67 res.append(' %s: %r != %r' % (key, __version__,
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
68 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
69 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
70 # handle mime messages
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
71 newmime = new[key].split('=',1)[-1].strip('"')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
72 oldmime = old.get(key, '').split('=',1)[-1].strip('"')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
73 replace ['--' + newmime] = '--' + oldmime
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
74 replace ['--' + newmime + '--'] = '--' + oldmime + '--'
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
75 elif new.get(key, '') != old.get(key, ''):
4002
b0bf39985f30 fix tests for added Precedence: bulk header
Richard Jones <richard@users.sourceforge.net>
parents: 3974
diff changeset
76 res.append(' %s: %r != %r' % (key, old.get(key, ''),
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
77 new.get(key, '')))
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
78
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
79 body_diff = self.compareStrings(new.fp.read(), old.fp.read(),
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
80 replace=replace)
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
81 if body_diff:
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
82 res.append('')
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
83 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
84
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
85 if res:
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
86 res.insert(0, 'Generated message not correct (diff follows, expected vs. actual):')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
87 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
88
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
89 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
90 '''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
91 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
92 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
93 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
94 '''
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
95 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
96 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
97 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
98 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
99 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
100 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
101 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
102 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
103 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
104 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
105 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
106 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
107 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
108 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
109 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
110 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
111 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
112 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
113 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
114 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
115
1890
e1b3ca0c0f9a Do a semantic comparison of messages when the test fails.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1888
diff changeset
116 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
117
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
118 class MailgwTestCase(unittest.TestCase, DiffHelper):
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
119 count = 0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
120 schema = 'classic'
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
121 def setUp(self):
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
122 MailgwTestCase.count = MailgwTestCase.count + 1
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
123
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
124 # 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
125 self.db = memorydb.create('admin')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
126 self.instance = Tracker()
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
127 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
128 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
129 self.instance.MailGW = MailGW
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
130
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
131 self.chef_id = self.db.user.create(username='Chef',
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
132 address='chef@bork.bork.bork', realname='Bork, Chef', roles='User')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
133 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
134 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
135 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
136 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
137 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
138 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
139 alternate_addresses='jondoe@test.test\njohn.doe@test.test')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
140
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
141 def tearDown(self):
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
142 if os.path.exists(SENDMAILDEBUG):
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
143 os.remove(SENDMAILDEBUG)
1126
d77b86cc541b close the databases before test cleanup
Richard Jones <richard@users.sourceforge.net>
parents: 1095
diff changeset
144 self.db.close()
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
145
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
146 def _create_mailgw(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
147 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
148 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
149 return self._handle_message(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
150 handler = MailGW(self.instance)
23bf9290140a don't have mailgw tests close the db - they're not testing persistence
Richard Jones <richard@users.sourceforge.net>
parents: 4343
diff changeset
151 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
152 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
153
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
154 def _handle_mail(self, message):
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
155 handler = self._create_mailgw(message)
1888
465dc7dbe67a Extract _send_mail method, it was duplicated all around the test code.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1887
diff changeset
156 handler.trapExceptions = 0
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
157 return handler.main(StringIO(message))
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
158
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
159 def _get_mail(self):
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
160 f = open(SENDMAILDEBUG)
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
161 try:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
162 return f.read()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
163 finally:
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
164 f.close()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
165
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
166 def testEmptyMessage(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
167 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
168 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
169 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
170 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
171 Cc: richard@test.test
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
172 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
173 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
174 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
175
fc9dafcb62e0 set title on issues even when the email body is empty [SF#727430]
Richard Jones <richard@users.sourceforge.net>
parents: 1592
diff changeset
176 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
177 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
178 self.assertEqual(self.db.issue.get(nodeid, 'title'), '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
179
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
180 def testMessageWithFromInIt(self):
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
181 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
182 charset="iso-8859-1"
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
183 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
184 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
185 Cc: richard@test.test
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
186 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
187 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
188 Subject: [issue] Testing...
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
189
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
190 From here to there!
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
191 ''')
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
192 assert not os.path.exists(SENDMAILDEBUG)
4343
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
193 msgid = self.db.issue.get(nodeid, 'messages')[0]
7a0fe3cff4de fix test
Richard Jones <richard@users.sourceforge.net>
parents: 4342
diff changeset
194 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
195
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
196 def doNewIssue(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
197 nodeid = self._handle_mail('''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
198 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
199 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
200 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
201 Cc: richard@test.test
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
202 Message-Id: <dummy_test_message_id>
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
203 Subject: [issue] Testing...
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
204
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
205 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
206 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
207 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
208 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
209 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
210 self.assertEqual(l, [self.chef_id, self.richard_id])
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
211 return nodeid
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
212
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
213 def testNewIssue(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
214 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
215
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
216 def testNewIssueNosy(self):
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
217 self.instance.config.ADD_AUTHOR_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
218 nodeid = self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
219 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
220 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
221 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
222 Cc: richard@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
223 Message-Id: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
224 Subject: [issue] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
225
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
226 This is a test submission of a new issue.
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
227 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
228 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
229 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
230 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
231 self.assertEqual(l, [self.chef_id, self.richard_id])
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
232
617
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
233 def testAlternateAddress(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
234 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
235 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
236 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
237 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
238 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
239 Subject: [issue] Testing...
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
240
edd210915e64 Alternate email addresses are now available for users.
Richard Jones <richard@users.sourceforge.net>
parents: 616
diff changeset
241 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
242 ''')
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
243 userlist = self.db.user.list()
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
244 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
245 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
246 "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
247
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
248 def testNewIssueNoClass(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
249 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
250 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
251 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
252 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
253 Cc: richard@test.test
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
254 Message-Id: <dummy_test_message_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
255 Subject: Testing...
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
256
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
257 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
258 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
259 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
260
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
261 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
262 # TODO: fix the damn config - this is apalling
465dc7dbe67a Extract _send_mail method, it was duplicated all around the test code.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1887
diff changeset
263 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
264 self._handle_mail('''Content-Type: text/plain;
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
265 charset="iso-8859-1"
777
bcd284bba81f Updated message strings...
Derrick Hudson <dman13@users.sourceforge.net>
parents: 753
diff changeset
266 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
267 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
268 Message-Id: <dummy_test_message_id>
560
d7b9751f8927 Mail gateway improvements.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 537
diff changeset
269 Subject: [issue] Testing... [nosy=mary; assignedto=richard]
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
270
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
271 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
272 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
273 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
274 '''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
275 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
276 Content-Type: text/plain; charset="utf-8"
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
277 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
278 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
279 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
280 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
281 <issue_tracker@your.tracker.email.domain.example>
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
282 MIME-Version: 1.0
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
283 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
284 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
285 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
286 X-Roundup-Issue-Status: unread
665
9382ad731c1c All messages sent to the nosy list are now encoded as quoted-printable.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 617
diff changeset
287 Content-Transfer-Encoding: quoted-printable
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
288
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
289
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
290 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
291
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
292 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
293
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
294 ----------
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
295 assignedto: richard
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
296 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
297 nosy: Chef, mary, richard
537
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
298 status: unread
ad6dbc21a570 [SF#503340] creating issue with [asignedto=p.ohly]
Richard Jones <richard@users.sourceforge.net>
parents: 532
diff changeset
299 title: Testing...
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
300
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
301 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
302 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
303 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
304 _______________________________________________________________________
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
305 ''')
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
306
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
307 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
308 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
309 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
310 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
311 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
312 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
313 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
314 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
315
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
316 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
317 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
318 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
319 '''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
320 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
321 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
322 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
323 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
324 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
325 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
326 <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
327 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
328 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
329 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
330 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
331 X-Roundup-Issue-Status: unread
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
332 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
333
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
334 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
335
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
336 ----------
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
337 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
338 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
339 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
340 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
341 title: Testing...
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
342
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
343 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
344 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
345 <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
346 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
347 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
348
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
349 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
350 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
351 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
352 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
353 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
354 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
355 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
356 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
357
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
358 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
359 ''')
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
360 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
361 '''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
362 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
363 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
364 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
365 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
366 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
367 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
368 <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
369 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
370 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
371 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
372 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
373 X-Roundup-Issue-Status: unread
3877
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
374 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
375
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
376 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
377
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
378 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
379
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
380 ----------
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
381 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
382 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
383 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
384 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
385 title: Testing...
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
386
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
387 _______________________________________________________________________
83748b2de465 Make addition of line about new submission/comment at top of each message...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3876
diff changeset
388 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
389 <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
390 _______________________________________________________________________
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
391 ''')
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
392
3974
ff089ebe95d1 remove duplicate Content-Type header from multipart_msg...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3966
diff changeset
393 multipart_msg = '''From: mary <mary@test.test>
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
394 To: issue_tracker@your.tracker.email.domain.example
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
395 Message-Id: <followup_dummy_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
396 In-Reply-To: <dummy_test_message_id>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
397 Subject: [issue1] Testing...
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
398 Content-Type: multipart/mixed; boundary="bxyzzy"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
399 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
400
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
401
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
402 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
403 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWE"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
404 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
405
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
406 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
407 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
408 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
409
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
410 test attachment first text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
411
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
412 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
413 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
414 Content-Disposition: attachment; filename="first.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
415 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
416
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
417 SnVzdCBhIHRlc3QgAQo=
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
418
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
419 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
420 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
421 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
422
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
423 test attachment second text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
424
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
425 --bCsyhTFzCvuiizWE
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
426 Content-Type: text/html
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
427 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
428
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
429 <html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
430 to be ignored.
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
431 </html>
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
432
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
433 --bCsyhTFzCvuiizWE--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
434
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
435 --bxyzzy
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
436 Content-Type: multipart/alternative; boundary="bCsyhTFzCvuiizWF"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
437 Content-Disposition: inline
609
633f2b542146 Clean up mail handling, multipart handling.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 599
diff changeset
438
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
439 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
440 Content-Type: text/plain; charset=us-ascii
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
441 Content-Disposition: inline
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
442
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
443 test attachment third text/plain
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
444
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
445 --bCsyhTFzCvuiizWF
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
446 Content-Type: application/octet-stream
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
447 Content-Disposition: attachment; filename="second.dvi"
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
448 Content-Transfer-Encoding: base64
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
449
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
450 SnVzdCBhIHRlc3QK
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
451
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
452 --bCsyhTFzCvuiizWF--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
453
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
454 --bxyzzy--
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
455 '''
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
456
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
457 def testMultipartKeepAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
458 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
459 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
460 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
461 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
462 msg = self.db.msg.getnode (messages[-1])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
463 assert(len(msg.files) == 5)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
464 names = {0 : 'first.dvi', 4 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
465 content = {3 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
466 4 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
467 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
468 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
469 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
470 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
471 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
472 self.assertEqual(msg.content, 'test attachment second text/plain')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
473
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
474 def testMultipartDropAlternatives(self):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
475 self.doNewIssue()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
476 self.db.config.MAILGW_IGNORE_ALTERNATIVES = True
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
477 self._handle_mail(self.multipart_msg)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
478 messages = self.db.issue.get('1', 'messages')
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
479 messages.sort()
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
480 msg = self.db.msg.getnode (messages[-1])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
481 assert(len(msg.files) == 2)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
482 names = {1 : 'second.dvi'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
483 content = {0 : 'test attachment third text/plain\n',
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
484 1 : 'Just a test\n'}
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
485 for n, id in enumerate (msg.files):
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
486 f = self.db.file.getnode (id)
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
487 self.assertEqual(f.name, names.get (n, 'unnamed'))
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
488 if n in content :
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
489 self.assertEqual(f.content, content [n])
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
490 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
491
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
492 def testSimpleFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
493 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
494 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
495 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
496 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
497 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
498 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
499 In-Reply-To: <dummy_test_message_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
500 Subject: [issue1] Testing...
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
501
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
502 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
503 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
504 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
505 '''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
506 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
507 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
508 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
509 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
510 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
511 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
512 <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
513 MIME-Version: 1.0
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
514 Message-Id: <followup_dummy_id>
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
515 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
516 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
517 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
518 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
519 Content-Transfer-Encoding: quoted-printable
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
520
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
521
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
522 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
523
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
524 This is a second followup
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
525
571
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
526 ----------
2998d683e2cf Fixed status change in mail gateway.
Roche Compaan <rochecompaan@users.sourceforge.net>
parents: 560
diff changeset
527 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
528
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
529 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
530 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
531 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
532 _______________________________________________________________________
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
533 ''')
522
f2edf460b0b9 [SF#502437] rogue reactor and unittest
Richard Jones <richard@users.sourceforge.net>
parents: 475
diff changeset
534
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
535 def testFollowup(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
536 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
537
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
538 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
539 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
540 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
541 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
542 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
543 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
544 Subject: [issue1] Testing... [assignedto=mary; nosy=+john]
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
545
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
546 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
547 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
548 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
549 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
550 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
551 self.john_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
552
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
553 self.compareMessages(self._get_mail(),
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
554 '''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
555 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
556 Content-Type: text/plain; charset="utf-8"
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
557 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
558 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
559 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
560 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
561 <issue_tracker@your.tracker.email.domain.example>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
562 MIME-Version: 1.0
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
563 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
564 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
565 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
566 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
567 X-Roundup-Issue-Status: chatting
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
568 Content-Transfer-Encoding: quoted-printable
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
569
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
570
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
571 richard <richard@test.test> added the comment:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
572
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
573 This is a followup
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
574
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
575 ----------
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
576 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
577 nosy: +john, mary
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
578 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
579
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
580 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
581 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
582 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
583 _______________________________________________________________________
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
584 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
585
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
586 def testPropertyChangeOnly(self):
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
587 self.doNewIssue()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
588 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
589 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
590 # 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
591 # 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
592 # 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
593 #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
594 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
595 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
596 self.db.commit()
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
597 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
598
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
599 new_mail = ""
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
600 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
601 if "Message-Id: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
602 continue
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
603 if "Date: " in line:
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
604 continue
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
605 new_mail += line+"\n"
3892
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
606
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
607 self.compareMessages(new_mail, """
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
608 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
609 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
610 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
611 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
612 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
613 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
614 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
615 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
616 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
617 X-Roundup-Version: 1.3.3
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
618 MIME-Version: 1.0
4340
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
619 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
620 <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
621 Content-Transfer-Encoding: quoted-printable
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
622
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
623
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
624 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
625
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
626
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
627 ----------
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
628 assignedto: -> Chef
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
629
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
630 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
631 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
632 <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
633 _______________________________________________________________________
f762fa13cd8d Automatically find out author of property-only changes...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3877
diff changeset
634 """)
3939
63ab356dfcf9 Fix incorrect labelling of a change as a "new submission".
Richard Jones <richard@users.sourceforge.net>
parents: 3902
diff changeset
635
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
636
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
637 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
638 # FOLLOWUP TITLE MATCH
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
639 #
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
640 def testFollowupTitleMatch(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
641 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
642 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
643 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
644 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
645 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
646 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
647 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
648
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
649 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
650 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
651 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
652 '''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
653 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
654 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
655 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
656 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
657 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
658 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
659 <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
660 MIME-Version: 1.0
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
661 Message-Id: <followup_dummy_id>
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
662 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
663 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
664 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
665 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
666 Content-Transfer-Encoding: quoted-printable
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
667
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
668
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
669 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
670
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
671 This is a followup
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
672
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
673 ----------
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
674 assignedto: -> mary
1095
711f2ecee20f unit tests pass again
Richard Jones <richard@users.sourceforge.net>
parents: 1094
diff changeset
675 nosy: +john, mary
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
676 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
677
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
678 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
679 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
680 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
681 _______________________________________________________________________
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
682 ''')
616
08abec25b2c6 [SF#503204] mailgw needs a default class
Richard Jones <richard@users.sourceforge.net>
parents: 613
diff changeset
683
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
684 def testFollowupTitleMatchMultiRe(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
685 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
686 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
687 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
688 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
689 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
690 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
691 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
692
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
693 This is a followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
694 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
695
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
696 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
697 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
698 From: richard <richard@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
699 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
700 Message-Id: <followup2_dummy_id>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
701 Subject: Ang: Re: Testing...
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
702
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
703 This is a followup
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
704 ''')
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
705 self.assertEqual(nodeid1, nodeid2)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
706 self.assertEqual(nodeid1, nodeid3)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
707
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
708 def testFollowupTitleMatchNever(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
709 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
710 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
711 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
712 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
713 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
714 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
715 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
716 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
717
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
718 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
719 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
720
3678
9365dcf5d587 don't supply an In-Reply-To when testing Subject matching
Richard Jones <richard@users.sourceforge.net>
parents: 3579
diff changeset
721 def testFollowupTitleMatchNeverInterval(self):
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
722 nodeid = self.doNewIssue()
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
723 # force failure of the interval
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
724 time.sleep(2)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
725 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
726 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
727 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
728 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
729 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
730 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
731 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
732
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
733 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
734 '''), nodeid)
4005
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
735
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
736
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
737 def testFollowupTitleMatchInterval(self):
3dec28d96583 fix some unit tests for python2.3
Richard Jones <richard@users.sourceforge.net>
parents: 4002
diff changeset
738 nodeid = self.doNewIssue()
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
739 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
740 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
741 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
742 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
743 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
744 Message-Id: <followup_dummy_id>
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
745 Subject: Re: Testing...
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
746
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
747 This is a followup
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
748 '''), nodeid)
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
749
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
750
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
751 def testFollowupNosyAuthor(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
752 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
753 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
754 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
755 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
756 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
757 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
758 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
759 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
760 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
761
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
762 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
763 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
764
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
765 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
766 '''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
767 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
768 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
769 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
770 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
771 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
772 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
773 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
774 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
775 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
776 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
777 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
778 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
779 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
780 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
781
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
782
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
783 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
784
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
785 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
786
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
787 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
788 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
789 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
790
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
791 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
792 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
793 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
794 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
795
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
796 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
797
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
798 def testFollowupNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
799 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
800 self.db.config.ADD_RECIPIENTS_TO_NOSY = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
801 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
802 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
803 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
804 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
805 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
806 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
807 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
808 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
809
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
810 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
811 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
812 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
813 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
814 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
815 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
816 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
817 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
818 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
819 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
820 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
821 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
822 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
823 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
824 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
825 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
826 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
827 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
828
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
829
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
830 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
831
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
832 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
833
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
834 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
835 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
836 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
837
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
838 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
839 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
840 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
841 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
842
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
843 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
844
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
845 def testFollowupNosyAuthorAndCopy(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
846 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
847 self.db.config.ADD_AUTHOR_TO_NOSY = 'yes'
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
848 self.db.config.MESSAGES_TO_AUTHOR = 'yes'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
849 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
850 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
851 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
852 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
853 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
854 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
855 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
856
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
857 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
858 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
859 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
860 '''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
861 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
862 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
863 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
864 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
865 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
866 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
867 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
868 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
869 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
870 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
871 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
872 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
873 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
874 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
875
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
876
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
877 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
878
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
879 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
880
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
881 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
882 nosy: +john
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
883 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
884
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
885 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
886 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
887 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
888 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
889
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
890 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
891
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
892 def testFollowupNoNosyAuthor(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
893 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
894 self.instance.config.ADD_AUTHOR_TO_NOSY = 'no'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
895 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
896 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
897 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
898 To: issue_tracker@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
899 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
900 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
901 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
902
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
903 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
904 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
905 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
906 '''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
907 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
908 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
909 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
910 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
911 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
912 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
913 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
914 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
915 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
916 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
917 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
918 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
919 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
920 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
921
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
922
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
923 John Doe <john@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
924
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
925 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
926
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
927 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
928 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
929
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
930 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
931 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
932 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
933 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
934
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
935 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
936
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
937 def testFollowupNoNosyRecipients(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
938 self.doNewIssue()
1085
04a6b3bfbf23 instance_config -> config, and other related cleanups
Richard Jones <richard@users.sourceforge.net>
parents: 908
diff changeset
939 self.instance.config.ADD_RECIPIENTS_TO_NOSY = 'no'
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
940 self._handle_mail('''Content-Type: text/plain;
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
941 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
942 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
943 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
944 Cc: john@test.test
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
945 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
946 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
947 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
948
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
949 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
950 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
951 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
952 '''FROM: roundup-admin@your.tracker.email.domain.example
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
953 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
954 Content-Type: text/plain; charset="utf-8"
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
955 Subject: [issue1] Testing...
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
956 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
957 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
958 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
959 <issue_tracker@your.tracker.email.domain.example>
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
960 MIME-Version: 1.0
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
961 Message-Id: <followup_dummy_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
962 In-Reply-To: <dummy_test_message_id>
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
963 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
964 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
965 X-Roundup-Issue-Status: chatting
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
966 Content-Transfer-Encoding: quoted-printable
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
967
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
968
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
969 richard <richard@test.test> added the comment:
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
970
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
971 This is a followup
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
972
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
973 ----------
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
974 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
975
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
976 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
977 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
978 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
979 _______________________________________________________________________
699
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
980
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
981 ''')
676d4cfde9a5 Nosy list improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 668
diff changeset
982
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
983 def testFollowupEmptyMessage(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
984 self.doNewIssue()
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
985
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
986 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
987 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
988 From: richard <richard@test.test>
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
989 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
990 Message-Id: <followup_dummy_id>
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
991 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
992 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
993
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
994 ''')
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
995 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
996 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
997 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
998 self.john_id])
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
999
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
1000 # should be no file created (ie. no message)
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1001 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
1002
3579
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1003 def testFollowupEmptyMessageNoSubject(self):
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1004 self.doNewIssue()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1005
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1006 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
1007 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1008 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
1009 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
1010 Message-Id: <followup_dummy_id>
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1011 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
1012 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
1013
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1014 ''')
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1015 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
1016 l.sort()
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1017 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
1018 self.john_id])
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1019
7f1e2d650486 fix blank-title subject line handling [SF#1442121]
Richard Jones <richard@users.sourceforge.net>
parents: 3417
diff changeset
1020 # 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
1021 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
1022
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1023 def testNosyRemove(self):
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1024 self.doNewIssue()
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1025
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1026 self._handle_mail('''Content-Type: text/plain;
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1027 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1028 From: richard <richard@test.test>
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1029 To: issue_tracker@your.tracker.email.domain.example
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1030 Message-Id: <followup_dummy_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1031 In-Reply-To: <dummy_test_message_id>
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1032 Subject: [issue1] Testing... [nosy=-richard]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1033
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1034 ''')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1035 l = self.db.issue.get('1', 'nosy')
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1036 l.sort()
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1037 self.assertEqual(l, [self.chef_id])
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1038
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1039 # NO NOSY MESSAGE SHOULD BE SENT!
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1040 assert not os.path.exists(SENDMAILDEBUG)
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1041
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
1042 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
1043 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
1044 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
1045 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
1046 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
1047 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
1048 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
1049 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
1050 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
1051 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
1052
502a5ae11cc5 Very close now. The cgi and mailgw now use the new security API.
Richard Jones <richard@users.sourceforge.net>
parents: 857
diff changeset
1053 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
1054 '''
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1055 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
1056 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
1057 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
1058 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1059 self._handle_mail(message)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1060 except Unauthorized, value:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1061 body_diff = self.compareMessages(str(value), """
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1062 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
1063
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1064 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
1065 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1066 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
1067 else:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1068 raise AssertionError, "Unathorized not raised when handling mail"
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1069
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1070 # 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
1071 # 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
1072 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1073 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
1074 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
1075 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1076 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
1077 try:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1078 self._handle_mail(message)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1079 except Unauthorized, value:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1080 body_diff = self.compareMessages(str(value), """
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1081 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
1082
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1083 http://tracker.example/cgi-bin/roundup.cgi/bugs/user?template=register
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1084
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1085 ...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
1086
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1087 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
1088 """)
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1089 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
1090 else:
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1091 raise AssertionError, "Unathorized not raised when handling mail"
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1092
29759dfcfbcf Tell user where to register in mail about user being unknown...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3815
diff changeset
1093 # 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
1094 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
1095 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
1096 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
1097
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1098 # now with the permission
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1099 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1100 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
1101 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
1102 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1103 self.db.security.role['anonymous'].permissions=p
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1104 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
1105 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
1106 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
1107 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
1108
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
1109 def testNewUserAuthorEncodedName(self):
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1110 l = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1111 # 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
1112 message = '''Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1113 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1114 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
1115 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
1116 Message-Id: <dummy_test_message_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1117 Subject: [issue] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1118
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1119 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
1120 '''
4342
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1121 p = [
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1122 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
1123 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
1124 self.db.security.getPermission('Create', 'issue'),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1125 self.db.security.getPermission('Create', 'msg'),
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1126 ]
94c992852f12 add in-memory hyperdb implementation to speed up testing
Richard Jones <richard@users.sourceforge.net>
parents: 4340
diff changeset
1127 self.db.security.role['anonymous'].permissions = p
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1128 self._handle_mail(message)
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1129 m = set(self.db.user.list())
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1130 new = list(m - l)[0]
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1131 name = self.db.user.get(new, 'realname')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1132 self.assertEquals(name, 'H€llo')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1133
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1134 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
1135 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
1136 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
1137 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
1138 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
1139 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
1140 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
1141 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
1142
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1143 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
1144 '''
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
1145 handler = self._create_mailgw(message)
4215
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1146 # we want a bounce message:
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1147 handler.trapExceptions = 1
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1148 ret = handler.main(StringIO(message))
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1149 self.compareMessages(self._get_mail(),
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1150 '''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
1151 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
1152 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
1153 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
1154 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
1155 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
1156 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
1157 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
1158 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
1159 Precedence: bulk
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1160 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
1161 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
1162 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
1163 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
1164
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1165 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1166 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
1167 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
1168 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
1169
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1170
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1171
4301
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
1172 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
1173
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
1174 http://tracker.example/cgi-bin/roundup.cgi/bugs/user?template=register
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
1175
d47245c2530a Fix some security assertions and tests.
Richard Jones <richard@users.sourceforge.net>
parents: 4289
diff changeset
1176 ...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
1177
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1178 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
1179
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1180 --===============0639262320==
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1181 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
1182 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
1183 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
1184
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1185 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
1186 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
1187 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
1188 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
1189 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
1190 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
1191
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1192 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
1193
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1194 --===============0639262320==--
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1195 ''')
57dfcc824acc fix problem with bounce-message if incoming mail has insufficient privilege...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4211
diff changeset
1196
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
1197 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
1198 self.db.user.set(self.mary_id,
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
1199 realname='\xe4\xf6\xfc\xc4\xd6\xdc\xdf, Mary'.decode
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
1200 ('latin-1').encode('utf-8'))
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1201 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1202 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
1203 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1204 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
1205 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
1206 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1207 In-Reply-To: <dummy_test_message_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1208 Subject: [issue1] Testing...
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1209 Content-Type: text/plain;
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1210 charset="iso-8859-1"
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1211 Content-Transfer-Encoding: quoted-printable
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1212
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1213 A message with encoding (encoded oe =F6)
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1214
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1215 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1216 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
1217 '''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
1218 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
1219 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
1220 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1221 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
1222 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
1223 <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
1224 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1225 <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
1226 MIME-Version: 1.0
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1227 Message-Id: <followup_dummy_id>
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1228 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
1229 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
1230 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1231 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
1232 Content-Transfer-Encoding: quoted-printable
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1233
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1234
4313
7a6c5c117879 Fix handling of non-ascii in realname in the nosy mailer...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4301
diff changeset
1235 =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
1236 comment:
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1237
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
1238 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
1239
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1240 ----------
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1241 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1242
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1243 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1244 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
1245 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1246 _______________________________________________________________________
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
1247 ''')
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1248
4093
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1249 def testEncNonUTF8(self):
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1250 self.doNewIssue()
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1251 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
1252 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
1253 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1254 From: mary <mary@test.test>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1255 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
1256 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1257 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
1258 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1259 Content-Type: text/plain;
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1260 charset="iso-8859-1"
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1261 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1262
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1263 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
1264
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1265 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1266 self.compareMessages(self._get_mail(),
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1267 '''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
1268 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
1269 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
1270 Subject: [issue1] Testing...
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1271 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
1272 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
1273 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1274 <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
1275 MIME-Version: 1.0
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1276 Message-Id: <followup_dummy_id>
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1277 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
1278 X-Roundup-Name: Roundup issue tracker
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1279 X-Roundup-Loop: hello
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1280 X-Roundup-Issue-Status: chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1281 Content-Transfer-Encoding: quoted-printable
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1282
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1283
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1284 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
1285
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1286 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
1287
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1288 ----------
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1289 status: unread -> chatting
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1290
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1291 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1292 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
1293 <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
1294 _______________________________________________________________________
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1295 ''')
1ebab2e397d0 Add some new encoding tests to mailgw:
Richard Jones <richard@users.sourceforge.net>
parents: 4092
diff changeset
1296
599
08aae4d34622 respect encodings in non multipart messages.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 595
diff changeset
1297
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
1298 def testMultipartEnc01(self):
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 742
diff changeset
1299 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1300 self._handle_mail('''Content-Type: text/plain;
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1301 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1302 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
1303 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
1304 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
1305 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
1306 Subject: [issue1] Testing...
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1307 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
1308 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
1309
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1310 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
1311 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
1312
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1313 ------_=_NextPart_000_01
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1314 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
1315 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
1316 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
1317
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1318 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
1319
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1320 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1321 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
1322 '''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
1323 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
1324 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
1325 Subject: [issue1] Testing...
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1326 To: chef@bork.bork.bork, richard@test.test
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1327 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
1328 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1329 <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
1330 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
1331 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
1332 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
1333 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
1334 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1335 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
1336 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
1337
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1338
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1339 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
1340
1383
f19dde90e473 applied unicode patch
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1340
diff changeset
1341 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
1342
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1343 ----------
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1344 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1345
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1346 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1347 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
1348 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1349 _______________________________________________________________________
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
1350 ''')
595
4c3dcda799f7 add test for multipart messages with first part being encoded.
Engelbert Gruber <grubert@users.sourceforge.net>
parents: 571
diff changeset
1351
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
1352 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
1353 self.doNewIssue()
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1354 self._handle_mail('''Content-Type: text/plain;
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
1355 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1356 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
1357 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
1358 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
1359 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
1360 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
1361 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
1362 Content-Disposition: inline
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1363
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1364
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1365 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1366 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
1367 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
1368
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1369 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
1370
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1371 --bCsyhTFzCvuiizWE
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1372 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
1373 Content-Disposition: attachment; filename="main.dvi"
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1374 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
1375
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1376 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
1377
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
1378 --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
1379 ''')
8dc60d87ab42 Fixed a backlog of bug reports, and worked on python 2.3 compatibility:
Richard Jones <richard@users.sourceforge.net>
parents: 1383
diff changeset
1380 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
1381 messages.sort()
3945
1dd64778bc45 Mail improvements:
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 3939
diff changeset
1382 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
1383 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
1384 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
1385
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1386 def testFollowupStupidQuoting(self):
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1387 self.doNewIssue()
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1388
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1389 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
1390 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1391 From: richard <richard@test.test>
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1392 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
1393 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1394 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
1395 Subject: Re: "[issue1] Testing... "
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1396
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1397 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1398 ''')
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1399 self.compareMessages(self._get_mail(),
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1400 '''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
1401 TO: chef@bork.bork.bork
4092
4b0ddce43d08 migrate from MimeWriter to email
Richard Jones <richard@users.sourceforge.net>
parents: 4005
diff changeset
1402 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
1403 Subject: [issue1] Testing...
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1404 To: chef@bork.bork.bork
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1405 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
1406 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1407 <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
1408 MIME-Version: 1.0
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1409 Message-Id: <followup_dummy_id>
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1410 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
1411 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
1412 X-Roundup-Loop: hello
3966
85e52526a791 mailgw test updates
Richard Jones <richard@users.sourceforge.net>
parents: 3946
diff changeset
1413 X-Roundup-Issue-Status: chatting
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1414 Content-Transfer-Encoding: quoted-printable
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1415
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1416
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1417 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
1418
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1419 This is a followup
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1420
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1421 ----------
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1422 status: unread -> chatting
2098
18addf2a8596 Implemented proper datatypes in mysql and postgresql backends...
Richard Jones <richard@users.sourceforge.net>
parents: 2089
diff changeset
1423
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1424 _______________________________________________________________________
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1425 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
1426 <http://tracker.example/cgi-bin/roundup.cgi/bugs/issue1>
1299
b2d04ce03802 Email improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1222
diff changeset
1427 _______________________________________________________________________
1222
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1428 ''')
bc3bc3248dd1 added Class.find() unit test, fixed implementations
Richard Jones <richard@users.sourceforge.net>
parents: 1176
diff changeset
1429
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1430 def testEmailQuoting(self):
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1431 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'no'
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1432 self.innerTestQuoting('''This is a followup
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1433 ''')
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1434
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1435 def testEmailQuotingRemove(self):
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1436 self.instance.config.EMAIL_KEEP_QUOTED_TEXT = 'yes'
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1437 self.innerTestQuoting('''Blah blah wrote:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1438 > 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
1439 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1440 >
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1441
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1442 This is a followup
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1443 ''')
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1444
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1445 def innerTestQuoting(self, expect):
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1446 nodeid = self.doNewIssue()
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1447
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1448 messages = self.db.issue.get(nodeid, 'messages')
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1449
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1450 self._handle_mail('''Content-Type: text/plain;
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1451 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1452 From: richard <richard@test.test>
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1453 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
1454 Message-Id: <followup_dummy_id>
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1455 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
1456 Subject: Re: [issue1] Testing...
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1457
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1458 Blah blah wrote:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1459 > 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
1460 > skdjlkjsdfalsdkfjasdlfkj dlfksdfalksd fj
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1461 >
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1462
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1463 This is a followup
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1464 ''')
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1465 # figure the new message id
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1466 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
1467 for msg in messages:
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1468 newmessages.remove(msg)
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1469 messageid = newmessages[0]
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1470
1795
08b013acfec8 Message comparison is no longer a straight text comparison...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1793
diff changeset
1471 self.compareMessages(self.db.msg.get(messageid, 'content'), expect)
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1299
diff changeset
1472
1549
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
1473 def testUserLookup(self):
a53a7e197360 fixed rdbms email address lookup (case insensitivity)
Richard Jones <richard@users.sourceforge.net>
parents: 1512
diff changeset
1474 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
1475 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
1476 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
1477 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
1478 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
1479 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
1480
1810
1a8dffd48c1c Add a test for looking up alternate adresses and case-insensitivity.
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1797
diff changeset
1481 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
1482 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
1483 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
1484 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
1485 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
1486
1592
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
1487 def testUserCreate(self):
4074e2336eed fixes to unit tests for recent changes
Richard Jones <richard@users.sourceforge.net>
parents: 1582
diff changeset
1488 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
1489 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
1490
1628
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1491 def testRFC2822(self):
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1492 ascii_header = "[issue243] This is a \"test\" - with 'quotation' marks"
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1493 unicode_header = '[issue244] \xd0\xb0\xd0\xbd\xd0\xb4\xd1\x80\xd0\xb5\xd0\xb9'
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1494 unicode_encoded = '=?utf-8?q?[issue244]_=D0=B0=D0=BD=D0=B4=D1=80=D0=B5=D0=B9?='
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1495 self.assertEqual(rfc2822.encode_header(ascii_header), ascii_header)
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1496 self.assertEqual(rfc2822.encode_header(unicode_header), unicode_encoded)
ea1afeb64b45 more pedantic rfc2822 header qp encoding
Andrey Lebedev <kedder@users.sourceforge.net>
parents: 1620
diff changeset
1497
1792
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1498 def testRegistrationConfirmation(self):
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1499 otk = "Aj4euk4LZSAdwePohj90SME5SpopLETL"
2089
93f03c6714d8 A few big changes in this commit:
Richard Jones <richard@users.sourceforge.net>
parents: 1984
diff changeset
1500 self.db.getOTKManager().set(otk, username='johannes')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1501 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
1502 charset="iso-8859-1"
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1503 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
1504 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
1505 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
1506 Message-Id: <dummy_test_message_id>
2709
6b5c77c03231 testRegistrationConfirmation: remove CR...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2705
diff changeset
1507 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
1508 -- key %s
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1509
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1510 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
1511 ''' % otk)
2cd528577108 mailgw now accepts registration confirmation mail that uses otk
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1628
diff changeset
1512 self.db.user.lookup('johannes')
1859
492a962b6d6f Make signature matching more precise: only match '-- '...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1811
diff changeset
1513
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
1514 def testFollowupOnNonIssue(self):
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
1515 self.db.keyword.create(name='Foo')
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1516 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
1517 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1518 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
1519 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
1520 Message-Id: <followup_dummy_id>
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
1521 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
1522 Subject: [keyword1] Testing... [name=Bar]
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
1523
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1524 ''')
1887
9d8d5fa0d9ad Don't rely on being about an issue...
Johannes Gijsbers <jlgijsbers@users.sourceforge.net>
parents: 1873
diff changeset
1525 self.assertEqual(self.db.keyword.get('1', 'name'), 'Bar')
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1526
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1527 def testResentFrom(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1528 nodeid = self._handle_mail('''Content-Type: text/plain;
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1529 charset="iso-8859-1"
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1530 From: Chef <chef@bork.bork.bork>
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1531 Resent-From: mary <mary@test.test>
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1532 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
1533 Cc: richard@test.test
1915
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1534 Message-Id: <dummy_test_message_id>
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1535 Subject: [issue] Testing...
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1536
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1537 This is a test submission of a new issue.
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1538 ''')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1539 assert not os.path.exists(SENDMAILDEBUG)
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1540 l = self.db.issue.get(nodeid, 'nosy')
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1541 l.sort()
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1542 self.assertEqual(l, [self.richard_id, self.mary_id])
20cfd25cffda Resent-From: header
Richard Jones <richard@users.sourceforge.net>
parents: 1905
diff changeset
1543 return nodeid
1945
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1544
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1545 def testDejaVu(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1546 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
1547 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1548 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1549 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
1550 X-Roundup-Loop: hello
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1551 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
1552 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
1553 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
1554 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1555
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1556 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
1557 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1558
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1559 def testItsBulkStupid(self):
1984
18e77fe2a669 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1945
diff changeset
1560 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
1561 '''Content-Type: text/plain;
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1562 charset="iso-8859-1"
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1563 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
1564 Precedence: bulk
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1565 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
1566 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
1567 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
1568 Subject: Re: [issue] Testing...
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1569
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1570 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
1571 ''')
7e4058dfb29b ignore incoming email with "Precedence: bulk" (patch [SF#843489])
Richard Jones <richard@users.sourceforge.net>
parents: 1915
diff changeset
1572
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1573 def testAutoReplyEmailsAreIgnored(self):
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1574 self.assertRaises(IgnoreBulk, self._handle_mail,
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1575 '''Content-Type: text/plain;
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1576 charset="iso-8859-1"
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1577 From: Chef <chef@bork.bork.bork>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1578 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
1579 Cc: richard@test.test
3171
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1580 Message-Id: <dummy_test_message_id>
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1581 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
1582
3810
4536c0e544be Bah! The python-mode in my emacs is borked by this line,,,
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3809
diff changeset
1583 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
1584 ''')
cfe7d8cb9794 ignore AutoReply messages (patch [SF#1085051])
Richard Jones <richard@users.sourceforge.net>
parents: 2822
diff changeset
1585
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1586 def testNoSubject(self):
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1587 self.assertRaises(MailUsageError, self._handle_mail,
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1588 '''Content-Type: text/plain;
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1589 charset="iso-8859-1"
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1590 From: Chef <chef@bork.bork.bork>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1591 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
1592 Cc: richard@test.test
3367
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1593 Reply-To: chef@bork.bork.bork
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1594 Message-Id: <dummy_test_message_id>
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1595
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1596 ''')
a23863a95326 handle missing Subject lines better [SF#1198729]
Richard Jones <richard@users.sourceforge.net>
parents: 3171
diff changeset
1597
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1598 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1599 # TEST FOR INVALID DESIGNATOR HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1600 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1601 def testInvalidDesignator(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1602 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
1603 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1604 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1605 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
1606 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
1607 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1608 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1609 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
1610 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
1611
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1612 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1613 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
1614 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1615 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1616 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
1617 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
1618 Subject: [issue12345] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1619 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1620 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
1621 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
1622
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1623 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1624
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1625 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1626 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
1627 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
1628 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1629 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
1630 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
1631 Subject: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1632 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1633 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
1634 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
1635
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1636 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1637 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
1638 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
1639 '[frobulated] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1640
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1641 def testInvalidClassLooseReply(self):
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1642 self.instance.config.MAILGW_SUBJECT_PREFIX_PARSING = 'loose'
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1643 nodeid = self._handle_mail('''Content-Type: text/plain;
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1644 charset="iso-8859-1"
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1645 From: Chef <chef@bork.bork.bork>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1646 To: issue_tracker@your.tracker.email.domain.example
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1647 Subject: Re: [frobulated] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1648 Cc: richard@test.test
3815
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1649 Reply-To: chef@bork.bork.bork
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1650 Message-Id: <dummy_test_message_id>
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1651
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1652 ''')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1653 assert not os.path.exists(SENDMAILDEBUG)
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1654 self.assertEqual(self.db.issue.get(nodeid, 'title'),
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1655 '[frobulated] testing')
2b63b1689cef Fixes to mailgw subject parsing
Richard Jones <richard@users.sourceforge.net>
parents: 3813
diff changeset
1656
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1657 def testInvalidClassLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1658 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
1659 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
1660 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1661 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
1662 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
1663 Subject: [issue1234] testing
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1664 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1665 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
1666 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
1667
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1668 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1669 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
1670 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
1671 '[issue1234] testing')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1672
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1673 def testClassLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1674 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
1675 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
1676 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
1677 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1678 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
1679 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
1680 Subject: [keyword1] Testing... [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1681 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1682 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
1683 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
1684
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1685 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1686 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
1687 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
1688
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1689 def testClassStrictInvalid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1690 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
1691 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1692
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1693 message = '''Content-Type: text/plain;
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1694 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1695 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1696 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
1697 Subject: Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1698 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1699 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1700 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1701
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1702 '''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1703 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
1704
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1705 def testClassStrictValid(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1706 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
1707 self.instance.config.MAILGW_DEFAULT_CLASS = ''
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1708
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1709 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
1710 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1711 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1712 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
1713 Subject: [issue] Testing...
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1714 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1715 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1716 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1717
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1718 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1719
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1720 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1721 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
1722
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1723 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1724 # TEST FOR INVALID COMMANDS HANDLING
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1725 #
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1726 def testInvalidCommands(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1727 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
1728 '''Content-Type: text/plain;
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1729 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1730 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
1731 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
1732 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1733 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1734 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
1735 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
1736
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1737 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1738
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1739 def testInvalidCommandPassthrough(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1740 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
1741 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
1742 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1743 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
1744 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
1745 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1746 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1747 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
1748 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
1749
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1750 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1751 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
1752 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
1753 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1754
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1755 def testInvalidCommandPassthroughLoose(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1756 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
1757 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
1758 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1759 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
1760 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
1761 Subject: testing [frobulated]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1762 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1763 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
1764 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
1765
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1766 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1767 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
1768 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
1769 'testing [frobulated]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1770
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1771 def testInvalidCommandPassthroughLooseOK(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1772 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
1773 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
1774 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1775 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
1776 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
1777 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1778 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1779 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
1780 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
1781
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1782 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1783 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
1784 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
1785 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
1786
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1787 def testCommandDelimiters(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1788 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
1789 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
1790 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1791 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
1792 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
1793 Subject: testing {assignedto=mary}
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1794 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1795 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
1796 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
1797
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1798 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1799 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
1800 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
1801 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
1802
3724
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
1803 def testPrefixDelimiters(self):
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
1804 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
1805 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
1806 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
1807 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1808 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
1809 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
1810 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
1811 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
1812 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
1813
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
1814 ''')
b4d655b2aacf E-mail subject line prefix delimiter configuration was being ignored
Richard Jones <richard@users.sourceforge.net>
parents: 3678
diff changeset
1815 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
1816 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
1817
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1818 def testCommandDelimitersIgnore(self):
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1819 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
1820 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
1821 charset="iso-8859-1"
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1822 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
1823 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
1824 Subject: testing [assignedto=mary]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1825 Cc: richard@test.test
3417
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1826 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
1827 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
1828
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1829 ''')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1830 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
1831 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
1832 'testing [assignedto=mary]')
07c696890f55 mailgw subject parsing has configurable levels of strictness
Richard Jones <richard@users.sourceforge.net>
parents: 3367
diff changeset
1833 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
1834
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
1835 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
1836 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
1837 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
1838 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
1839 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
1840 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
1841 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
1842 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
1843 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
1844 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
1845
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
1846 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
1847 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
1848
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
1849 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
1850 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
1851 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
1852 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
1853 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
1854 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
1855 Subject: Testing...
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
1856
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
1857 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
1858 ''')
3811
ccd55dc53410 Make functionality for matching In-Reply-To and Message-Id work...
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3810
diff changeset
1859
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
1860 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
1861 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
1862
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1863 def testHelpSubject(self):
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1864 message = '''Content-Type: text/plain;
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1865 charset="iso-8859-1"
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1866 From: Chef <chef@bork.bork.bork>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1867 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
1868 Message-Id: <dummy_test_message_id2>
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1869 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
1870 Subject: hElp
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1871
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1872
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1873 '''
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1874 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
1875
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1876 def testMaillistSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1877 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
1878 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
1879 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
1880 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1881 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1882 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
1883 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
1884 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1885 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1886 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1887
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1888 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1889
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1890 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1891 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
1892
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1893 def testUnknownPrefixSubject(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1894 self.db.keyword.create(name='Foo')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1895 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
1896 charset="iso-8859-1"
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1897 From: Chef <chef@bork.bork.bork>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1898 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
1899 Subject: VeryStrangeRe: [keyword1] Testing.. [name=Bar]
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1900 Cc: richard@test.test
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1901 Reply-To: chef@bork.bork.bork
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1902 Message-Id: <dummy_test_message_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1903
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1904 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1905
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1906 assert not os.path.exists(SENDMAILDEBUG)
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1907 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
1908
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1909 def testIssueidLast(self):
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1910 nodeid1 = self.doNewIssue()
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1911 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
1912 charset="iso-8859-1"
3902
21420ba64b0d fuller email validition (request [SF#216291])
Justus Pendleton <jpend@users.sourceforge.net>
parents: 3892
diff changeset
1913 From: mary <mary@test.test>
3813
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1914 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
1915 Message-Id: <followup_dummy_id>
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1916 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
1917 Subject: New title [issue1]
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1918
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1919 This is a second followup
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1920 ''')
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1921
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1922 assert nodeid1 == nodeid2
23470ece29de Modified subject line parser in mail gateway.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3812
diff changeset
1923 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
1924
4289
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1925 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
1926 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
1927 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
1928 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
1929 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
1930 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
1931 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
1932 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
1933 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
1934 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
1935 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
1936 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
1937 To: 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
1938 Message-Id: <dummy_test_message_id>
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1939 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
1940
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1941 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
1942 '''%locals())
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1943 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
1944 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
1945 '''FROM: roundup-admin@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
1946 TO: chef@bork.bork.bork, 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
1947 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
1948 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
1949 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
1950 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
1951 Reply-To: Roundup issue tracker
ac3f80e39d7a handle quoting/escaping specials after encoding;
Richard Jones <richard@users.sourceforge.net>
parents: 4313
diff changeset
1952 <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
1953 MIME-Version: 1.0
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1954 Message-Id: <dummy_test_message_id>
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1955 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
1956 X-Roundup-Loop: hello
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1957 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
1958 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
1959
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1960
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1961 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
1962
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1963 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
1964
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1965 ----------
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1966 nosy: +mary
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1967 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
1968
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1969 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1970 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
1971 <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
1972 _______________________________________________________________________
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1973 ''')
7275e3dec0e0 Fix security-problem: If user hasn't permission on a message...
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents: 4215
diff changeset
1974
3812
27b589d3b79d Added simple test for 'Subject: help' functionality.
Erik Forsberg <forsberg@users.sourceforge.net>
parents: 3811
diff changeset
1975
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1976 def test_suite():
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1977 suite = unittest.TestSuite()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1978 suite.addTest(unittest.makeSuite(MailgwTestCase))
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1979 return suite
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1980
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1981 if __name__ == '__main__':
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1982 runner = unittest.TextTestRunner()
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1869
diff changeset
1983 unittest.main(testRunner=runner)
475
a1a44636bace Fix breakage caused by transaction changes.
Richard Jones <richard@users.sourceforge.net>
parents:
diff changeset
1984
2705
d81a7b03435f init.initialize() was removed in r1.30 (27-jul-2004)
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2229
diff changeset
1985 # vim: set filetype=python sts=4 sw=4 et si :

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