summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/datetimetester.py22
-rw-r--r--Lib/test/support/__init__.py19
-rw-r--r--Lib/test/test_import/__init__.py21
3 files changed, 21 insertions, 41 deletions
diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py
index ba7f185..535b17d 100644
--- a/Lib/test/datetimetester.py
+++ b/Lib/test/datetimetester.py
@@ -22,7 +22,7 @@ from operator import lt, le, gt, ge, eq, ne, truediv, floordiv, mod
from test import support
from test.support import is_resource_enabled, ALWAYS_EQ, LARGEST, SMALLEST
-from test.support import warnings_helper
+from test.support import warnings_helper, no_rerun
import datetime as datetime_module
from datetime import MINYEAR, MAXYEAR
@@ -47,26 +47,6 @@ except ImportError:
pass
#
-# This is copied from test_import/__init__.py.
-# XXX Move it to support/__init__.py.
-def no_rerun(reason):
- """Skip rerunning for a particular test.
-
- WARNING: Use this decorator with care; skipping rerunning makes it
- impossible to find reference leaks. Provide a clear reason for skipping the
- test using the 'reason' parameter.
- """
- def deco(func):
- _has_run = False
- def wrapper(self):
- nonlocal _has_run
- if _has_run:
- self.skipTest(reason)
- func(self)
- _has_run = True
- return wrapper
- return deco
-
pickle_loads = {pickle.loads, pickle._loads}
pickle_choices = [(pickle, pickle, proto)
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index e2a8546..5825efa 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -1189,6 +1189,25 @@ def no_tracing(func):
return coverage_wrapper
+def no_rerun(reason):
+ """Skip rerunning for a particular test.
+
+ WARNING: Use this decorator with care; skipping rerunning makes it
+ impossible to find reference leaks. Provide a clear reason for skipping the
+ test using the 'reason' parameter.
+ """
+ def deco(func):
+ _has_run = False
+ def wrapper(self):
+ nonlocal _has_run
+ if _has_run:
+ self.skipTest(reason)
+ func(self)
+ _has_run = True
+ return wrapper
+ return deco
+
+
def refcount_test(test):
"""Decorator for tests which involve reference counting.
diff --git a/Lib/test/test_import/__init__.py b/Lib/test/test_import/__init__.py
index b09065f..97e262c 100644
--- a/Lib/test/test_import/__init__.py
+++ b/Lib/test/test_import/__init__.py
@@ -31,7 +31,7 @@ from test.support import os_helper
from test.support import (
STDLIB_DIR, swap_attr, swap_item, cpython_only, is_apple_mobile, is_emscripten,
is_wasi, run_in_subinterp, run_in_subinterp_with_config, Py_TRACE_REFS,
- requires_gil_enabled, Py_GIL_DISABLED)
+ requires_gil_enabled, Py_GIL_DISABLED, no_rerun)
from test.support.import_helper import (
forget, make_legacy_pyc, unlink, unload, ready_to_import,
DirsOnSysPath, CleanImport, import_module)
@@ -120,25 +120,6 @@ def remove_files(name):
rmtree('__pycache__')
-def no_rerun(reason):
- """Skip rerunning for a particular test.
-
- WARNING: Use this decorator with care; skipping rerunning makes it
- impossible to find reference leaks. Provide a clear reason for skipping the
- test using the 'reason' parameter.
- """
- def deco(func):
- _has_run = False
- def wrapper(self):
- nonlocal _has_run
- if _has_run:
- self.skipTest(reason)
- func(self)
- _has_run = True
- return wrapper
- return deco
-
-
if _testsinglephase is not None:
def restore__testsinglephase(*, _orig=_testsinglephase):
# We started with the module imported and want to restore