bpo-37178: Allow a one argument form of math.perm() (GH-13905)
diff --git a/Lib/test/test_math.py b/Lib/test/test_math.py
index 86e3923..adefa07 100644
--- a/Lib/test/test_math.py
+++ b/Lib/test/test_math.py
@@ -1885,8 +1885,13 @@
self.assertEqual(perm(n, 1), n)
self.assertEqual(perm(n, n), factorial(n))
+ # Test one argument form
+ for n in range(20):
+ self.assertEqual(perm(n), factorial(n))
+ self.assertEqual(perm(n, None), factorial(n))
+
# Raises TypeError if any argument is non-integer or argument count is
- # not 2
+ # not 1 or 2
self.assertRaises(TypeError, perm, 10, 1.0)
self.assertRaises(TypeError, perm, 10, decimal.Decimal(1.0))
self.assertRaises(TypeError, perm, 10, "1")
@@ -1894,7 +1899,7 @@
self.assertRaises(TypeError, perm, decimal.Decimal(10.0), 1)
self.assertRaises(TypeError, perm, "10", 1)
- self.assertRaises(TypeError, perm, 10)
+ self.assertRaises(TypeError, perm)
self.assertRaises(TypeError, perm, 10, 1, 3)
self.assertRaises(TypeError, perm)