Skip to content

Commit 85857d4

Browse files
committed
test
1 parent c30c4df commit 85857d4

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

test-data/unit/check-functions.test

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3488,3 +3488,23 @@ reveal_type(join(f1, f2)) # N: Revealed type is "def ()"
34883488
reveal_type(join(f1, f3)) # N: Revealed type is "def ()"
34893489
reveal_type(join(f2, f3)) # N: Revealed type is "builtins.function" # TODO: this could be better
34903490
[builtins fixtures/tuple.pyi]
3491+
3492+
[case testCallableJoinWithDefaultsMultiple]
3493+
from typing import TypeVar
3494+
T = TypeVar("T")
3495+
def join(t1: T, t2: T, t3: T) -> T: ...
3496+
3497+
def f_1(common, a=None): ...
3498+
def f_any(*_, **__): ...
3499+
def f_3(common, b=None, x=None): ...
3500+
3501+
fdict = {
3502+
"f_1": f_1, # E: Dict entry 0 has incompatible type "str": "Callable[[Any, Any], Any]"; expected "str": "Callable[[Any, Any, Any], Any]"
3503+
"f_any": f_any,
3504+
"f_3": f_3,
3505+
}
3506+
reveal_type(fdict) # N: Revealed type is "builtins.dict[builtins.str, def (common: Any, b: Any =, x: Any =) -> Any]"
3507+
3508+
reveal_type(join(f_1, f_any, f_3)) # N: Revealed type is "def (common: Any, b: Any =, x: Any =) -> Any" \
3509+
# E: Argument 1 to "join" has incompatible type "Callable[[Any, Any], Any]"; expected "Callable[[Any, Any, Any], Any]"
3510+
[builtins fixtures/tuple.pyi]

0 commit comments

Comments
 (0)