diff options
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_builtin.py | 1 | ||||
-rw-r--r-- | Lib/test/test_long.py | 6 |
2 files changed, 5 insertions, 2 deletions
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index f7e652d..55ea8d2 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -186,6 +186,7 @@ class BuiltinTest(unittest.TestCase): def __coerce__(self, other): raise ValueError self.assertRaises(ValueError, coerce, 42, BadNumber()) + self.assertRaises(OverflowError, coerce, 0.5, int("12345" * 1000)) def test_compile(self): compile('print 1\n', '', 'exec') diff --git a/Lib/test/test_long.py b/Lib/test/test_long.py index 9cab2de..9eb063c 100644 --- a/Lib/test/test_long.py +++ b/Lib/test/test_long.py @@ -371,9 +371,10 @@ def test_float_overflow(): for x in -2.0, -1.0, 0.0, 1.0, 2.0: verify(float(long(x)) == x) + shuge = '12345' * 1000 huge = 1L << 30000 mhuge = -huge - namespace = {'huge': huge, 'mhuge': mhuge, 'math': math} + namespace = {'huge': huge, 'mhuge': mhuge, 'shuge': shuge, 'math': math} for test in ["float(huge)", "float(mhuge)", "complex(huge)", "complex(mhuge)", "complex(huge, 1)", "complex(mhuge, 1)", @@ -386,7 +387,8 @@ def test_float_overflow(): "1. ** huge", "huge ** 1.", "1. ** mhuge", "mhuge ** 1.", "math.sin(huge)", "math.sin(mhuge)", "math.sqrt(huge)", "math.sqrt(mhuge)", # should do better - "math.floor(huge)", "math.floor(mhuge)"]: + "math.floor(huge)", "math.floor(mhuge)", + "float(shuge) == int(shuge)"]: try: eval(test, namespace) |