[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/ambv/html5lib-python/python3-old/html5-tests.patch [Back]  [Original]

Index: src/html5lib/treebuilders/dom.py
===================================================================
--- src/html5lib/treebuilders/dom.py	(revision 1118)
+++ src/html5lib/treebuilders/dom.py	(working copy)
@@ -137,16 +137,21 @@
         rv = []
         def serializeElement(element, indent=0):
             if element.nodeType == Node.DOCUMENT_TYPE_NODE:
-                if element.name:
-                    rv.append("|%s"%(' '*indent, element.name))
+                if element.publicId:
+                    if element.systemId:
+                        rv.append('|%s'%(' '*indent, element.name or "", element.publicId, element.systemId))
+                    else:
+                        rv.append('|%s'%(' '*indent, element.name or "", element.publicId))
+                elif element.systemId:
+                    rv.append('|%s'%(' '*indent, element.name or "", element.systemId))
                 else:
-                    rv.append("|%s"%(' '*indent,))
+                    rv.append("|%s"%(' '*indent, element.name or ""))
             elif element.nodeType == Node.DOCUMENT_NODE:
                 rv.append("#document")
             elif element.nodeType == Node.DOCUMENT_FRAGMENT_NODE:
                 rv.append("#document-fragment")
             elif element.nodeType == Node.COMMENT_NODE:
-                rv.append("|%s"%(' '*indent, element.nodeValue))
+                rv.append("|%s"%(' '*indent, element.nodeValue))
             elif element.nodeType == Node.TEXT_NODE:
                 rv.append("|%s\"%s\"" %(' '*indent, element.nodeValue))
             else:
Index: src/html5lib/treebuilders/etree.py
===================================================================
--- src/html5lib/treebuilders/etree.py	(revision 1118)
+++ src/html5lib/treebuilders/etree.py	(working copy)
@@ -169,7 +169,15 @@
             if not(hasattr(element, "tag")):
                 element = element.getroot()
             if element.tag == "":
-                rv.append("|%s"%(' '*indent, element.text))
+                if element.get("publicId"):
+                    if element.get("systemId"):
+                        rv.append('|%s'%(' '*indent, element.text, element.get("publicId"), element.get("systemId")))
+                    else:
+                        rv.append('|%s'%(' '*indent, element.text, element.get("publicId")))
+                elif element.get("systemId"):
+                    rv.append('|%s'%(' '*indent, element.text, element.get("systemId")))
+                else:
+                    rv.append("|%s"%(' '*indent, element.text))
             elif element.tag == "":
                 rv.append("#document")
                 if element.text:
@@ -177,7 +185,7 @@
                 if element.tail:
                     finalText = element.tail
             elif type(element.tag) == type(ElementTree.Comment):
-                rv.append("|%s"%(' '*indent, element.text))
+                rv.append("|%s"%(' '*indent, element.text))
             else:
                 rv.append("|%s"%(' '*indent, element.tag))
                 if hasattr(element, "attrib"):
Index: src/html5lib/treebuilders/etree_lxml.py
===================================================================
--- src/html5lib/treebuilders/etree_lxml.py	(revision 1118)
+++ src/html5lib/treebuilders/etree_lxml.py	(working copy)
@@ -50,12 +50,19 @@
         if not hasattr(element, "tag"):
             rv.append("#document")
             if element.docinfo.internalDTD:
-                if not (element.docinfo.public_id or element.docinfo.system_url):
+                if element.docinfo.public_id:
+                    if element.docinfo.system_url:
+                        dtd_str = """"""%(
+                            element.docinfo.root_name, element.docinfo.public_id,
+                            element.docinfo.system_url)
+                    else:
+                        dtd_str = """"""%(
+                            element.docinfo.root_name, element.docinfo.public_id)
+                elif element.docinfo.system_url:
+                    dtd_str = """"""%(
+                        element.docinfo.root_name, element.docinfo.system_url)
+                else:
                     dtd_str = ""%element.docinfo.root_name
-                else:
-                    dtd_str = """"""%(
-                        element.docinfo.root_name, element.docinfo.public_id,
-                        element.docinfo.system_url)
                 rv.append("|%s%s"%(' '*(indent+2), dtd_str))
             next_element = element.getroot()
             while next_element.getprevious() is not None:
@@ -64,7 +71,7 @@
                 serializeElement(next_element, indent+2)
                 next_element = next_element.getnext()
         elif type(element.tag) == type(etree.Comment):
-            rv.append("|%s"%(' '*indent, element.text))
+            rv.append("|%s"%(' '*indent, element.text))
         else:
             rv.append("|%s"%(' '*indent, element.tag))
             if hasattr(element, "attrib"):
Index: src/html5lib/treebuilders/simpletree.py
===================================================================
--- src/html5lib/treebuilders/simpletree.py	(revision 1118)
+++ src/html5lib/treebuilders/simpletree.py	(working copy)
@@ -112,7 +112,15 @@
         self.systemId = u""
 
     def __unicode__(self):
-        return u"" % self.name
+        if self.publicId:
+            if self.systemId:
+                return u''%(self.name, self.publicId, self.systemId)
+            else:
+                return u''%(self.name, self.publicId)
+        elif self.systemId:
+            return u''%(self.name, self.systemId)
+        else:
+            return u""%self.name
 
     toxml = __unicode__
     
@@ -186,7 +194,7 @@
         self.data = data
 
     def __unicode__(self):
-        return "" % self.data
+        return u"" % self.data
     
     def toxml(self):
         return "" % self.data
Index: tests/support.py
===================================================================
--- tests/support.py	(revision 1118)
+++ tests/support.py	(working copy)
@@ -11,10 +11,10 @@
 
 #Define the location of the tests as this changes in release versions
 #RELEASE remove
-test_dir = os.path.join(os.path.pardir,os.path.pardir,'testdata')
+test_dir = os.path.join(os.path.pardir,os.path.pardir,os.path.pardir,'html5-tests')
 #END RELEASE
 #RELEASE add
-#test_dir = './testdata'
+#test_dir = './html5-tests'
 #END RELEASE
 
 try:

Web Proxy Viewer  |  New URL  |  Original Page