diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py index 446dc531b1d828..f1aab43c129698 100644 --- a/Lib/test/test_sys.py +++ b/Lib/test/test_sys.py @@ -15,11 +15,21 @@ from test.support.script_helper import assert_python_ok, assert_python_failure from test.support import threading_helper from test.support import import_helper -from test.support import interpreters import textwrap import unittest import warnings +try: + from test.support import interpreters +except ImportError: + interpreters = None + + +def requires_subinterpreters(func): + deco = unittest.skipIf(interpreters is None, + 'Test requires subinterpreters') + return deco(func) + DICT_KEY_STRUCT_FORMAT = 'n2BI2n' @@ -700,6 +710,7 @@ def __hash__(self): self.assertRaises(TypeError, sys.intern, S("abc")) + @requires_subinterpreters def test_subinterp_intern_dynamically_allocated(self): s = "never interned before" + str(random.randrange(0, 10**9)) t = sys.intern(s) @@ -713,6 +724,7 @@ def test_subinterp_intern_dynamically_allocated(self): assert id(t) != {id(t)}, (id(t), {id(t)}) ''')) + @requires_subinterpreters def test_subinterp_intern_statically_allocated(self): # See Tools/build/generate_global_objects.py for the list # of strings that are always statically allocated.