-# xml.etree test. This file contains enough tests to make sure that
-# all included components work as they should.
-# Large parts are extracted from the upstream test suite.
-#
-# PLEASE write all new tests using the standard unittest infrastructure and
-# not doctest.
-#
# IMPORTANT: the same tests are run from "test_xml_etree_c" in order
# to ensure consistency between the C implementation and the Python
# implementation.
#
# For this purpose, the module-level "ET" symbol is temporarily
# monkey-patched when running the "test_xml_etree_c" test suite.
-# Don't re-import "xml.etree.ElementTree" module in the docstring,
-# except if the test is specific to the Python implementation.
import html
import io
from itertools import product
from test import support
-from test.support import TESTFN, findfile, unlink, import_fresh_module, gc_collect
+from test.support import TESTFN, findfile, import_fresh_module, gc_collect
# pyET is the pure-Python implementation.
#
class ModuleTest(unittest.TestCase):
+ # TODO: this should be removed once we get rid of the global module vars
def test_sanity(self):
# Import sanity.
events = ("start", "end", "start-ns", "end-ns")
context = iterparse(SIMPLE_NS_XMLFILE, events)
- self.assertEqual([(action, elem.tag) if action in ("start", "end") else (action, elem)
+ self.assertEqual([(action, elem.tag) if action in ("start", "end")
+ else (action, elem)
for action, elem in context], [
('start-ns', ('', 'namespace')),
('start', '{namespace}root'),
self.assertEqual(len(e2), 2)
self.assertEqualElements(e, e2)
+
class ElementTreeTypeTest(unittest.TestCase):
def test_istype(self):
self.assertIsInstance(ET.ParseError, type)
self._check_sample_element(parser.close())
# Now as keyword args.
- parser2 = ET.XMLParser(encoding='utf-8', html=[{}], target=ET.TreeBuilder())
+ parser2 = ET.XMLParser(encoding='utf-8',
+ html=[{}],
+ target=ET.TreeBuilder())
parser2.feed(self.sample1)
self._check_sample_element(parser2.close())
class IOTest(unittest.TestCase):
def tearDown(self):
- unlink(TESTFN)
+ support.unlink(TESTFN)
def test_encoding(self):
# Test encoding issues.
from test.support import import_fresh_module
import unittest
-cET = import_fresh_module('xml.etree.ElementTree', fresh=['_elementtree'])
-cET_alias = import_fresh_module('xml.etree.cElementTree', fresh=['_elementtree', 'xml.etree'])
+cET = import_fresh_module('xml.etree.ElementTree',
+ fresh=['_elementtree'])
+cET_alias = import_fresh_module('xml.etree.cElementTree',
+ fresh=['_elementtree', 'xml.etree'])
class MiscTests(unittest.TestCase):