]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.13] gh-123811: test that round() can return signed zero (GH-123829) (#123938)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Mon, 30 Sep 2024 04:22:13 +0000 (06:22 +0200)
committerGitHub <noreply@github.com>
Mon, 30 Sep 2024 04:22:13 +0000 (21:22 -0700)
gh-123811: test that round() can return signed zero (GH-123829)
(cherry picked from commit d2b9b6f919e92184420c8e13d078e83447ce7917)

Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
Lib/test/test_float.py

index ebe026eb910e7ed0904960d3b2a4f8dc4f5f1859..65b9cb03e616d74ad4c82ac90b97e37790d4eff8 100644 (file)
@@ -830,7 +830,7 @@ class ReprTestCase(unittest.TestCase):
             self.assertEqual(repr(float(negs)), str(float(negs)))
 
 @support.requires_IEEE_754
-class RoundTestCase(unittest.TestCase):
+class RoundTestCase(unittest.TestCase, FloatsAreIdenticalMixin):
 
     def test_inf_nan(self):
         self.assertRaises(OverflowError, round, INF)
@@ -860,10 +860,10 @@ class RoundTestCase(unittest.TestCase):
 
     def test_small_n(self):
         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.assertEqual(round(-123.456, n), -0.0)
-            self.assertEqual(round(1e300, n), 0.0)
-            self.assertEqual(round(1e-320, n), 0.0)
+            self.assertFloatsAreIdentical(round(123.456, n), 0.0)
+            self.assertFloatsAreIdentical(round(-123.456, n), -0.0)
+            self.assertFloatsAreIdentical(round(1e300, n), 0.0)
+            self.assertFloatsAreIdentical(round(1e-320, n), 0.0)
 
     def test_overflow(self):
         self.assertRaises(OverflowError, round, 1.6e308, -308)