Mercurial > genshi > genshi-test
changeset 920:f4bf11c716cc experimental-py3k
Fix handling of QNames with leading open curly braces. See Genshi ticket #413.
author | hodgestar |
---|---|
date | Mon, 29 Nov 2010 20:20:56 +0000 |
parents | d85416d3a26c |
children | 178c32ec7700 |
files | genshi/core.py genshi/tests/core.py |
diffstat | 2 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/genshi/core.py +++ b/genshi/core.py @@ -722,7 +722,8 @@ if type(qname) is cls: return qname - parts = qname.lstrip('{').split('}', 1) + qname = qname.lstrip('{') + parts = qname.split('}', 1) if len(parts) > 1: self = unicode.__new__(cls, '{%s' % qname) self.namespace, self.localname = map(unicode, parts)
--- a/genshi/tests/core.py +++ b/genshi/tests/core.py @@ -234,6 +234,13 @@ self.assertEquals('http://www.example.org/namespace', qname.namespace) self.assertEquals('elem', qname.localname) + def test_curly_brace_equality(self): + qname1 = QName('{http://www.example.org/namespace}elem') + qname2 = QName('http://www.example.org/namespace}elem') + self.assertEqual(qname1.namespace, qname2.namespace) + self.assertEqual(qname1.localname, qname2.localname) + self.assertEqual(qname1, qname2) + def suite(): suite = unittest.TestSuite()