ruff/crates/ruff_linter/resources/test/fixtures/flake8_pyi/PYI062.py
2024-11-26 09:10:38 +01:00

33 lines
980 B
Python

from typing import Literal
import typing as t
import typing_extensions
x: Literal[True, False, True, False] # PYI062 twice here
y: Literal[1, print("hello"), 3, Literal[4, 1]] # PYI062 on the last 1
z: Literal[{1, 3, 5}, "foobar", {1,3,5}] # PYI062 on the set literal
Literal[1, Literal[1]] # once
Literal[1, 2, Literal[1, 2]] # twice
Literal[1, Literal[1], Literal[1]] # twice
Literal[1, Literal[2], Literal[2]] # once
t.Literal[1, t.Literal[2, t.Literal[1]]] # once
typing_extensions.Literal[1, 1, 1] # twice
Literal[
1, # comment
Literal[ # another comment
1
]
] # once
# Ensure issue is only raised once, even on nested literals
MyType = Literal["foo", Literal[True, False, True], "bar"] # PYI062
n: Literal["No", "duplicates", "here", 1, "1"]
# nested literals, all equivalent to `Literal[1]`
Literal[Literal[1]] # no duplicate
Literal[Literal[Literal[1], Literal[1]]] # once
Literal[Literal[1], Literal[Literal[Literal[1]]]] # once