summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_dataclasses/dataclass_module_2_str.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2023-09-06 13:54:16 (GMT)
committerGitHub <noreply@github.com>2023-09-06 13:54:16 (GMT)
commit14d6e197cc56e5256d501839a4e66e3864ab15f0 (patch)
tree3cf9f4d8bb4caf770e331c328b21a30179c7e951 /Lib/test/test_dataclasses/dataclass_module_2_str.py
parent1fb20d42c58924e2e941622b3539645c7b843e0e (diff)
downloadcpython-14d6e197cc56e5256d501839a4e66e3864ab15f0.zip
cpython-14d6e197cc56e5256d501839a4e66e3864ab15f0.tar.gz
cpython-14d6e197cc56e5256d501839a4e66e3864ab15f0.tar.bz2
gh-108303: Create Lib/test/test_dataclasses/ directory (#108978)
Move test_dataclasses.py and its "dataclass_*.py" modules into the new Lib/test/test_dataclasses/ subdirectory.
Diffstat (limited to 'Lib/test/test_dataclasses/dataclass_module_2_str.py')
-rw-r--r--Lib/test/test_dataclasses/dataclass_module_2_str.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/Lib/test/test_dataclasses/dataclass_module_2_str.py b/Lib/test/test_dataclasses/dataclass_module_2_str.py
new file mode 100644
index 0000000..b363d17
--- /dev/null
+++ b/Lib/test/test_dataclasses/dataclass_module_2_str.py
@@ -0,0 +1,32 @@
+from __future__ import annotations
+USING_STRINGS = True
+
+# dataclass_module_2.py and dataclass_module_2_str.py are identical
+# except only the latter uses string annotations.
+
+from dataclasses import dataclass, InitVar
+from typing import ClassVar
+
+T_CV2 = ClassVar[int]
+T_CV3 = ClassVar
+
+T_IV2 = InitVar[int]
+T_IV3 = InitVar
+
+@dataclass
+class CV:
+ T_CV4 = ClassVar
+ cv0: ClassVar[int] = 20
+ cv1: ClassVar = 30
+ cv2: T_CV2
+ cv3: T_CV3
+ not_cv4: T_CV4 # When using string annotations, this field is not recognized as a ClassVar.
+
+@dataclass
+class IV:
+ T_IV4 = InitVar
+ iv0: InitVar[int]
+ iv1: InitVar
+ iv2: T_IV2
+ iv3: T_IV3
+ not_iv4: T_IV4 # When using string annotations, this field is not recognized as an InitVar.