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.py23
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())