Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 052d7de

Browse files
committed
* sumprod: L2829, L2833, L2836
1 parent 7956447 commit 052d7de

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

Lib/test/test_math.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1269,6 +1269,9 @@ def testSumProd(self):
12691269
self.assertEqual(sumprod(iter([10, 20, 30]), (1, 2, 3)), 140)
12701270
self.assertEqual(sumprod([1.5, 2.5], [3.5, 4.5]), 16.5)
12711271
self.assertEqual(sumprod([], []), 0)
1272+
self.assertEqual(sumprod([-1], [1.]), -1)
1273+
self.assertEqual(sumprod([1.], [-1]), -1)
1274+
self.assertEqual(sumprod([True], [1.0]), 1)
12721275

12731276
# Type preservation and coercion
12741277
for v in [
@@ -1294,6 +1297,7 @@ def testSumProd(self):
12941297
self.assertRaises(TypeError, sumprod, [], [], []) # Three args
12951298
self.assertRaises(TypeError, sumprod, None, [10]) # Non-iterable
12961299
self.assertRaises(TypeError, sumprod, [10], None) # Non-iterable
1300+
self.assertRaises(TypeError, sumprod, ['x'], [1.0])
12971301

12981302
# Uneven lengths
12991303
self.assertRaises(ValueError, sumprod, [10, 20], [30])
@@ -1304,6 +1308,8 @@ def testSumProd(self):
13041308
self.assertEqual(sumprod([1], [10**20]), 10**20)
13051309
self.assertEqual(sumprod([10**10], [10**10]), 10**20)
13061310
self.assertEqual(sumprod([10**7]*10**5, [10**7]*10**5), 10**19)
1311+
self.assertRaises(OverflowError, sumprod, [10**1000], [1.0])
1312+
self.assertRaises(OverflowError, sumprod, [1.0], [10**1000])
13071313

13081314
# Error in iterator
13091315
def raise_after(n):

0 commit comments

Comments
 (0)