diff options
author | Sean Quah <8349537+squahtx@users.noreply.github.com> | 2022-04-28 16:49:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-28 15:49:50 +0000 |
commit | 0b684b59e5ef761575830e9bcdfebcb13c6d2132 (patch) | |
tree | 248f4b30d2e5037a413364c05088c31b54255dc0 /tests/handlers | |
parent | Add linebreak to pipx install quote in README (#12579) (diff) | |
download | synapse-0b684b59e5ef761575830e9bcdfebcb13c6d2132.tar.xz |
Fix logging of incorrect status codes for disconnected requests (#12580)
The status code of requests must always be set, regardless of client disconnection, otherwise they will always be logged as 200!. Broken for `respond_with_json` in f48792eec43f893f4f893ffdcbf00f8958b6f6b5. Broken for `respond_with_json_bytes` in 3e58ce72b42f2ae473c1e76a967548cd6fa7e2e6. Broken for `respond_with_html_bytes` in ea26e9a98b0541fc886a1cb826a38352b7599dbe. Signed-off-by: Sean Quah <seanq@element.io>
Diffstat (limited to 'tests/handlers')
-rw-r--r-- | tests/handlers/test_cas.py | 14 | ||||
-rw-r--r-- | tests/handlers/test_saml.py | 14 |
2 files changed, 26 insertions, 2 deletions
diff --git a/tests/handlers/test_cas.py b/tests/handlers/test_cas.py index a54aa29cf1..751025c5da 100644 --- a/tests/handlers/test_cas.py +++ b/tests/handlers/test_cas.py @@ -201,4 +201,16 @@ class CasHandlerTestCase(HomeserverTestCase): def _mock_request(): """Returns a mock which will stand in as a SynapseRequest""" - return Mock(spec=["getClientIP", "getHeader", "_disconnected"]) + mock = Mock( + spec=[ + "finish", + "getClientIP", + "getHeader", + "setHeader", + "setResponseCode", + "write", + ] + ) + # `_disconnected` musn't be another `Mock`, otherwise it will be truthy. + mock._disconnected = False + return mock diff --git a/tests/handlers/test_saml.py b/tests/handlers/test_saml.py index 8d4404eda1..e2f0f90ef1 100644 --- a/tests/handlers/test_saml.py +++ b/tests/handlers/test_saml.py @@ -349,4 +349,16 @@ class SamlHandlerTestCase(HomeserverTestCase): def _mock_request(): """Returns a mock which will stand in as a SynapseRequest""" - return Mock(spec=["getClientIP", "getHeader", "_disconnected"]) + mock = Mock( + spec=[ + "finish", + "getClientIP", + "getHeader", + "setHeader", + "setResponseCode", + "write", + ] + ) + # `_disconnected` musn't be another `Mock`, otherwise it will be truthy. + mock._disconnected = False + return mock |