Commit 71f73ca7 authored by Serhiy Storchaka's avatar Serhiy Storchaka

Issue #23713: Fixed fragility of test_imap_unordered_handle_iterable_exception.

Patch by Davin Potts.
parent 3bd66abb
...@@ -1799,17 +1799,23 @@ class _TestPool(BaseTestCase): ...@@ -1799,17 +1799,23 @@ class _TestPool(BaseTestCase):
it = self.pool.imap_unordered(sqr, it = self.pool.imap_unordered(sqr,
exception_throwing_generator(10, 3), exception_throwing_generator(10, 3),
1) 1)
expected_values = list(map(sqr, list(range(10))))
with self.assertRaises(SayWhenError): with self.assertRaises(SayWhenError):
# imap_unordered makes it difficult to anticipate the SayWhenError # imap_unordered makes it difficult to anticipate the SayWhenError
for i in range(10): for i in range(10):
self.assertEqual(next(it), i*i) value = next(it)
self.assertIn(value, expected_values)
expected_values.remove(value)
it = self.pool.imap_unordered(sqr, it = self.pool.imap_unordered(sqr,
exception_throwing_generator(20, 7), exception_throwing_generator(20, 7),
2) 2)
expected_values = list(map(sqr, list(range(20))))
with self.assertRaises(SayWhenError): with self.assertRaises(SayWhenError):
for i in range(20): for i in range(20):
self.assertEqual(next(it), i*i) value = next(it)
self.assertIn(value, expected_values)
expected_values.remove(value)
def test_make_pool(self): def test_make_pool(self):
self.assertRaises(ValueError, multiprocessing.Pool, -1) self.assertRaises(ValueError, multiprocessing.Pool, -1)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment