diff -r 18bc81ce6090 Lib/test/_test_multiprocessing.py --- a/Lib/test/_test_multiprocessing.py Thu Mar 19 19:54:51 2015 +0200 +++ b/Lib/test/_test_multiprocessing.py Thu Mar 19 15:06:26 2015 -0500 @@ -1799,17 +1799,23 @@ it = self.pool.imap_unordered(sqr, exception_throwing_generator(10, 3), 1) + expected_10_iter_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_10_iter_values) + expected_10_iter_values.remove(value) it = self.pool.imap_unordered(sqr, exception_throwing_generator(20, 7), 2) + expected_20_iter_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_20_iter_values) + expected_20_iter_values.remove(value) def test_make_pool(self): self.assertRaises(ValueError, multiprocessing.Pool, -1)