mirror of
https://github.com/python/cpython.git
synced 2025-09-26 10:19:53 +00:00
#17255: test short-circuiting behavior of any()/all(). Patch by Wim Glenn.
This commit is contained in:
parent
49d4022d7d
commit
7d0eb4b234
2 changed files with 3 additions and 0 deletions
|
@ -110,6 +110,7 @@ class BuiltinTest(unittest.TestCase):
|
||||||
self.assertRaises(TypeError, all) # No args
|
self.assertRaises(TypeError, all) # No args
|
||||||
self.assertRaises(TypeError, all, [2, 4, 6], []) # Too many args
|
self.assertRaises(TypeError, all, [2, 4, 6], []) # Too many args
|
||||||
self.assertEqual(all([]), True) # Empty iterator
|
self.assertEqual(all([]), True) # Empty iterator
|
||||||
|
self.assertEqual(all([0, TestFailingBool()]), False)# Short-circuit
|
||||||
S = [50, 60]
|
S = [50, 60]
|
||||||
self.assertEqual(all(x > 42 for x in S), True)
|
self.assertEqual(all(x > 42 for x in S), True)
|
||||||
S = [50, 40, 60]
|
S = [50, 40, 60]
|
||||||
|
@ -124,6 +125,7 @@ class BuiltinTest(unittest.TestCase):
|
||||||
self.assertRaises(TypeError, any) # No args
|
self.assertRaises(TypeError, any) # No args
|
||||||
self.assertRaises(TypeError, any, [2, 4, 6], []) # Too many args
|
self.assertRaises(TypeError, any, [2, 4, 6], []) # Too many args
|
||||||
self.assertEqual(any([]), False) # Empty iterator
|
self.assertEqual(any([]), False) # Empty iterator
|
||||||
|
self.assertEqual(any([1, TestFailingBool()]), True) # Short-circuit
|
||||||
S = [40, 60, 30]
|
S = [40, 60, 30]
|
||||||
self.assertEqual(any(x > 42 for x in S), True)
|
self.assertEqual(any(x > 42 for x in S), True)
|
||||||
S = [10, 20, 30]
|
S = [10, 20, 30]
|
||||||
|
|
|
@ -352,6 +352,7 @@ Dinu Gherman
|
||||||
Jonathan Giddy
|
Jonathan Giddy
|
||||||
Johannes Gijsbers
|
Johannes Gijsbers
|
||||||
Michael Gilfix
|
Michael Gilfix
|
||||||
|
Wim Glenn
|
||||||
Christoph Gohlke
|
Christoph Gohlke
|
||||||
Tim Golden
|
Tim Golden
|
||||||
Chris Gonnerman
|
Chris Gonnerman
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue