Skip to content

Commit 520df60

Browse files
committed
update tests per hauntsaninja's code review
1 parent 062fcb1 commit 520df60

File tree

1 file changed

+8
-14
lines changed

1 file changed

+8
-14
lines changed

test-data/unit/check-typeddict.test

+8-14
Original file line numberDiff line numberDiff line change
@@ -2022,12 +2022,14 @@ class D(TypedDict):
20222022
foo: int
20232023

20242024

2025-
d: D | list[str]
2025+
d_or_list: D | list[str]
20262026

2027-
if 'foo' in d:
2028-
assert_type(d, Union[D, list[str]])
2027+
if 'foo' in d_or_list:
2028+
assert_type(d_or_list, Union[D, list[str]])
2029+
elif 'bar' in d_or_list:
2030+
assert_type(d_or_list, list[str])
20292031
else:
2030-
assert_type(d, list[str])
2032+
assert_type(d_or_list, list[str])
20312033

20322034
[builtins fixtures/dict.pyi]
20332035
[typing fixtures/typing-typeddict.pyi]
@@ -2046,12 +2048,6 @@ class D1(TypedDict):
20462048
class D2(TypedDict):
20472049
bar: int
20482050

2049-
d_or_list: D1 | list[str]
2050-
2051-
if 'foo' in d_or_list:
2052-
assert_type(d_or_list, Union[D1, list[str]])
2053-
else:
2054-
assert_type(d_or_list, list[str])
20552051

20562052
d: D1 | D2
20572053

@@ -2077,11 +2073,9 @@ TD = TypeVar('TD', D1, D2)
20772073
def f(arg: TD) -> None:
20782074
value: int
20792075
if 'foo' in arg:
2080-
assert_type(d, Union[D1, D2]) # strangely enough it's seen as a union
2081-
value = arg['foo'] # but acts here as D1
2076+
assert_type(arg['foo'], int)
20822077
else:
2083-
assert_type(d, Union[D1, D2]) # ditto here, but D2
2084-
value = arg['bar']
2078+
assert_type(arg['bar'], int)
20852079

20862080

20872081
[builtins fixtures/dict.pyi]

0 commit comments

Comments
 (0)