diff options
Diffstat (limited to 'Lib/test/test_float.py')
-rw-r--r-- | Lib/test/test_float.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Lib/test/test_float.py b/Lib/test/test_float.py index fb47db8eb0..d616ad9543 100644 --- a/Lib/test/test_float.py +++ b/Lib/test/test_float.py @@ -99,12 +99,25 @@ class IEEEFormatTestCase(unittest.TestCase): ('<f', LE_FLOAT_NAN)]: struct.unpack(fmt, data) +# on an IEEE platform, "overflowing" operations produce infinity + +class IEEEOperationsTestCase(unittest.TestCase): + if float.__getformat__("double").startswith("IEEE"): + def test_double_infinity(self): + big = 4.8e159 + pro = big*big + self.assertEquals(repr(pro), 'inf') + sqr = big**2 + self.assertEquals(repr(sqr), 'inf') + def test_main(): test_support.run_unittest( FormatFunctionsTestCase, UnknownFormatTestCase, - IEEEFormatTestCase) + IEEEFormatTestCase, + IEEEOperationsTestCase, + ) if __name__ == '__main__': test_main() |