@@ -3766,19 +3766,53 @@ main:2: error: Revealed type is 'def (x: Union[builtins.int, builtins.None]) ->
37663766main:2: error: Revealed type is 'def (x: Union[builtins.int, builtins.None]) -> a.a.A'
37673767
37683768[case testAttrsIncrementalConverterManyStyles]
3769+ import a
3770+ [file a.py]
37693771from base import Base
3770- reveal_type(Base)
3772+ Base(1, 'str', True)
3773+ Base(None, None, None)
3774+
37713775from subclass import A, B
3772- reveal_type(A)
3773- reveal_type(B)
3776+ A(1, 'str', True)
3777+ A(None, None, None)
3778+ B(1, 'str', True, 1, 'str', True)
3779+ B(None, None, None, None, None, None)
3780+
3781+ from submodule.base import SubBase
3782+ SubBase(1, 'str', True)
3783+ SubBase(None, None, None)
3784+
3785+ from submodule.subclass import AA, BB
3786+ AA(1, 'str', True)
3787+ AA(None, None, None)
3788+ BB(1, 'str', True, 1, 'str', True)
3789+ BB(None, None, None, None, None, None)
3790+
3791+ from submodule.subsubclass import SubAA, SubBB
3792+ SubAA(1, 'str', True)
3793+ SubAA(None, None, None)
3794+ SubBB(1, 'str', True, 1, 'str', True)
3795+ SubBB(None, None, None, None, None, None)
3796+
3797+ [file a.py.2]
3798+ # Now with errors.
3799+ from base import Base
3800+ Base(1, 1, True)
3801+
3802+ from subclass import A, B
3803+ A(1, 1, True)
3804+ B(1, 'str', True, 1, 1, True)
3805+
37743806from submodule.base import SubBase
3775- reveal_type(SubBase)
3807+ SubBase(1, 1, True)
3808+
37763809from submodule.subclass import AA, BB
3777- reveal_type(AA)
3778- reveal_type(BB)
3810+ AA(1, 1, True)
3811+ BB(1, 'str', True, 1, 1, True)
3812+
37793813from submodule.subsubclass import SubAA, SubBB
3780- reveal_type( SubAA)
3781- reveal_type( SubBB)
3814+ SubAA(1, 1, True )
3815+ SubBB(1, 'str', True, 1, 1, True )
37823816
37833817[file foo.py]
37843818from typing import Optional
@@ -3866,23 +3900,15 @@ class SubBB(SubBase):
38663900 zz: bool = attr.ib(converter=bar.maybe_bool)
38673901[builtins fixtures/list.pyi]
38683902[out1]
3869- main:2: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> base.Base'
3870- main:4: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> subclass.A'
3871- main:5: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> subclass.B'
3872- main:7: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.base.SubBase'
3873- main:9: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.subclass.AA'
3874- main:10: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> submodule.subclass.BB'
3875- main:12: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.subsubclass.SubAA'
3876- main:13: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> submodule.subsubclass.SubBB'
3877- [out2]
3878- main:2: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> base.Base'
3879- main:4: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> subclass.A'
3880- main:5: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> subclass.B'
3881- main:7: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.base.SubBase'
3882- main:9: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.subclass.AA'
3883- main:10: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> submodule.subclass.BB'
3884- main:12: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None]) -> submodule.subsubclass.SubAA'
3885- main:13: error: Revealed type is 'def (x: Union[builtins.int, builtins.None], y: Union[builtins.str, builtins.None], z: Union[builtins.bool, builtins.None], xx: Union[builtins.int, builtins.None], yy: Union[builtins.str, builtins.None], zz: Union[builtins.bool, builtins.None]) -> submodule.subsubclass.SubBB'
3903+ [out2]
3904+ tmp/a.py:3: error: Argument 2 to "Base" has incompatible type "int"; expected "Optional[str]"
3905+ tmp/a.py:6: error: Argument 2 to "A" has incompatible type "int"; expected "Optional[str]"
3906+ tmp/a.py:7: error: Argument 5 to "B" has incompatible type "int"; expected "Optional[str]"
3907+ tmp/a.py:10: error: Argument 2 to "SubBase" has incompatible type "int"; expected "Optional[str]"
3908+ tmp/a.py:13: error: Argument 2 to "AA" has incompatible type "int"; expected "Optional[str]"
3909+ tmp/a.py:14: error: Argument 5 to "BB" has incompatible type "int"; expected "Optional[str]"
3910+ tmp/a.py:17: error: Argument 2 to "SubAA" has incompatible type "int"; expected "Optional[str]"
3911+ tmp/a.py:18: error: Argument 5 to "SubBB" has incompatible type "int"; expected "Optional[str]"
38863912
38873913[case testAttrsIncrementalConverterInFunction]
38883914import attr
@@ -3895,9 +3921,9 @@ def foo() -> None:
38953921 reveal_type(A)
38963922[builtins fixtures/list.pyi]
38973923[out1]
3898- main:8: error: Revealed type is 'def (x: str? ) -> __main__.A@5'
3924+ main:8: error: Revealed type is 'def (x: builtins. str) -> __main__.A@5'
38993925[out2]
3900- main:8: error: Revealed type is 'def (x: str? ) -> __main__.A@5'
3926+ main:8: error: Revealed type is 'def (x: builtins. str) -> __main__.A@5'
39013927
39023928[case testAttrsIncrementalConverterInSubmoduleForwardRef]
39033929from a.a import A
0 commit comments