mirror of https://github.com/python/cpython
gh-123811: test that round() can return signed zero (#123829)
This commit is contained in:
parent
a1dbf2ea69
commit
d2b9b6f919
|
@ -863,7 +863,7 @@ class ReprTestCase(unittest.TestCase):
|
||||||
self.assertEqual(repr(float(negs)), str(float(negs)))
|
self.assertEqual(repr(float(negs)), str(float(negs)))
|
||||||
|
|
||||||
@support.requires_IEEE_754
|
@support.requires_IEEE_754
|
||||||
class RoundTestCase(unittest.TestCase):
|
class RoundTestCase(unittest.TestCase, FloatsAreIdenticalMixin):
|
||||||
|
|
||||||
def test_inf_nan(self):
|
def test_inf_nan(self):
|
||||||
self.assertRaises(OverflowError, round, INF)
|
self.assertRaises(OverflowError, round, INF)
|
||||||
|
@ -893,10 +893,10 @@ class RoundTestCase(unittest.TestCase):
|
||||||
|
|
||||||
def test_small_n(self):
|
def test_small_n(self):
|
||||||
for n in [-308, -309, -400, 1-2**31, -2**31, -2**31-1, -2**100]:
|
for n in [-308, -309, -400, 1-2**31, -2**31, -2**31-1, -2**100]:
|
||||||
self.assertEqual(round(123.456, n), 0.0)
|
self.assertFloatsAreIdentical(round(123.456, n), 0.0)
|
||||||
self.assertEqual(round(-123.456, n), -0.0)
|
self.assertFloatsAreIdentical(round(-123.456, n), -0.0)
|
||||||
self.assertEqual(round(1e300, n), 0.0)
|
self.assertFloatsAreIdentical(round(1e300, n), 0.0)
|
||||||
self.assertEqual(round(1e-320, n), 0.0)
|
self.assertFloatsAreIdentical(round(1e-320, n), 0.0)
|
||||||
|
|
||||||
def test_overflow(self):
|
def test_overflow(self):
|
||||||
self.assertRaises(OverflowError, round, 1.6e308, -308)
|
self.assertRaises(OverflowError, round, 1.6e308, -308)
|
||||||
|
|
Loading…
Reference in New Issue