summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_functools.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_functools.py')
-rw-r--r--Lib/test/test_functools.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/test/test_functools.py b/Lib/test/test_functools.py
index a4b098a..730ab1f 100644
--- a/Lib/test/test_functools.py
+++ b/Lib/test/test_functools.py
@@ -17,6 +17,7 @@ import weakref
import gc
from weakref import proxy
import contextlib
+from inspect import Signature
from test.support import import_helper
from test.support import threading_helper
@@ -941,6 +942,10 @@ class TestCmpToKey:
self.assertRaises(TypeError, hash, k)
self.assertNotIsInstance(k, collections.abc.Hashable)
+ def test_cmp_to_signature(self):
+ self.assertEqual(str(Signature.from_callable(self.cmp_to_key)),
+ '(mycmp)')
+
@unittest.skipUnless(c_functools, 'requires the C _functools module')
class TestCmpToKeyC(TestCmpToKey, unittest.TestCase):
@@ -1853,6 +1858,13 @@ class TestLRU:
for ref in refs:
self.assertIsNone(ref())
+ def test_common_signatures(self):
+ def orig(): ...
+ lru = self.module.lru_cache(1)(orig)
+
+ self.assertEqual(str(Signature.from_callable(lru.cache_info)), '()')
+ self.assertEqual(str(Signature.from_callable(lru.cache_clear)), '()')
+
@py_functools.lru_cache()
def py_cached_func(x, y):