Issue #23713: Fixed fragility of test_imap_unordered_handle_iterable_exception.

Patch by Davin Potts.
This commit is contained in:
Serhiy Storchaka 2015-04-23 11:35:43 +03:00
parent dacd7d0cd6
commit 89c3b8e480
1 changed files with 8 additions and 2 deletions

View File

@ -1219,17 +1219,23 @@ class _TestPool(BaseTestCase):
it = self.pool.imap_unordered(sqr,
exception_throwing_generator(10, 3),
1)
expected_values = map(sqr, range(10))
with self.assertRaises(SayWhenError):
# imap_unordered makes it difficult to anticipate the SayWhenError
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,
exception_throwing_generator(20, 7),
2)
expected_values = map(sqr, range(20))
with self.assertRaises(SayWhenError):
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):
self.assertRaises(ValueError, multiprocessing.Pool, -1)