Author: scoder
Date: Fri May 11 19:01:49 2007
New Revision: 43235
Modified:
lxml/trunk/selftest.py
lxml/trunk/selftest2.py
Log:
enabled some more ET selftests (rest is broken due to different serialisation)
Modified: lxml/trunk/selftest.py
==============================================================================
--- lxml/trunk/selftest.py (original)
+++ lxml/trunk/selftest.py Fri May 11 19:01:49 2007
@@ -272,28 +272,31 @@
## '<p>spam<b>egg</b></p>'
## """
-## def parseliteral():
-## r"""
-## >>> element = ElementTree.XML("<html><body>text</body></html>")
-## >>> ElementTree.ElementTree(element).write(sys.stdout)
-## <html><body>text</body></html>
-## >>> element = ElementTree.fromstring("<html><body>text</body></html>")
-## >>> ElementTree.ElementTree(element).write(sys.stdout)
-## <html><body>text</body></html>
-## >>> print ElementTree.tostring(element)
-## <html><body>text</body></html>
-## >>> print ElementTree.tostring(element, "ascii")
-## <?xml version='1.0' encoding='ascii'?>
-## <html><body>text</body></html>
-## >>> _, ids = ElementTree.XMLID("<html><body>text</body></html>")
-## >>> len(ids)
-## 0
-## >>> _, ids = ElementTree.XMLID("<html><body
id='body'>text</body></html>")
-## >>> len(ids)
-## 1
-## >>> ids["body"].tag
-## 'body'
-## """
+def parseliteral():
+ r"""
+ >>> element = ElementTree.XML("<html><body>text</body></html>")
+ >>> ElementTree.ElementTree(element).write(sys.stdout)
+ <html><body>text</body></html>
+ >>> element = ElementTree.fromstring("<html><body>text</body></html>")
+ >>> ElementTree.ElementTree(element).write(sys.stdout)
+ <html><body>text</body></html>
+ >>> print ElementTree.tostring(element)
+ <html><body>text</body></html>
+
+# looks different in lxml
+# >>> print ElementTree.tostring(element, "ascii")
+# <?xml version='1.0' encoding='ascii'?>
+# <html><body>text</body></html>
+
+ >>> _, ids = ElementTree.XMLID("<html><body>text</body></html>")
+ >>> len(ids)
+ 0
+ >>> _, ids = ElementTree.XMLID("<html><body id='body'>text</body></html>")
+ >>> len(ids)
+ 1
+ >>> ids["body"].tag
+ 'body'
+ """
## def simpleparsefile():
## """
@@ -519,16 +522,18 @@
## """
-## def xmllang():
-## """
-## This appears to be a problem; in underlying libxml2?
+def xmllang():
+ """
+ This appears to be a problem; in underlying libxml2?
-## 1) xml namespace
+ 1) xml namespace
-## >>> elem = ElementTree.XML("<tag xml:lang='en' />")
-## >>> serialize(elem) # 1.1
-## '<tag xml:lang="en" />'
-## """
+ >>> elem = ElementTree.XML("<tag xml:lang='en' />")
+ >>> serialize(elem) # 1.1
+ '<tag xml:lang="en"/>'
+
+# '<tag xml:lang="en" />' # ElementTree produces an extra blank
+ """
def namespace():
"""
Modified: lxml/trunk/selftest2.py
==============================================================================
--- lxml/trunk/selftest2.py (original)
+++ lxml/trunk/selftest2.py Fri May 11 19:01:49 2007
@@ -133,30 +133,30 @@
'<tag>text<subtag>subtext</subtag></tag>'
"""
-## def encoding():
-## r"""
-## Test encoding issues.
+def encoding():
+ r"""
+ Test encoding issues.
-## >>> elem = ElementTree.Element("tag")
-## >>> elem.text = u"abc"
-## >>> serialize(elem)
-## '<tag>abc</tag>'
-## >>> serialize(elem, "utf-8")
-## '<tag>abc</tag>'
-## >>> serialize(elem, "us-ascii")
-## '<tag>abc</tag>'
-## >>> serialize(elem, "iso-8859-1")
-## "<?xml version='1.0' encoding='iso-8859-1'?>\n<tag>abc</tag>"
+ >>> elem = ElementTree.Element("tag")
+ >>> elem.text = u"abc"
+ >>> serialize(elem)
+ '<tag>abc</tag>'
+ >>> serialize(elem, "utf-8")
+ '<tag>abc</tag>'
+ >>> serialize(elem, "us-ascii")
+ '<tag>abc</tag>'
+ >>> serialize(elem, "iso-8859-1").lower()
+ "<?xml version='1.0' encoding='iso-8859-1'?>\n<tag>abc</tag>"
-## >>> elem.text = "<&\"\'>"
-## >>> serialize(elem)
-## '<tag><&"\'></tag>'
-## >>> serialize(elem, "utf-8")
-## '<tag><&"\'></tag>'
-## >>> serialize(elem, "us-ascii") # cdata characters
-## '<tag><&"\'></tag>'
-## >>> serialize(elem, "iso-8859-1")
-## '<?xml version=\'1.0\'
encoding=\'iso-8859-1\'?>\n<tag><&"\'></tag>'
+ >>> elem.text = "<&\"\'>"
+ >>> serialize(elem)
+ '<tag><&"\'></tag>'
+ >>> serialize(elem, "utf-8")
+ '<tag><&"\'></tag>'
+ >>> serialize(elem, "us-ascii") # cdata characters
+ '<tag><&"\'></tag>'
+ >>> serialize(elem, "iso-8859-1").lower()
+ '<?xml version=\'1.0\'
encoding=\'iso-8859-1\'?>\n<tag><&"\'></tag>'
## >>> elem.attrib["key"] = "<&\"\'>"
## >>> elem.text = None
@@ -169,16 +169,16 @@
## >>> serialize(elem, "iso-8859-1")
## '<?xml version=\'1.0\' encoding=\'iso-8859-1\'?>\n<tag
key="<&"'>" />'
-## >>> elem.text = u'\xe5\xf6\xf6<>'
-## >>> elem.attrib.clear()
-## >>> serialize(elem)
-## '<tag>åöö<></tag>'
-## >>> serialize(elem, "utf-8")
-## '<tag>\xc3\xa5\xc3\xb6\xc3\xb6<></tag>'
-## >>> serialize(elem, "us-ascii")
-## '<tag>åöö<></tag>'
-## >>> serialize(elem, "iso-8859-1")
-## "<?xml version='1.0'
encoding='iso-8859-1'?>\n<tag>\xe5\xf6\xf6<></tag>"
+ >>> elem.text = u'\xe5\xf6\xf6<>'
+ >>> elem.attrib.clear()
+ >>> serialize(elem)
+ '<tag>åöö<></tag>'
+ >>> serialize(elem, "utf-8")
+ '<tag>\xc3\xa5\xc3\xb6\xc3\xb6<></tag>'
+ >>> serialize(elem, "us-ascii")
+ '<tag>åöö<></tag>'
+ >>> serialize(elem, "iso-8859-1").lower()
+ "<?xml version='1.0'
encoding='iso-8859-1'?>\n<tag>\xe5\xf6\xf6<></tag>"
## >>> elem.attrib["key"] = u'\xe5\xf6\xf6<>'
## >>> elem.text = None
@@ -191,25 +191,25 @@
## >>> serialize(elem, "iso-8859-1")
## '<?xml version=\'1.0\' encoding=\'iso-8859-1\'?>\n<tag
key="\xe5\xf6\xf6<>" />'
-## """
+ """
-## def qname():
-## """
-## Test QName handling.
+def qname():
+ """
+ Test QName handling.
-## 1) decorated tags
+ 1) decorated tags
-## >>> elem = ElementTree.Element("{uri}tag")
-## >>> serialize(elem) # 1.1
-## '<ns0:tag xmlns:ns0="uri" />'
+ >>> elem = ElementTree.Element("{uri}tag")
+ >>> serialize(elem) # 1.1
+ '<ns0:tag xmlns:ns0="uri"/>'
## 2) decorated attributes
## >>> elem.attrib["{uri}key"] = "value"
## >>> serialize(elem) # 2.1
-## '<ns0:tag ns0:key="value" xmlns:ns0="uri" />'
+## '<ns0:tag ns0:key="value" xmlns:ns0="uri"/>'
-## """
+ """
def cdata():
"""
|