From: Nikita Sobolev Date: Mon, 5 Sep 2022 21:35:05 +0000 (+0300) Subject: gh-96478: Test `@overload` on C functions (#96479) X-Git-Tag: v3.12.0a1~471 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f177f6f29b069f522a0b3ba44eaae19852b6d2b0;p=thirdparty%2FPython%2Fcpython.git gh-96478: Test `@overload` on C functions (#96479) Co-authored-by: Alex Waygood --- diff --git a/Lib/test/test_typing.py b/Lib/test/test_typing.py index 015fa80942a2..a3a6b4e2274a 100644 --- a/Lib/test/test_typing.py +++ b/Lib/test/test_typing.py @@ -4391,6 +4391,20 @@ class OverloadTests(BaseTestCase): blah() + @patch("typing._overload_registry", + defaultdict(lambda: defaultdict(dict))) + def test_overload_on_compiled_functions(self): + # The registry starts out empty: + self.assertEqual(typing._overload_registry, {}) + + # This should just not fail: + overload(sum) + overload(print) + + # No overloads are recorded (but, it still has a side-effect): + self.assertEqual(typing.get_overloads(sum), []) + self.assertEqual(typing.get_overloads(print), []) + def set_up_overloads(self): def blah(): pass