Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(15)

Side by Side Diff: third_party/twisted_8_1/twisted/words/test/test_jabberxmppstringprep.py

Issue 12261012: Remove third_party/twisted_8_1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 # Copyright (c) 2005 Twisted Matrix Laboratories.
2 # See LICENSE for details.
3
4 from twisted.trial import unittest
5
6 from twisted.words.protocols.jabber.xmpp_stringprep import nodeprep, resourcepre p, nameprep, crippled
7
8 class XMPPStringPrepTest(unittest.TestCase):
9 """
10
11 The nodeprep stringprep profile is similar to the resourceprep profile,
12 but does an extra mapping of characters (table B.2) and disallows
13 more characters (table C.1.1 and eight extra punctuation characters).
14 Due to this similarity, the resourceprep tests are more extensive, and
15 the nodeprep tests only address the mappings additional restrictions.
16
17 The nameprep profile is nearly identical to the nameprep implementation in
18 L{encodings.idna}, but that implementation assumes the C{UseSTD4ASCIIRules}
19 flag to be false. This implementation assumes it to be true, and restricts
20 the allowed set of characters. The tests here only check for the
21 differences.
22
23 """
24
25 def testResourcePrep(self):
26 self.assertEquals(resourceprep.prepare(u'resource'), u'resource')
27 self.assertNotEquals(resourceprep.prepare(u'Resource'), u'resource')
28 self.assertEquals(resourceprep.prepare(u' '), u' ')
29
30 if crippled:
31 return
32
33 self.assertEquals(resourceprep.prepare(u'Henry \u2163'), u'Henry IV')
34 self.assertEquals(resourceprep.prepare(u'foo\xad\u034f\u1806\u180b'
35 u'bar\u200b\u2060'
36 u'baz\ufe00\ufe08\ufe0f\ufeff'),
37 u'foobarbaz')
38 self.assertEquals(resourceprep.prepare(u'\u00a0'), u' ')
39 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u1680')
40 self.assertEquals(resourceprep.prepare(u'\u2000'), u' ')
41 self.assertEquals(resourceprep.prepare(u'\u200b'), u'')
42 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u0010\u007f')
43 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u0085')
44 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u180e')
45 self.assertEquals(resourceprep.prepare(u'\ufeff'), u'')
46 self.assertRaises(UnicodeError, resourceprep.prepare, u'\uf123')
47 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U000f1234')
48 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U0010f234')
49 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U0008fffe')
50 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U0010ffff')
51 self.assertRaises(UnicodeError, resourceprep.prepare, u'\udf42')
52 self.assertRaises(UnicodeError, resourceprep.prepare, u'\ufffd')
53 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u2ff5')
54 self.assertEquals(resourceprep.prepare(u'\u0341'), u'\u0301')
55 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u200e')
56 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u202a')
57 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U000e0001')
58 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U000e0042')
59 self.assertRaises(UnicodeError, resourceprep.prepare, u'foo\u05bebar')
60 self.assertRaises(UnicodeError, resourceprep.prepare, u'foo\ufd50bar')
61 #self.assertEquals(resourceprep.prepare(u'foo\ufb38bar'),
62 # u'foo\u064ebar')
63 self.assertRaises(UnicodeError, resourceprep.prepare, u'\u06271')
64 self.assertEquals(resourceprep.prepare(u'\u06271\u0628'),
65 u'\u06271\u0628')
66 self.assertRaises(UnicodeError, resourceprep.prepare, u'\U000e0002')
67
68 def testNodePrep(self):
69 self.assertEquals(nodeprep.prepare(u'user'), u'user')
70 self.assertEquals(nodeprep.prepare(u'User'), u'user')
71 self.assertRaises(UnicodeError, nodeprep.prepare, u'us&er')
72
73 def testNamePrep(self):
74 self.assertEquals(nameprep.prepare(u'example.com'), u'example.com')
75 self.assertEquals(nameprep.prepare(u'Example.com'), u'example.com')
76 self.assertRaises(UnicodeError, nameprep.prepare, u'ex@mple.com')
77 self.assertRaises(UnicodeError, nameprep.prepare, u'-example.com')
78 self.assertRaises(UnicodeError, nameprep.prepare, u'example-.com')
79
80 if crippled:
81 return
82
83 self.assertEquals(nameprep.prepare(u'stra\u00dfe.example.com'),
84 u'strasse.example.com')
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698