annotate test/test_mailgw.py @ 4092:4b0ddce43d08

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

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