@@ -237,9 +237,6 @@ def f():
237
237
def test_recursionlimit_fatalerror (self ):
238
238
# A fatal error occurs if a second recursion limit is hit when recovering
239
239
# from a first one.
240
- if os .name == "nt" :
241
- raise unittest .SkipTest (
242
- "under Windows, test would generate a spurious crash dialog" )
243
240
code = textwrap .dedent ("""
244
241
import sys
245
242
@@ -251,14 +248,15 @@ def f():
251
248
252
249
sys.setrecursionlimit(%d)
253
250
f()""" )
254
- for i in (50 , 1000 ):
255
- sub = subprocess .Popen ([sys .executable , '-c' , code % i ],
256
- stderr = subprocess .PIPE )
257
- err = sub .communicate ()[1 ]
258
- self .assertTrue (sub .returncode , sub .returncode )
259
- self .assertTrue (
260
- b"Fatal Python error: Cannot recover from stack overflow" in err ,
261
- err )
251
+ with test .support .suppress_crash_popup ():
252
+ for i in (50 , 1000 ):
253
+ sub = subprocess .Popen ([sys .executable , '-c' , code % i ],
254
+ stderr = subprocess .PIPE )
255
+ err = sub .communicate ()[1 ]
256
+ self .assertTrue (sub .returncode , sub .returncode )
257
+ self .assertIn (
258
+ b"Fatal Python error: Cannot recover from stack overflow" ,
259
+ err )
262
260
263
261
def test_getwindowsversion (self ):
264
262
# Raise SkipTest if sys doesn't have getwindowsversion attribute
0 commit comments