diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2015-04-23 08:35:59 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2015-04-23 08:35:59 (GMT) |
commit | 71f73ca7a9098c678d6bf3073b02228783100665 (patch) | |
tree | 6c570270d27c7d145415cdf0215fbd95f4bc2bf1 | |
parent | 3bd66abb947fa658f57cc9201a59d0b96585d908 (diff) | |
download | cpython-71f73ca7a9098c678d6bf3073b02228783100665.zip cpython-71f73ca7a9098c678d6bf3073b02228783100665.tar.gz cpython-71f73ca7a9098c678d6bf3073b02228783100665.tar.bz2 |
Issue #23713: Fixed fragility of test_imap_unordered_handle_iterable_exception.
Patch by Davin Potts.
-rw-r--r-- | Lib/test/_test_multiprocessing.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py index ff31e36..204d894 100644 --- a/Lib/test/_test_multiprocessing.py +++ b/Lib/test/_test_multiprocessing.py @@ -1799,17 +1799,23 @@ class _TestPool(BaseTestCase): it = self.pool.imap_unordered(sqr, exception_throwing_generator(10, 3), 1) + expected_values = list(map(sqr, list(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 = list(map(sqr, list(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) |