aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/test/mod_generics_cache.py
diff options
context:
space:
mode:
authorNikita Sobolev <mail@sobolevn.me>2022-01-12 19:48:10 +0300
committerGitHub <noreply@github.com>2022-01-12 08:48:10 -0800
commite2a9c8ef09cb7123d6b28852a323e6cc1f878b5b (patch)
tree9c57f98f0f6c7bbb971b9ab0b08c4896876f6a5c /Lib/test/mod_generics_cache.py
parent43839ba438368a50f22f718d4ce8ce607c17046c (diff)
downloadcpython-e2a9c8ef09cb7123d6b28852a323e6cc1f878b5b.tar.gz
cpython-e2a9c8ef09cb7123d6b28852a323e6cc1f878b5b.zip
bpo-46348: modernize `test_typing` (GH-30547)
Diffstat (limited to 'Lib/test/mod_generics_cache.py')
-rw-r--r--Lib/test/mod_generics_cache.py52
1 files changed, 10 insertions, 42 deletions
diff --git a/Lib/test/mod_generics_cache.py b/Lib/test/mod_generics_cache.py
index 6d35c58396d..9d8b56cf03c 100644
--- a/Lib/test/mod_generics_cache.py
+++ b/Lib/test/mod_generics_cache.py
@@ -1,53 +1,21 @@
"""Module for testing the behavior of generics across different modules."""
-import sys
-from textwrap import dedent
from typing import TypeVar, Generic, Optional
+default_a: Optional['A'] = None
+default_b: Optional['B'] = None
-if sys.version_info[:2] >= (3, 6):
- exec(dedent("""
- default_a: Optional['A'] = None
- default_b: Optional['B'] = None
+T = TypeVar('T')
- T = TypeVar('T')
-
- class A(Generic[T]):
- some_b: 'B'
-
-
- class B(Generic[T]):
- class A(Generic[T]):
- pass
-
- my_inner_a1: 'B.A'
- my_inner_a2: A
- my_outer_a: 'A' # unless somebody calls get_type_hints with localns=B.__dict__
- """))
-else: # This should stay in sync with the syntax above.
- __annotations__ = dict(
- default_a=Optional['A'],
- default_b=Optional['B'],
- )
- default_a = None
- default_b = None
-
- T = TypeVar('T')
+class A(Generic[T]):
+ some_b: 'B'
+class B(Generic[T]):
class A(Generic[T]):
- __annotations__ = dict(
- some_b='B'
- )
-
-
- class B(Generic[T]):
- class A(Generic[T]):
- pass
+ pass
- __annotations__ = dict(
- my_inner_a1='B.A',
- my_inner_a2=A,
- my_outer_a='A' # unless somebody calls get_type_hints with localns=B.__dict__
- )
+ my_inner_a1: 'B.A'
+ my_inner_a2: A
+ my_outer_a: 'A' # unless somebody calls get_type_hints with localns=B.__dict__