mirror of https://github.com/python/cpython.git
#15970: xml.etree.ElementTree now serializes correctly the empty HTML elements "meta" and "param".
This commit is contained in:
parent
ab02db23b1
commit
c90111f9ab
|
@ -1851,6 +1851,26 @@ def check_issue10777():
|
||||||
>>> ET.register_namespace('test10777', 'http://myuri/')
|
>>> ET.register_namespace('test10777', 'http://myuri/')
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
def check_html_empty_elems_serialization(self):
|
||||||
|
# issue 15970
|
||||||
|
# from http://www.w3.org/TR/html401/index/elements.html
|
||||||
|
"""
|
||||||
|
|
||||||
|
>>> empty_elems = ['AREA', 'BASE', 'BASEFONT', 'BR', 'COL', 'FRAME', 'HR',
|
||||||
|
... 'IMG', 'INPUT', 'ISINDEX', 'LINK', 'META', 'PARAM']
|
||||||
|
>>> elems = ''.join('<%s />' % elem for elem in empty_elems)
|
||||||
|
>>> serialize(ET.XML('<html>%s</html>' % elems), method='html')
|
||||||
|
'<html><AREA><BASE><BASEFONT><BR><COL><FRAME><HR><IMG><INPUT><ISINDEX><LINK><META><PARAM></html>'
|
||||||
|
>>> serialize(ET.XML('<html>%s</html>' % elems.lower()), method='html')
|
||||||
|
'<html><area><base><basefont><br><col><frame><hr><img><input><isindex><link><meta><param></html>'
|
||||||
|
>>> elems = ''.join('<%s></%s>' % (elem, elem) for elem in empty_elems)
|
||||||
|
>>> serialize(ET.XML('<html>%s</html>' % elems), method='html')
|
||||||
|
'<html><AREA><BASE><BASEFONT><BR><COL><FRAME><HR><IMG><INPUT><ISINDEX><LINK><META><PARAM></html>'
|
||||||
|
>>> serialize(ET.XML('<html>%s</html>' % elems.lower()), method='html')
|
||||||
|
'<html><area><base><basefont><br><col><frame><hr><img><input><isindex><link><meta><param></html>'
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
# --------------------------------------------------------------------
|
# --------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -983,7 +983,7 @@ def _serialize_xml(write, elem, qnames, namespaces):
|
||||||
write(_escape_cdata(elem.tail))
|
write(_escape_cdata(elem.tail))
|
||||||
|
|
||||||
HTML_EMPTY = ("area", "base", "basefont", "br", "col", "frame", "hr",
|
HTML_EMPTY = ("area", "base", "basefont", "br", "col", "frame", "hr",
|
||||||
"img", "input", "isindex", "link", "meta" "param")
|
"img", "input", "isindex", "link", "meta", "param")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
HTML_EMPTY = set(HTML_EMPTY)
|
HTML_EMPTY = set(HTML_EMPTY)
|
||||||
|
|
|
@ -120,6 +120,9 @@ Core and Builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #15970: xml.etree.ElementTree now serializes correctly the empty HTML
|
||||||
|
elements 'meta' and 'param'.
|
||||||
|
|
||||||
- Issue #15842: the SocketIO.{readable,writable,seekable} methods now
|
- Issue #15842: the SocketIO.{readable,writable,seekable} methods now
|
||||||
raise ValueError when the file-like object is closed. Patch by Alessandro
|
raise ValueError when the file-like object is closed. Patch by Alessandro
|
||||||
Moura.
|
Moura.
|
||||||
|
|
Loading…
Reference in New Issue