diff options
author | benedwards14 <53377856+benedwards14@users.noreply.github.com> | 2019-11-21 17:24:58 (GMT) |
---|---|---|
committer | Ivan Levkivskyi <levkivskyi@gmail.com> | 2019-11-21 17:24:58 (GMT) |
commit | 0aca3a3a1e68b4ca2d334ab5255dfc267719096e (patch) | |
tree | 49924b3d2c93eddef6fc735c49a6177b0d29744d /Lib/test/test_typing.py | |
parent | 82f897bf8f72d09f537054d64a94e645ad23d8d6 (diff) | |
download | cpython-0aca3a3a1e68b4ca2d334ab5255dfc267719096e.zip cpython-0aca3a3a1e68b4ca2d334ab5255dfc267719096e.tar.gz cpython-0aca3a3a1e68b4ca2d334ab5255dfc267719096e.tar.bz2 |
bpo-37838: get_type_hints for wrapped functions with forward reference (GH-17126)
https://bugs.python.org/issue37838
Diffstat (limited to 'Lib/test/test_typing.py')
-rw-r--r-- | Lib/test/test_typing.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Lib/test/test_typing.py b/Lib/test/test_typing.py index 49417ef..ccd617c 100644 --- a/Lib/test/test_typing.py +++ b/Lib/test/test_typing.py @@ -2778,6 +2778,16 @@ except StopIteration as e: gth = get_type_hints +class ForRefExample: + @ann_module.dec + def func(self: 'ForRefExample'): + pass + + @ann_module.dec + @ann_module.dec + def nested(self: 'ForRefExample'): + pass + class GetTypeHintTests(BaseTestCase): def test_get_type_hints_from_various_objects(self): @@ -2876,6 +2886,11 @@ class GetTypeHintTests(BaseTestCase): 'x': ClassVar[Optional[B]]}) self.assertEqual(gth(G), {'lst': ClassVar[List[T]]}) + def test_get_type_hints_wrapped_decoratored_func(self): + expects = {'self': ForRefExample} + self.assertEqual(gth(ForRefExample.func), expects) + self.assertEqual(gth(ForRefExample.nested), expects) + class GetUtilitiesTestCase(TestCase): def test_get_origin(self): |