mirror of
https://github.com/element-hq/synapse.git
synced 2024-12-14 11:57:44 +00:00
lint
This commit is contained in:
parent
62cb8cf060
commit
c850e33cda
3 changed files with 13 additions and 15 deletions
|
@ -175,7 +175,7 @@ class MessageHandler:
|
|||
state_filter: Optional[StateFilter] = None,
|
||||
at_token: Optional[StreamToken] = None,
|
||||
last_hash: Optional[str] = None,
|
||||
) -> Tuple[List[dict], str]:
|
||||
) -> Tuple[List[dict], Optional[str]]:
|
||||
"""Retrieve all state events for a given room. If the user is
|
||||
joined to the room then return the current state. If the user has
|
||||
left the room return the state events from when they left. If an explicit
|
||||
|
@ -192,7 +192,8 @@ class MessageHandler:
|
|||
state based on the current_state_events table.
|
||||
Returns:
|
||||
A list of dicts representing state events. [{}, {}, {}]
|
||||
A hash of the state IDs representing the state events.
|
||||
A hash of the state IDs representing the state events. This is only calculated if
|
||||
no at_token is given and the user is joined to the room.
|
||||
Raises:
|
||||
NotFoundError (404) if the at token does not yield an event
|
||||
|
||||
|
@ -250,7 +251,7 @@ class MessageHandler:
|
|||
# If the requester's hash matches ours, their cache is up to date and we can skip
|
||||
# fetching events.
|
||||
if last_hash == hash:
|
||||
return None, hash
|
||||
return [], hash
|
||||
room_state = await self.store.get_events(state_ids.values())
|
||||
elif membership == Membership.LEAVE:
|
||||
# If the membership is not JOIN, then the event ID should exist.
|
||||
|
|
|
@ -835,7 +835,7 @@ class RoomStateRestServlet(RestServlet):
|
|||
@cancellable
|
||||
async def on_GET(
|
||||
self, request: SynapseRequest, room_id: str
|
||||
) -> Tuple[int, List[JsonDict]]:
|
||||
) -> Tuple[int, Optional[List[JsonDict]]]:
|
||||
requester = await self.auth.get_user_by_req(request, allow_guest=True)
|
||||
existing_hash = request.getHeader(b"If-None-Match")
|
||||
|
||||
|
@ -848,7 +848,7 @@ class RoomStateRestServlet(RestServlet):
|
|||
)
|
||||
request.setHeader(b"ETag", f'"{hash}"'.encode("ascii"))
|
||||
|
||||
if events is None:
|
||||
if len(events) == 0:
|
||||
return 304, None
|
||||
|
||||
return 200, events
|
||||
|
|
|
@ -560,21 +560,18 @@ class RoomStateTestCase(RoomBase):
|
|||
"/rooms/%s/state" % room_id,
|
||||
)
|
||||
|
||||
etag = channel.headers.getRawHeaders(b"ETag")[0]
|
||||
etagheader = channel.headers.getRawHeaders(b"ETag")
|
||||
self.assertEqual(HTTPStatus.OK, channel.code, msg=channel.result["body"])
|
||||
self.assertIsNotNone(
|
||||
etag,
|
||||
"has a ETag header",
|
||||
)
|
||||
assert etagheader
|
||||
channel2 = self.make_request(
|
||||
"GET",
|
||||
"/rooms/%s/state" % room_id,
|
||||
custom_headers=(
|
||||
custom_headers=[
|
||||
(
|
||||
b"If-None-Match",
|
||||
etag,
|
||||
etagheader[0],
|
||||
),
|
||||
),
|
||||
],
|
||||
)
|
||||
self.assertEqual(
|
||||
HTTPStatus.NOT_MODIFIED,
|
||||
|
@ -582,8 +579,8 @@ class RoomStateTestCase(RoomBase):
|
|||
"Responds with not modified when provided with the correct ETag",
|
||||
)
|
||||
self.assertEqual(
|
||||
etag,
|
||||
channel2.headers.getRawHeaders(b"ETag")[0],
|
||||
etagheader,
|
||||
channel2.headers.getRawHeaders(b"ETag"),
|
||||
"returns the same etag",
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in a new issue