MCPcopy Index your code
hub / github.com/python/cpython / test_factorial

Method test_factorial

Lib/test/test_math_integer.py:76–93  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

74 self.assertIs(type(actual), int)
75
76 def test_factorial(self):
77 factorial = self.module.factorial
78 self.assertEqual(factorial(0), 1)
79 total = 1
80 for i in range(1, 1000):
81 total *= i
82 self.assertEqual(factorial(i), total)
83 self.assertEqual(factorial(i), py_factorial(i))
84
85 self.assertIntEqual(factorial(False), 1)
86 self.assertIntEqual(factorial(True), 1)
87 for i in range(3):
88 expected = factorial(i)
89 self.assertIntEqual(factorial(IntSubclass(i)), expected)
90 self.assertIntEqual(factorial(MyIndexable(i)), expected)
91
92 self.assertRaises(ValueError, factorial, -1)
93 self.assertRaises(ValueError, factorial, -10**1000)
94
95 def test_factorial_non_integers(self):
96 factorial = self.module.factorial

Callers

nothing calls this directly

Calls 7

assertIntEqualMethod · 0.95
py_factorialFunction · 0.85
factorialFunction · 0.70
IntSubclassClass · 0.70
MyIndexableClass · 0.70
assertEqualMethod · 0.45
assertRaisesMethod · 0.45

Tested by

no test coverage detected