summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2008-02-01 22:42:59 (GMT)
committerRaymond Hettinger <python@rcn.com>2008-02-01 22:42:59 (GMT)
commit4cab8ece0a4a447ce6db928e8f78e57195c18388 (patch)
tree230e571910aca4d07a79244e647064ffad1d0abd
parentffc667cbd57151705f5a69139351b7c14b24653d (diff)
downloadcpython-4cab8ece0a4a447ce6db928e8f78e57195c18388.zip
cpython-4cab8ece0a4a447ce6db928e8f78e57195c18388.tar.gz
cpython-4cab8ece0a4a447ce6db928e8f78e57195c18388.tar.bz2
Test round-trip on float.as_integer_ratio() and float.__truediv__().
-rw-r--r--Lib/test/test_builtin.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py
index 2f2634d..cfc9003 100644
--- a/Lib/test/test_builtin.py
+++ b/Lib/test/test_builtin.py
@@ -697,6 +697,12 @@ class BuiltinTest(unittest.TestCase):
]:
self.assertEqual(f.as_integer_ratio(), ratio)
+ for i in range(10000):
+ f = random.random()
+ f *= 10 ** random.randint(-100, 100)
+ n, d = f.as_integer_ratio()
+ self.assertEqual(float(n).__truediv__(d), f)
+
R = rational.Rational
self.assertEqual(R(0, 1),
R(*float(0.0).as_integer_ratio()))