From 82de5f88ec84e8116fcb045e542372e6dbbd24d0 Mon Sep 17 00:00:00 2001 From: Maksim Beliaev Date: Tue, 18 Jan 2022 18:19:08 +0300 Subject: [PATCH] move registries types into inlines (#472) * move types into inlines * coverage --- responses/registries.py | 31 +++++++++++++++++++++++-------- responses/registries.pyi | 17 ----------------- 2 files changed, 23 insertions(+), 25 deletions(-) delete mode 100644 responses/registries.pyi diff --git a/responses/registries.py b/responses/registries.py index 1e0f8c53..22f79519 100644 --- a/responses/registries.py +++ b/responses/registries.py @@ -1,15 +1,30 @@ +from typing import ( + TYPE_CHECKING, + List, + Optional, + Tuple, +) + +if TYPE_CHECKING: # pragma: no cover + # import only for linter run + from requests import PreparedRequest + from responses import BaseResponse + + class FirstMatchRegistry(object): - def __init__(self): - self._responses = [] + def __init__(self) -> None: + self._responses: List["BaseResponse"] = [] @property - def registered(self): + def registered(self) -> List["BaseResponse"]: return self._responses - def reset(self): + def reset(self) -> None: self._responses = [] - def find(self, request): + def find( + self, request: "PreparedRequest" + ) -> Tuple[Optional["BaseResponse"], List[str]]: found = None found_match = None match_failed_reasons = [] @@ -31,14 +46,14 @@ def find(self, request): match_failed_reasons.append(reason) return found_match, match_failed_reasons - def add(self, response): + def add(self, response: "BaseResponse") -> None: self.registered.append(response) - def remove(self, response): + def remove(self, response: "BaseResponse") -> None: while response in self.registered: self.registered.remove(response) - def replace(self, response): + def replace(self, response: "BaseResponse") -> None: try: index = self.registered.index(response) except ValueError: diff --git a/responses/registries.pyi b/responses/registries.pyi deleted file mode 100644 index 7be92942..00000000 --- a/responses/registries.pyi +++ /dev/null @@ -1,17 +0,0 @@ -from typing import ( - List, - Tuple, -) -from requests.adapters import PreparedRequest -from responses import BaseResponse - -class FirstMatchRegistry: - _responses = List[BaseResponse] - def __init__(self) -> None: ... - @property - def registered(self) -> List[BaseResponse]: ... - def reset(self) -> None: ... - def find(self, request: PreparedRequest) -> Tuple[BaseResponse, List[str]]: ... - def add(self, response: BaseResponse) -> None: ... - def remove(self, response: BaseResponse) -> None: ... - def replace(self, response: BaseResponse) -> None: ...