diff options
Diffstat (limited to 'Lib/test/test_float.py')
| -rw-r--r-- | Lib/test/test_float.py | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/Lib/test/test_float.py b/Lib/test/test_float.py index 96d907a..e87aab0 100644 --- a/Lib/test/test_float.py +++ b/Lib/test/test_float.py @@ -1,12 +1,16 @@ -import unittest, struct +import fractions +import math +import operator import os +import random import sys +import struct +import time +import unittest + from test import support -import math from math import isinf, isnan, copysign, ldexp -import operator -import random, fractions INF = float("inf") NAN = float("nan") @@ -41,6 +45,7 @@ class GeneralFloatCases(unittest.TestCase): self.assertRaises(ValueError, float, "-.") self.assertRaises(ValueError, float, b"-") self.assertRaises(TypeError, float, {}) + self.assertRaisesRegex(TypeError, "not 'dict'", float, {}) # Lone surrogate self.assertRaises(UnicodeEncodeError, float, '\uD8F0') # check that we don't accept alternate exponent markers @@ -92,10 +97,6 @@ class GeneralFloatCases(unittest.TestCase): def test_floatconversion(self): # Make sure that calls to __float__() work properly - class Foo0: - def __float__(self): - return 42. - class Foo1(object): def __float__(self): return 42. @@ -121,13 +122,17 @@ class GeneralFloatCases(unittest.TestCase): def __float__(self): return float(str(self)) + 1 - self.assertAlmostEqual(float(Foo0()), 42.) self.assertAlmostEqual(float(Foo1()), 42.) self.assertAlmostEqual(float(Foo2()), 42.) self.assertAlmostEqual(float(Foo3(21)), 42.) self.assertRaises(TypeError, float, Foo4(42)) self.assertAlmostEqual(float(FooStr('8')), 9.) + class Foo5: + def __float__(self): + return "" + self.assertRaises(TypeError, time.sleep, Foo5()) + def test_is_integer(self): self.assertFalse((1.1).is_integer()) self.assertTrue((1.).is_integer()) |
