Skip to content

Commit b497e8f

Browse files
committed
More tests for complex_mul()
Partially from python#109642
1 parent 82031a1 commit b497e8f

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

Lib/test/test_complex.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,31 @@ def test_sub(self):
232232
self.assertComplexesAreIdentical((1-0j) - 1, complex(0, -0.0))
233233
self.assertComplexesAreIdentical(1 - (1-0j), complex(0, 0))
234234

235+
def test_mul(self):
236+
self.assertAlmostEqual(1j * 2, complex(0, 2))
237+
self.assertAlmostEqual(1j * (-1), complex(0, -1))
238+
self.assertRaises(OverflowError, operator.mul, 1j, 10**1000)
239+
self.assertRaises(TypeError, operator.mul, 1j, None)
240+
self.assertRaises(TypeError, operator.mul, None, 1j)
241+
242+
self.assertComplexesAreIdentical(0.0 * 0j, complex(0, 0))
243+
self.assertComplexesAreIdentical(0j * 0.0, complex(0.0, 0))
244+
self.assertComplexesAreIdentical(-0.0 * 0j, complex(0.0, -0.0))
245+
self.assertComplexesAreIdentical(0j * (-0.0), complex(0, -0.0))
246+
self.assertComplexesAreIdentical((-0.0+0j) * 0.0, complex(-0.0, 0))
247+
self.assertComplexesAreIdentical(0.0 * (-0.0+0j), complex(-0.0, 0))
248+
self.assertComplexesAreIdentical((-0.0+0j) * (-0.0), complex(0, -0.0))
249+
self.assertComplexesAreIdentical((-0.0) * (-0.0+0j), complex(0, -0.0))
250+
self.assertComplexesAreIdentical((-0.0-0j) * (-0.0), complex(0, 0))
251+
self.assertComplexesAreIdentical((-0.0) * (-0.0-0j), complex(0, 0))
252+
self.assertComplexesAreIdentical((1+0j) * (1-0j), complex(1, 0))
253+
self.assertComplexesAreIdentical(0j * (-0.0-0j), complex(0.0, -0.0))
254+
self.assertComplexesAreIdentical(0j * (-0j), complex(0, 0))
255+
self.assertComplexesAreIdentical((1+0j) * (-0.0-0j), complex(0, -0.0))
256+
self.assertComplexesAreIdentical((-0.0+0j) * (-0j), complex(0, 0))
257+
self.assertComplexesAreIdentical((1+0j) * 1, complex(1, 0))
258+
self.assertComplexesAreIdentical(1 * (1+0j), complex(1, 0))
259+
235260
def test_mod(self):
236261
# % is no longer supported on complex numbers
237262
with self.assertRaises(TypeError):

0 commit comments

Comments
 (0)