diff --git a/Lib/test/test_xml_etree.py b/Lib/test/test_xml_etree.py
index 4ea3f2f6be2ee6..2ca33ca218fcc1 100644
--- a/Lib/test/test_xml_etree.py
+++ b/Lib/test/test_xml_etree.py
@@ -1712,17 +1712,20 @@ def test_flush_reparse_deferral_enabled(self):
self.skipTest(f'Expat {pyexpat.version_info} does not support reparse deferral')
parser = ET.XMLPullParser(events=('start', 'end'))
+ is_python = hasattr(parser._parser, '_parser') # rather than C
for chunk in (""):
parser.feed(chunk)
self.assert_event_tags(parser, []) # i.e. no elements started
- self.assertTrue(parser._parser._parser.GetReparseDeferralEnabled())
+ if is_python:
+ self.assertTrue(parser._parser._parser.GetReparseDeferralEnabled())
parser.flush()
self.assert_event_tags(parser, [('start', 'doc')])
- self.assertTrue(parser._parser._parser.GetReparseDeferralEnabled())
+ if is_python:
+ self.assertTrue(parser._parser._parser.GetReparseDeferralEnabled())
parser.feed("")
parser.close()
@@ -1731,6 +1734,10 @@ def test_flush_reparse_deferral_enabled(self):
def test_flush_reparse_deferral_disabled(self):
parser = ET.XMLPullParser(events=('start', 'end'))
+ is_python = hasattr(parser._parser, '_parser') # rather than C
+
+ if not is_python:
+ self.skipTest(f'XMLParser.(Get|Set)ReparseDeferralEnabled methods not available in C')
for chunk in (""):
parser.feed(chunk)