summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrett Cannon <brett@python.org>2024-01-31 01:49:27 (GMT)
committerGitHub <noreply@github.com>2024-01-31 01:49:27 (GMT)
commit2ed8f924ee05ec17ce0639a424e5ca7661b09a6b (patch)
tree3418d21310dd8749228aae5f20ea9acdb5b1bfb3
parent574291963f6b0eb7da3fde1ae9763236e7ece306 (diff)
downloadcpython-2ed8f924ee05ec17ce0639a424e5ca7661b09a6b.zip
cpython-2ed8f924ee05ec17ce0639a424e5ca7661b09a6b.tar.gz
cpython-2ed8f924ee05ec17ce0639a424e5ca7661b09a6b.tar.bz2
GH-114743: Set a low recursion limit for `test_main_recursion_error()` in `test_runpy` (GH-114772)
This can fail under a debug build of WASI when directly executing test.test_runpy.
-rw-r--r--.gitignore2
-rw-r--r--Lib/test/test_runpy.py6
2 files changed, 5 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 18eb2a9..6ed7197 100644
--- a/.gitignore
+++ b/.gitignore
@@ -159,5 +159,5 @@ Python/frozen_modules/MANIFEST
/python
!/Python/
-# main branch only: ABI files are not checked/maintained
+# main branch only: ABI files are not checked/maintained.
Doc/data/python*.abi
diff --git a/Lib/test/test_runpy.py b/Lib/test/test_runpy.py
index 57fe859..9d76764 100644
--- a/Lib/test/test_runpy.py
+++ b/Lib/test/test_runpy.py
@@ -12,7 +12,8 @@ import tempfile
import textwrap
import unittest
import warnings
-from test.support import no_tracing, verbose, requires_subprocess, requires_resource
+from test.support import (infinite_recursion, no_tracing, verbose,
+ requires_subprocess, requires_resource)
from test.support.import_helper import forget, make_legacy_pyc, unload
from test.support.os_helper import create_empty_file, temp_dir
from test.support.script_helper import make_script, make_zip_script
@@ -743,7 +744,8 @@ class RunPathTestCase(unittest.TestCase, CodeExecutionMixin):
"runpy.run_path(%r)\n") % dummy_dir
script_name = self._make_test_script(script_dir, mod_name, source)
zip_name, fname = make_zip_script(script_dir, 'test_zip', script_name)
- self.assertRaises(RecursionError, run_path, zip_name)
+ with infinite_recursion(25):
+ self.assertRaises(RecursionError, run_path, zip_name)
def test_encoding(self):
with temp_dir() as script_dir: