diff --git a/examples/websocket_chat.py b/examples/websocket_chat.py index 22fa680..8c6a2a6 100644 --- a/examples/websocket_chat.py +++ b/examples/websocket_chat.py @@ -1,5 +1,7 @@ # WebSocket chat room example. # https://responder.kennethreitz.org/tutorial-websockets.html +from starlette.websockets import WebSocketDisconnect + import responder api = responder.API() @@ -47,7 +49,7 @@ async def chat(ws): message = await ws.receive_text() for client in connected: await client.send_text(message) - except Exception: # noqa: S110 + except WebSocketDisconnect: pass finally: connected.discard(ws) diff --git a/responder/routes.py b/responder/routes.py index 2f8733b..964b0a9 100644 --- a/responder/routes.py +++ b/responder/routes.py @@ -192,7 +192,7 @@ class Route(BaseRoute): try: validated = resp_model(**response.media) response.media = validated.model_dump() - except Exception: # noqa: S110 + except (ValueError, TypeError): pass # Don't break the response if serialization fails # Run after-request hooks diff --git a/tests/test_coverage.py b/tests/test_coverage.py index f5c851e..a0a2f33 100644 --- a/tests/test_coverage.py +++ b/tests/test_coverage.py @@ -78,7 +78,10 @@ def test_background_task_exception(capsys): raise ValueError("task failed") future = failing_task() - future.result # wait for completion # noqa: B018 + try: + future.result() # wait for completion + except ValueError: + pass time.sleep(0.2) # let the done callback fire captured = capsys.readouterr()