comparison genshi/tests/core.py @ 857:24733a5854d9

Avoid unicode literals in `repr`s of `QName` and `Namespace` when not necessary.
author cmlenz
date Thu, 12 Nov 2009 15:09:26 +0000
parents 0d9e87c6cf6e
children 37fb3988647a
comparison
equal deleted inserted replaced
856:1e2be9fb3348 857:24733a5854d9
180 self.assertEqual(u'fööbär', attrs_tuple[1]) 180 self.assertEqual(u'fööbär', attrs_tuple[1])
181 181
182 182
183 class NamespaceTestCase(unittest.TestCase): 183 class NamespaceTestCase(unittest.TestCase):
184 184
185 def test_pickle(self): 185 def test_repr(self):
186 self.assertEqual("Namespace('http://www.example.org/namespace')",
187 repr(Namespace('http://www.example.org/namespace')))
188
189 def test_repr_eval(self):
186 ns = Namespace('http://www.example.org/namespace') 190 ns = Namespace('http://www.example.org/namespace')
191 self.assertEqual(eval(repr(ns)), ns)
192
193 def test_repr_eval_non_ascii(self):
194 ns = Namespace(u'http://www.example.org/nämespäcé')
195 self.assertEqual(eval(repr(ns)), ns)
196
197 def test_pickle(self):
198 ns = Namespace('http://www.example.org/namespace')
187 buf = StringIO() 199 buf = StringIO()
188 pickle.dump(ns, buf, 2) 200 pickle.dump(ns, buf, 2)
189 buf.seek(0) 201 buf.seek(0)
190 unpickled = pickle.load(buf) 202 unpickled = pickle.load(buf)
191 self.assertEquals('<Namespace "http://www.example.org/namespace">', 203 self.assertEquals("Namespace('http://www.example.org/namespace')",
192 repr(unpickled)) 204 repr(unpickled))
193 self.assertEquals('http://www.example.org/namespace', unpickled.uri) 205 self.assertEquals('http://www.example.org/namespace', unpickled.uri)
194 206
195 207
196 class QNameTestCase(unittest.TestCase): 208 class QNameTestCase(unittest.TestCase):
205 self.assertEquals('http://www.example.org/namespace', 217 self.assertEquals('http://www.example.org/namespace',
206 unpickled.namespace) 218 unpickled.namespace)
207 self.assertEquals('elem', unpickled.localname) 219 self.assertEquals('elem', unpickled.localname)
208 220
209 def test_repr(self): 221 def test_repr(self):
210 self.assertEqual("QName(u'elem')", repr(QName('elem'))) 222 self.assertEqual("QName('elem')", repr(QName('elem')))
211 self.assertEqual("QName(u'http://www.example.org/namespace}elem')", 223 self.assertEqual("QName('http://www.example.org/namespace}elem')",
212 repr(QName('http://www.example.org/namespace}elem'))) 224 repr(QName('http://www.example.org/namespace}elem')))
225
226 def test_repr_eval(self):
227 qn = QName('elem')
228 self.assertEqual(eval(repr(qn)), qn)
229
230 def test_repr_eval_non_ascii(self):
231 qn = QName(u'élem')
232 self.assertEqual(eval(repr(qn)), qn)
213 233
214 def test_leading_curly_brace(self): 234 def test_leading_curly_brace(self):
215 qname = QName('{http://www.example.org/namespace}elem') 235 qname = QName('{http://www.example.org/namespace}elem')
216 self.assertEquals('http://www.example.org/namespace', qname.namespace) 236 self.assertEquals('http://www.example.org/namespace', qname.namespace)
217 self.assertEquals('elem', qname.localname) 237 self.assertEquals('elem', qname.localname)
218
219 def test_non_ascii(self):
220 qname = QName(u'http://www.example.org/namespace}gürü')
221 self.assertEqual(u'gürü', qname.localname)
222 238
223 239
224 def suite(): 240 def suite():
225 suite = unittest.TestSuite() 241 suite = unittest.TestSuite()
226 suite.addTest(unittest.makeSuite(StreamTestCase, 'test')) 242 suite.addTest(unittest.makeSuite(StreamTestCase, 'test'))
Copyright (C) 2012-2017 Edgewall Software