Mercurial > p > roundup > code
annotate test/test_rfc2822.py @ 3909:e89bcb28f683
indexargs_url force ids to int
ids appear as hyperdb.String instances, which confused indexargs_url when they
appear in the filterspec. They need to be treated as treated as integers when
generating URLs.
It feels sort of hacky to check for 'id' like this but I'm at a loss for what
else to do in this case. Suggestions are welcome :)
Maybe we should look into using some other hyperdb class to represent ids?
this fixes [SF#783492]
Some trailing whitespace also got trimmed.
| author | Justus Pendleton <jpend@users.sourceforge.net> |
|---|---|
| date | Tue, 18 Sep 2007 16:59:42 +0000 |
| parents | 97f9fc0bc0ea |
| children |
| rev | line source |
|---|---|
|
3519
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 from roundup.rfc2822 import decode_header, encode_header |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
2 |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 import unittest, time |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 class RFC2822TestCase(unittest.TestCase): |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 def testDecode(self): |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 src = 'Re: [it_issue3] '\ |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 '=?ISO-8859-1?Q?Ren=E9s_[resp=3Dg=2Cstatus=3D?= '\ |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
9 '=?ISO-8859-1?Q?feedback]?=' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 result = 'Re: [it_issue3] Ren\xc3\xa9s [resp=g,status=feedback]' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 self.assertEqual(decode_header(src), result) |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 src = 'Re: [it_issue3]'\ |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
14 ' =?ISO-8859-1?Q?Ren=E9s_[resp=3Dg=2Cstatus=3D?=' \ |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
15 ' =?ISO-8859-1?Q?feedback]?=' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
16 result = 'Re: [it_issue3] Ren\xc3\xa9s [resp=g,status=feedback]' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
17 self.assertEqual(decode_header(src), result) |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
18 |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
19 def testEncode(self): |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
20 src = 'Re: [it_issue3] Ren\xc3\xa9s [status=feedback]' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
21 result = '=?utf-8?q?Re:_[it=5Fissue3]_Ren=C3=A9s_[status=3Dfeedback]?=' |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
22 self.assertEqual(encode_header(src), result) |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
23 |
|
3639
97f9fc0bc0ea
Yet another rfc2822 encoding patch: '?' must be escaped.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents:
3519
diff
changeset
|
24 src = 'Was machen\xc3\xbc und Fragezeichen?' |
|
97f9fc0bc0ea
Yet another rfc2822 encoding patch: '?' must be escaped.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents:
3519
diff
changeset
|
25 result = '=?utf-8?q?Was_machen=C3=BC_und_Fragezeichen=3F?=' |
|
97f9fc0bc0ea
Yet another rfc2822 encoding patch: '?' must be escaped.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents:
3519
diff
changeset
|
26 self.assertEqual(encode_header(src), result) |
|
97f9fc0bc0ea
Yet another rfc2822 encoding patch: '?' must be escaped.
Ralf Schlatterbeck <schlatterbeck@users.sourceforge.net>
parents:
3519
diff
changeset
|
27 |
|
3519
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
28 def test_suite(): |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
29 suite = unittest.TestSuite() |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
30 suite.addTest(unittest.makeSuite(RFC2822TestCase)) |
|
0c34f5a116ef
additional header encode/decode fixes
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
31 return suite |
