mirror of
https://github.com/python/cpython.git
synced 2024-12-12 03:04:15 +08:00
Issue #14407: Fix unittest test discovery in test_concurrent_futures.
This commit is contained in:
commit
355dda8d17
@ -94,7 +94,7 @@ class ProcessPoolMixin(ExecutorMixin):
|
||||
executor_type = futures.ProcessPoolExecutor
|
||||
|
||||
|
||||
class ExecutorShutdownTest(unittest.TestCase):
|
||||
class ExecutorShutdownTest:
|
||||
def test_run_after_shutdown(self):
|
||||
self.executor.shutdown()
|
||||
self.assertRaises(RuntimeError,
|
||||
@ -122,7 +122,7 @@ class ExecutorShutdownTest(unittest.TestCase):
|
||||
f.result()
|
||||
|
||||
|
||||
class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest):
|
||||
class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest, unittest.TestCase):
|
||||
def _prime_executor(self):
|
||||
pass
|
||||
|
||||
@ -154,7 +154,7 @@ class ThreadPoolShutdownTest(ThreadPoolMixin, ExecutorShutdownTest):
|
||||
t.join()
|
||||
|
||||
|
||||
class ProcessPoolShutdownTest(ProcessPoolMixin, ExecutorShutdownTest):
|
||||
class ProcessPoolShutdownTest(ProcessPoolMixin, ExecutorShutdownTest, unittest.TestCase):
|
||||
def _prime_executor(self):
|
||||
pass
|
||||
|
||||
@ -190,7 +190,7 @@ class ProcessPoolShutdownTest(ProcessPoolMixin, ExecutorShutdownTest):
|
||||
p.join()
|
||||
|
||||
|
||||
class WaitTests(unittest.TestCase):
|
||||
class WaitTests:
|
||||
|
||||
def test_first_completed(self):
|
||||
future1 = self.executor.submit(mul, 21, 2)
|
||||
@ -291,7 +291,7 @@ class WaitTests(unittest.TestCase):
|
||||
self.assertEqual(set([future2]), pending)
|
||||
|
||||
|
||||
class ThreadPoolWaitTests(ThreadPoolMixin, WaitTests):
|
||||
class ThreadPoolWaitTests(ThreadPoolMixin, WaitTests, unittest.TestCase):
|
||||
|
||||
def test_pending_calls_race(self):
|
||||
# Issue #14406: multi-threaded race condition when waiting on all
|
||||
@ -309,11 +309,11 @@ class ThreadPoolWaitTests(ThreadPoolMixin, WaitTests):
|
||||
sys.setswitchinterval(oldswitchinterval)
|
||||
|
||||
|
||||
class ProcessPoolWaitTests(ProcessPoolMixin, WaitTests):
|
||||
class ProcessPoolWaitTests(ProcessPoolMixin, WaitTests, unittest.TestCase):
|
||||
pass
|
||||
|
||||
|
||||
class AsCompletedTests(unittest.TestCase):
|
||||
class AsCompletedTests:
|
||||
# TODO(brian@sweetapp.com): Should have a test with a non-zero timeout.
|
||||
def test_no_timeout(self):
|
||||
future1 = self.executor.submit(mul, 2, 21)
|
||||
@ -351,15 +351,15 @@ class AsCompletedTests(unittest.TestCase):
|
||||
completed_futures)
|
||||
|
||||
|
||||
class ThreadPoolAsCompletedTests(ThreadPoolMixin, AsCompletedTests):
|
||||
class ThreadPoolAsCompletedTests(ThreadPoolMixin, AsCompletedTests, unittest.TestCase):
|
||||
pass
|
||||
|
||||
|
||||
class ProcessPoolAsCompletedTests(ProcessPoolMixin, AsCompletedTests):
|
||||
class ProcessPoolAsCompletedTests(ProcessPoolMixin, AsCompletedTests, unittest.TestCase):
|
||||
pass
|
||||
|
||||
|
||||
class ExecutorTest(unittest.TestCase):
|
||||
class ExecutorTest:
|
||||
# Executor.shutdown() and context manager usage is tested by
|
||||
# ExecutorShutdownTest.
|
||||
def test_submit(self):
|
||||
@ -419,7 +419,7 @@ class ExecutorTest(unittest.TestCase):
|
||||
"Stale reference not collected within timeout.")
|
||||
|
||||
|
||||
class ThreadPoolExecutorTest(ThreadPoolMixin, ExecutorTest):
|
||||
class ThreadPoolExecutorTest(ThreadPoolMixin, ExecutorTest, unittest.TestCase):
|
||||
def test_map_submits_without_iteration(self):
|
||||
"""Tests verifying issue 11777."""
|
||||
finished = []
|
||||
@ -431,7 +431,7 @@ class ThreadPoolExecutorTest(ThreadPoolMixin, ExecutorTest):
|
||||
self.assertCountEqual(finished, range(10))
|
||||
|
||||
|
||||
class ProcessPoolExecutorTest(ProcessPoolMixin, ExecutorTest):
|
||||
class ProcessPoolExecutorTest(ProcessPoolMixin, ExecutorTest, unittest.TestCase):
|
||||
def test_killed_child(self):
|
||||
# When a child process is abruptly terminated, the whole pool gets
|
||||
# "broken".
|
||||
@ -670,16 +670,7 @@ class FutureTests(unittest.TestCase):
|
||||
@test.support.reap_threads
|
||||
def test_main():
|
||||
try:
|
||||
test.support.run_unittest(ProcessPoolExecutorTest,
|
||||
ThreadPoolExecutorTest,
|
||||
ProcessPoolWaitTests,
|
||||
ThreadPoolWaitTests,
|
||||
ProcessPoolAsCompletedTests,
|
||||
ThreadPoolAsCompletedTests,
|
||||
FutureTests,
|
||||
ProcessPoolShutdownTest,
|
||||
ThreadPoolShutdownTest,
|
||||
)
|
||||
test.support.run_unittest(__name__)
|
||||
finally:
|
||||
test.support.reap_children()
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user