Skip to content

Commit b8548b8

Browse files
committed
conformance: aliases_typealiastype: quote recursive aliases, and add an invalid case for unquoted
1 parent 3149e8c commit b8548b8

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

conformance/tests/aliases_typealiastype.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@
1616
GoodAlias1 = TypeAliasType("GoodAlias1", int)
1717
GoodAlias2 = TypeAliasType("GoodAlias2", list[T], type_params=(T,))
1818
GoodAlias3 = TypeAliasType("GoodAlias3", list[T] | list[S], type_params=(S, T))
19-
GoodAlias4 = TypeAliasType("GoodAlias4", T | list[GoodAlias4[T]], type_params=(T,))
19+
GoodAlias4 = TypeAliasType("GoodAlias4", T | "list[GoodAlias4[T]]", type_params=(T,))
2020
GoodAlias5 = TypeAliasType(
2121
"GoodAlias5",
22-
Callable[P, TStr] | list[S] | list[GoodAlias5[S, TStr, P]] | tuple[*Ts],
22+
Callable[P, TStr] | list[S] | list["GoodAlias5[S, TStr, P]"] | tuple[*Ts],
2323
type_params=(S, TStr, P, Ts),
2424
)
2525

@@ -43,9 +43,9 @@ class ClassA(Generic[T]):
4343
BadAlias1 = TypeAliasType("BadAlias1", list[S], type_params=(T,)) # E: S not in scope
4444
BadAlias2 = TypeAliasType("BadAlias2", list[S]) # E: S not in scope
4545
BadAlias3 = TypeAliasType("BadAlias3", int, type_params=my_tuple) # E: not literal tuple
46-
BadAlias4 = TypeAliasType("BadAlias4", BadAlias4) # E: circular dependency
47-
BadAlias5 = TypeAliasType("BadAlias5", T | BadAlias5[str], type_params=(T,)) # E: circular dependency
48-
BadAlias6 = TypeAliasType("BadAlias6", BadAlias7) # E: circular dependency
46+
BadAlias4 = TypeAliasType("BadAlias4", "BadAlias4") # E: circular dependency
47+
BadAlias5 = TypeAliasType("BadAlias5", T | "BadAlias5[str]", type_params=(T,)) # E: circular dependency
48+
BadAlias6 = TypeAliasType("BadAlias6", "BadAlias7") # E: circular dependency
4949
BadAlias7 = TypeAliasType("BadAlias7", BadAlias6) # E?: circular dependency
5050

5151
# The following are invalid type expressions for a type alias.
@@ -62,3 +62,5 @@ class ClassA(Generic[T]):
6262
BadAlias18 = TypeAliasType("BadAlias18", 1) # E
6363
BadAlias19 = TypeAliasType("BadAlias19", list or set) # E
6464
BadAlias20 = TypeAliasType("BadAlias20", f"{'int'}") # E
65+
66+
BadAlias21 = TypeAliasType("BadAlias21", list[BadAlias21]) # E

0 commit comments

Comments
 (0)