mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-25 21:31:09 +08:00
Improve several stdlib setdefault methods (#9612)
This commit is contained in:
18
test_cases/stdlib/typing/check_MutableMapping.py
Normal file
18
test_cases/stdlib/typing/check_MutableMapping.py
Normal file
@@ -0,0 +1,18 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Any, Union
|
||||
from typing_extensions import assert_type
|
||||
|
||||
|
||||
def check_setdefault_method() -> None:
|
||||
d: dict[int, str] = {}
|
||||
d2: dict[int, str | None] = {}
|
||||
d3: dict[int, Any] = {}
|
||||
|
||||
d.setdefault(1) # type: ignore
|
||||
assert_type(d.setdefault(1, "x"), str)
|
||||
assert_type(d2.setdefault(1), Union[str, None])
|
||||
assert_type(d2.setdefault(1, None), Union[str, None])
|
||||
assert_type(d2.setdefault(1, "x"), Union[str, None])
|
||||
assert_type(d3.setdefault(1), Union[Any, None])
|
||||
assert_type(d3.setdefault(1, "x"), Any)
|
||||
Reference in New Issue
Block a user