From b8fa923ec97af985dfdb204032b30756c6aa77cb Mon Sep 17 00:00:00 2001 From: Andrew Stiles Date: Wed, 21 Nov 2018 11:30:31 -0600 Subject: [PATCH] Fix broken exception handling in test_500 --- responder/api.py | 3 +++ tests/test_responder.py | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/responder/api.py b/responder/api.py index 005c153..135c199 100644 --- a/responder/api.py +++ b/responder/api.py @@ -13,6 +13,7 @@ import yaml from apispec import APISpec, yaml_utils from apispec.ext.marshmallow import MarshmallowPlugin from asgiref.wsgi import WsgiToAsgi +from starlette.exceptions import ExceptionMiddleware from starlette.middleware.errors import ServerErrorMiddleware from starlette.lifespan import LifespanHandler from starlette.middleware.cors import CORSMiddleware @@ -128,6 +129,8 @@ class API: self.default_endpoint = None self.app = self.dispatch + self.exception_middleware = ExceptionMiddleware(self.dispatch, debug=debug) + self.app = self.exception_middleware self.add_middleware(GZipMiddleware) if self.hsts_enabled: diff --git a/tests/test_responder.py b/tests/test_responder.py index 393ff1c..54bbf72 100644 --- a/tests/test_responder.py +++ b/tests/test_responder.py @@ -478,7 +478,7 @@ def test_500(api): def catcher(request, exc): return PlainTextResponse("Suppressed error", 500) - api.app.add_exception_handler(ValueError, catcher) + api.exception_middleware.add_exception_handler(ValueError, catcher) @api.route("/") def view(req, resp):