@@ -797,5 +797,56 @@ def g(x: int) -> int: ...
797
797
@overload
798
798
def g(x: str) -> str: ...
799
799
def g(x: Union[int, str]) -> Union[int, str]: ...
800
+ [builtins fixtures/tuple.pyi]
801
+
802
+ [case testDeprecatedExclude]
803
+ # flags: --enable-error-code=deprecated --deprecated-calls-exclude=m.C --deprecated-calls-exclude=m.D --deprecated-calls-exclude=m.E.f --deprecated-calls-exclude=m.E.g --deprecated-calls-exclude=m.E.__add__
804
+ from m import C, D, E
805
+
806
+ [file m.py]
807
+ from typing import Union, overload
808
+ from typing_extensions import deprecated
809
+
810
+ @deprecated("use C2 instead")
811
+ class C:
812
+ def __init__(self) -> None: ...
813
+
814
+ c: C
815
+ C()
816
+ C.__init__(c)
817
+
818
+ class D:
819
+ @deprecated("use D.g instead")
820
+ def f(self) -> None: ...
821
+
822
+ def g(self) -> None: ...
823
+
824
+ D.f
825
+ D().f
826
+ D().f()
827
+
828
+ class E:
829
+ @overload
830
+ def f(self, x: int) -> int: ...
831
+ @overload
832
+ def f(self, x: str) -> str: ...
833
+ @deprecated("use E.f2 instead")
834
+ def f(self, x: Union[int, str]) -> Union[int, str]: ...
835
+
836
+ @deprecated("use E.h instead")
837
+ def g(self) -> None: ...
838
+
839
+ @overload
840
+ @deprecated("no A + int")
841
+ def __add__(self, v: int) -> None: ...
842
+ @overload
843
+ def __add__(self, v: str) -> None: ...
844
+ def __add__(self, v: Union[int, str]) -> None: ...
845
+
846
+ E().f(1)
847
+ E().f("x")
800
848
849
+ e = E()
850
+ e.g()
851
+ e + 1
801
852
[builtins fixtures/tuple.pyi]
0 commit comments