summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_importlib
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2021-09-19 12:27:33 (GMT)
committerGitHub <noreply@github.com>2021-09-19 12:27:33 (GMT)
commit40348acc180580371d25f75f46b27048e35f2435 (patch)
tree4ddb641b0dfc1edda6d0a6c044c1380c4900d58a /Lib/test/test_importlib
parent664448d81f41c5fa971d8523a71b0f19e76cc136 (diff)
downloadcpython-40348acc180580371d25f75f46b27048e35f2435.zip
cpython-40348acc180580371d25f75f46b27048e35f2435.tar.gz
cpython-40348acc180580371d25f75f46b27048e35f2435.tar.bz2
bpo-45229: Remove test_main in many tests (GH-28405)
Instead of explicitly enumerate test classes for run_unittest() use the unittest ability to discover tests. This also makes these tests discoverable and runnable with unittest. load_tests() can be used for dynamic generating tests and adding doctests. setUpModule(), tearDownModule() and addModuleCleanup() can be used for running code before and after all module tests.
Diffstat (limited to 'Lib/test/test_importlib')
-rw-r--r--Lib/test/test_importlib/test_locks.py14
-rw-r--r--Lib/test/test_importlib/test_threaded_import.py17
2 files changed, 12 insertions, 19 deletions
diff --git a/Lib/test/test_importlib/test_locks.py b/Lib/test/test_importlib/test_locks.py
index 0e94ce9..9290bac 100644
--- a/Lib/test/test_importlib/test_locks.py
+++ b/Lib/test/test_importlib/test_locks.py
@@ -4,6 +4,7 @@ init = test_util.import_importlib('importlib')
import sys
import threading
+import unittest
import weakref
from test import support
@@ -139,15 +140,10 @@ class LifetimeTests:
) = test_util.test_both(LifetimeTests, init=init)
-@threading_helper.reap_threads
-def test_main():
- support.run_unittest(Frozen_ModuleLockAsRLockTests,
- Source_ModuleLockAsRLockTests,
- Frozen_DeadlockAvoidanceTests,
- Source_DeadlockAvoidanceTests,
- Frozen_LifetimeTests,
- Source_LifetimeTests)
+def setUpModule():
+ thread_info = threading_helper.threading_setup()
+ unittest.addModuleCleanup(threading_helper.threading_cleanup, *thread_info)
if __name__ == '__main__':
- test_main()
+ unittets.main()
diff --git a/Lib/test/test_importlib/test_threaded_import.py b/Lib/test/test_importlib/test_threaded_import.py
index 03bde96..76b028e 100644
--- a/Lib/test/test_importlib/test_threaded_import.py
+++ b/Lib/test/test_importlib/test_threaded_import.py
@@ -14,7 +14,7 @@ import shutil
import threading
import unittest
from unittest import mock
-from test.support import (verbose, run_unittest)
+from test.support import verbose
from test.support.import_helper import forget
from test.support.os_helper import (TESTFN, unlink, rmtree)
from test.support import script_helper, threading_helper
@@ -258,19 +258,16 @@ class ThreadedImportTests(unittest.TestCase):
script_helper.assert_python_ok(fn)
-@threading_helper.reap_threads
-def test_main():
- old_switchinterval = None
+def setUpModule():
+ thread_info = threading_helper.threading_setup()
+ unittest.addModuleCleanup(threading_helper.threading_cleanup, *thread_info)
try:
old_switchinterval = sys.getswitchinterval()
+ unittest.addModuleCleanup(sys.setswitchinterval, old_switchinterval)
sys.setswitchinterval(1e-5)
except AttributeError:
pass
- try:
- run_unittest(ThreadedImportTests)
- finally:
- if old_switchinterval is not None:
- sys.setswitchinterval(old_switchinterval)
+
if __name__ == "__main__":
- test_main()
+ unittets.main()