diff options
author | Stefan Behnel <stefan_ml@behnel.de> | 2022-07-01 21:19:44 +0200 |
---|---|---|
committer | Stefan Behnel <stefan_ml@behnel.de> | 2022-07-01 21:19:44 +0200 |
commit | d01872ccdf7e1e5e825b6c6292b43e7d27ae5fc4 (patch) | |
tree | d64d9659d8a70a8f8363fd6dce0640b5d0612926 | |
parent | d65e63229e8958bc08344a85cd3f09ceeef933c3 (diff) | |
download | python-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.py | 6 |
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: |