summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_float.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_float.py')
-rw-r--r--Lib/test/test_float.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/test/test_float.py b/Lib/test/test_float.py
index 38a17ce..29f7756 100644
--- a/Lib/test/test_float.py
+++ b/Lib/test/test_float.py
@@ -1468,6 +1468,20 @@ class HexFloatTestCase(unittest.TestCase):
self.identical(fromHex('0X1.0000000000001fp0'), 1.0+2*EPS)
self.identical(fromHex('0x1.00000000000020p0'), 1.0+2*EPS)
+ # Regression test for a corner-case bug reported in b.p.o. 44954
+ self.identical(fromHex('0x.8p-1074'), 0.0)
+ self.identical(fromHex('0x.80p-1074'), 0.0)
+ self.identical(fromHex('0x.81p-1074'), TINY)
+ self.identical(fromHex('0x8p-1078'), 0.0)
+ self.identical(fromHex('0x8.0p-1078'), 0.0)
+ self.identical(fromHex('0x8.1p-1078'), TINY)
+ self.identical(fromHex('0x80p-1082'), 0.0)
+ self.identical(fromHex('0x81p-1082'), TINY)
+ self.identical(fromHex('.8p-1074'), 0.0)
+ self.identical(fromHex('8p-1078'), 0.0)
+ self.identical(fromHex('-.8p-1074'), -0.0)
+ self.identical(fromHex('+8p-1078'), 0.0)
+
def test_roundtrip(self):
def roundtrip(x):
return fromHex(toHex(x))