Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Update tests to send local user receipts for real events
Browse files Browse the repository at this point in the history
  • Loading branch information
Fizzadar committed Feb 4, 2023
1 parent d0f727b commit 5e0c976
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 6 deletions.
14 changes: 10 additions & 4 deletions tests/handlers/test_appservice.py
Original file line number Diff line number Diff line change
Expand Up @@ -588,7 +588,7 @@ def test_sending_read_receipt_batches_to_application_services(self) -> None:
],
ApplicationService.NS_ROOMS: [
{
"regex": "!fakeroom_.*",
"regex": ".*",
"exclusive": True,
}
],
Expand All @@ -597,16 +597,22 @@ def test_sending_read_receipt_batches_to_application_services(self) -> None:

# Now, pretend that we receive a large burst of read receipts (300 total) that
# all come in at once.
for i in range(300):
for _ in range(300):
room_id = self.helper.create_room_as(
self.local_user, tok=self.local_user_token
)
resp = self.helper.send(room_id, tok=self.local_user_token)
event_id = resp["event_id"]

self.get_success(
# Insert a fake read receipt into the database
self.hs.get_datastores().main.insert_receipt(
# We have to use unique room ID + user ID combinations here, as the db query
# is an upsert.
room_id=f"!fakeroom_{i}:test",
room_id=room_id,
receipt_type="m.read",
user_id=self.local_user,
event_ids=[f"$eventid_{i}"],
event_ids=[event_id],
thread_id=None,
data={},
)
Expand Down
9 changes: 7 additions & 2 deletions tests/rest/client/test_receipts.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from twisted.test.proto_helpers import MemoryReactor

import synapse.rest.admin
from synapse.rest.client import login, receipts, register
from synapse.rest.client import login, receipts, register, room
from synapse.server import HomeServer
from synapse.util import Clock

Expand All @@ -26,6 +26,7 @@ class ReceiptsTestCase(unittest.HomeserverTestCase):
login.register_servlets,
register.register_servlets,
receipts.register_servlets,
room.register_servlets,
synapse.rest.admin.register_servlets,
]

Expand All @@ -34,9 +35,13 @@ def prepare(self, reactor: MemoryReactor, clock: Clock, hs: HomeServer) -> None:
self.owner_tok = self.login("owner", "pass")

def test_send_receipt(self) -> None:
room_id = self.helper.create_room_as(self.owner, tok=self.owner_tok)
resp = self.helper.send(room_id, tok=self.owner_tok)
event_id = resp["event_id"]

channel = self.make_request(
"POST",
"/rooms/!abc:beep/receipt/m.read/$def",
f"/rooms/!abc:beep/receipt/m.read/{event_id}",
content={},
access_token=self.owner_tok,
)
Expand Down

0 comments on commit 5e0c976

Please sign in to comment.