Issue #14407: Fix unittest test discovery in test_concurrent_futures.

This commit is contained in:
Antoine Pitrou 2013-10-15 23:24:44 +02:00
commit 355dda8d17
2 changed files with 15 additions and 22 deletions

View File

@ -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()

View File

@ -116,6 +116,8 @@ Library
Tests
-----
- Issue #14407: Fix unittest test discovery in test_concurrent_futures.
- Issue #18919: Unified and extended tests for audio modules: aifc, sunau and
wave.