Issue 3285: Fractions from_float() and from_decimal() accept Integral arguments.
diff --git a/Lib/test/test_fractions.py b/Lib/test/test_fractions.py
index d61294f..979fef7 100644
--- a/Lib/test/test_fractions.py
+++ b/Lib/test/test_fractions.py
@@ -137,10 +137,8 @@
self.assertNotEquals(F(4, 2), r)
def testFromFloat(self):
- self.assertRaisesMessage(
- TypeError, "Fraction.from_float() only takes floats, not 3 (int)",
- F.from_float, 3)
-
+ self.assertRaises(TypeError, F.from_float, 3+4j)
+ self.assertEquals((10, 1), _components(F.from_float(10)))
self.assertEquals((0, 1), _components(F.from_float(-0.0)))
self.assertEquals((10, 1), _components(F.from_float(10.0)))
self.assertEquals((-5, 2), _components(F.from_float(-2.5)))
@@ -164,10 +162,8 @@
F.from_float, nan)
def testFromDecimal(self):
- self.assertRaisesMessage(
- TypeError,
- "Fraction.from_decimal() only takes Decimals, not 3 (int)",
- F.from_decimal, 3)
+ self.assertRaises(TypeError, F.from_decimal, 3+4j)
+ self.assertEquals(F(10, 1), F.from_decimal(10))
self.assertEquals(F(0), F.from_decimal(Decimal("-0")))
self.assertEquals(F(5, 10), F.from_decimal(Decimal("0.5")))
self.assertEquals(F(5, 1000), F.from_decimal(Decimal("5e-3")))