Issue 14849: C implementation of ElementTree: Inheriting from Element breaks text member (original) (raw)
Example Code to reproduce:
from xml.etree import ElementTree as etree class xetree: cElement = etree.Element class Element(etree.Element): def init(self, tag, attrib=None): xetree.cElement.init(self, tag, attrib)
etree.Element = xetree.Element
e = etree.Element("test", {'foobar':'bar'}) e.text = "failure" print(etree.tostring(e))
will lack "failure"
So basic inheritance is broken.
Here's a simpler testcase:
import xml.etree.ElementTree as ET
class XElement(ET.Element): def init(self, tag, attrib={}): ET.Element.init(self, tag, attrib)
e = XElement('test') e.text = 'failure'
print(ET.tostring(e))