summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2022-07-01 21:19:44 +0200
committerStefan Behnel <stefan_ml@behnel.de>2022-07-01 21:19:44 +0200
commitd01872ccdf7e1e5e825b6c6292b43e7d27ae5fc4 (patch)
treed64d9659d8a70a8f8363fd6dce0640b5d0612926
parentd65e63229e8958bc08344a85cd3f09ceeef933c3 (diff)
downloadpython-lxml-d01872ccdf7e1e5e825b6c6292b43e7d27ae5fc4.tar.gz
Prevent parse failure in new test from leaking into later test runs.lxml-4.9.1
-rw-r--r--src/lxml/tests/test_etree.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/lxml/tests/test_etree.py b/src/lxml/tests/test_etree.py
index 285313f6..3e52258e 100644
--- a/src/lxml/tests/test_etree.py
+++ b/src/lxml/tests/test_etree.py
@@ -1463,14 +1463,16 @@ class ETreeOnlyTestCase(HelperTestCase):
def test_walk_after_parse_failure(self):
# This used to be an issue because libxml2 can leak empty namespaces
# between failed parser runs. iterwalk() failed to handle such a tree.
+ parser = etree.XMLParser()
+
try:
- etree.XML('''<anot xmlns="1">''')
+ etree.XML('''<anot xmlns="1">''', parser=parser)
except etree.XMLSyntaxError:
pass
else:
assert False, "invalid input did not fail to parse"
- et = etree.XML('''<root> </root>''')
+ et = etree.XML('''<root> </root>''', parser=parser)
try:
ns = next(etree.iterwalk(et, events=('start-ns',)))
except StopIteration: