1919from xml .parsers .expat import errors
2020
2121
22+ # pyexpat built with expat 2.6.0+ has support for reparse deferral
23+ # and defaults to enabled
24+ HAS_REPARSE_DEFERRAL = expat .ParserCreate ().GetReparseDeferralEnabled ()
25+
26+
2227class SetAttributeTest (unittest .TestCase ):
2328 def setUp (self ):
2429 self .parser = expat .ParserCreate (namespace_separator = '!' )
@@ -1095,11 +1100,9 @@ def test_error_path_no_crash(self):
10951100
10961101
10971102class ReparseDeferralTest (unittest .TestCase ):
1098- deferal_supported = expat .ParserCreate ().GetReparseDeferralEnabled ()
1099-
11001103 def test_getter_setter_round_trip (self ):
11011104 parser = expat .ParserCreate ()
1102- enabled = self . deferal_supported
1105+ enabled = HAS_REPARSE_DEFERRAL
11031106
11041107 self .assertIs (parser .GetReparseDeferralEnabled (), enabled )
11051108 parser .SetReparseDeferralEnabled (False )
@@ -1108,7 +1111,7 @@ def test_getter_setter_round_trip(self):
11081111 self .assertIs (parser .GetReparseDeferralEnabled (), enabled )
11091112
11101113 def test_reparse_deferral_enabled (self ):
1111- if not self . deferal_supported :
1114+ if not HAS_REPARSE_DEFERRAL :
11121115 self .skipTest (f'Expat < 2.6.0 does not '
11131116 'support reparse deferral' )
11141117
@@ -1139,7 +1142,7 @@ def start_element(name, _):
11391142
11401143 parser = expat .ParserCreate ()
11411144 parser .StartElementHandler = start_element
1142- if self . deferal_supported :
1145+ if HAS_REPARSE_DEFERRAL :
11431146 parser .SetReparseDeferralEnabled (False )
11441147 self .assertFalse (parser .GetReparseDeferralEnabled ())
11451148
0 commit comments