Fix exception types for jsonschema._format (#7990)

The annotated type for the `raises` argument on format checkers was

    Exception | tuple[Exception, ...]

when it should read

    type[Exception] | tuple[type[Exception], ...]

Co-authored-by: Sebastian Rittau <srittau@rittau.biz>
This commit is contained in:
Stephen Rosen
2022-05-30 12:14:33 -04:00
committed by GitHub
parent 8f33ff9e9d
commit 17e7cc7d3c

View File

@@ -1,15 +1,17 @@
from collections.abc import Callable, Iterable
from typing import Any, TypeVar
from typing import Any, TypeVar, Union
from typing_extensions import TypeAlias
_F = TypeVar("_F", bound=Callable[..., Any])
_RaisesType: TypeAlias = Union[type[Exception], tuple[type[Exception], ...]]
class FormatChecker:
checkers: dict[str, tuple[Callable[[Any], bool], Exception | tuple[Exception, ...]]]
checkers: dict[str, tuple[Callable[[Any], bool], _RaisesType]]
def __init__(self, formats: Iterable[str] | None = ...) -> None: ...
def checks(self, format: str, raises: Exception | tuple[Exception, ...] = ...) -> Callable[[_F], _F]: ...
def checks(self, format: str, raises: _RaisesType = ...) -> Callable[[_F], _F]: ...
@classmethod
def cls_checks(cls, format: str, raises: Exception | tuple[Exception, ...] = ...) -> Callable[[_F], _F]: ...
def cls_checks(cls, format: str, raises: _RaisesType = ...) -> Callable[[_F], _F]: ...
def check(self, instance: Any, format: str) -> None: ...
def conforms(self, instance: Any, format: str) -> bool: ...