Patch #1725 by Mark Dickinson, fixes incorrect conversion of -1e1000
and adds errors for -0x.
diff --git a/Lib/test/test_float.py b/Lib/test/test_float.py
index 11f1690..9d33040 100644
--- a/Lib/test/test_float.py
+++ b/Lib/test/test_float.py
@@ -121,6 +121,13 @@
self.assertEquals(pos_pos(), neg_pos())
self.assertEquals(pos_neg(), neg_neg())
+ if float.__getformat__("double").startswith("IEEE"):
+ def test_underflow_sign(self):
+ import math
+ # check that -1e-1000 gives -0.0, not 0.0
+ self.assertEquals(math.atan2(-1e-1000, -1), math.atan2(-0.0, -1))
+ self.assertEquals(math.atan2(float('-1e-1000'), -1),
+ math.atan2(-0.0, -1))
class ReprTestCase(unittest.TestCase):
def test_repr(self):