Cleanup type checking

This commit is contained in:
Adam Hopkins
2021-02-21 21:29:41 +02:00
parent 209579f280
commit d402d0362e
9 changed files with 63 additions and 35 deletions

View File

@@ -243,6 +243,7 @@ class Sanic(BaseSanic):
self.named_response_middleware[_rn] = deque()
if middleware not in self.named_response_middleware[_rn]:
self.named_response_middleware[_rn].appendleft(middleware)
return middleware
def _apply_exception_handler(self, handler: FutureException):
"""Decorate a function to be registered as a handler for exceptions
@@ -257,12 +258,12 @@ class Sanic(BaseSanic):
self.error_handler.add(e, handler.handler)
else:
self.error_handler.add(exception, handler.handler)
return handler
return handler.handler
def _apply_listener(self, listener: FutureListener):
return self.register_listener(listener.listener, listener.event)
def _apply_route(self, route: FutureRoute) -> Route:
def _apply_route(self, route: FutureRoute) -> List[Route]:
params = route._asdict()
websocket = params.pop("websocket", False)
subprotocols = params.pop("subprotocols", None)
@@ -277,7 +278,15 @@ class Sanic(BaseSanic):
websocket_handler.__name__ = route.handler.__name__ # type: ignore
websocket_handler.is_websocket = True # type: ignore
params["handler"] = websocket_handler
return self.router.add(**params)
routes = self.router.add(**params)
if isinstance(routes, Route):
routes = [routes]
for r in routes:
r.ctx.websocket = websocket
r.ctx.static = params.get("static", False)
return routes
def _apply_static(self, static: FutureStatic) -> Route:
return self._register_static(static)