[red-knot] Improve match mdtests (#14951)

## Summary

Minor improvement for the `match` tests to make sure we can't infer
statically whether or not a certain `case` applies.
This commit is contained in:
David Peter 2024-12-13 09:50:17 +01:00 committed by GitHub
parent c1837e4189
commit 2ccc9b19a7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -3,40 +3,43 @@
## With wildcard
```py
match 0:
case 1:
y = 2
case _:
y = 3
def _(target: int):
match target:
case 1:
y = 2
case _:
y = 3
reveal_type(y) # revealed: Literal[2, 3]
reveal_type(y) # revealed: Literal[2, 3]
```
## Without wildcard
```py
match 0:
case 1:
y = 2
case 2:
y = 3
def _(target: int):
match target:
case 1:
y = 2
case 2:
y = 3
# revealed: Literal[2, 3]
# error: [possibly-unresolved-reference]
reveal_type(y)
# revealed: Literal[2, 3]
# error: [possibly-unresolved-reference]
reveal_type(y)
```
## Basic match
```py
y = 1
y = 2
def _(target: int):
y = 1
y = 2
match 0:
case 1:
y = 3
case 2:
y = 4
match target:
case 1:
y = 3
case 2:
y = 4
reveal_type(y) # revealed: Literal[2, 3, 4]
reveal_type(y) # revealed: Literal[2, 3, 4]
```