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

Commit 876bb83

Browse files
committed
Add - unit test for module API "create_room" method.
1 parent 2c934f6 commit 876bb83

File tree

1 file changed

+27
-1
lines changed

1 file changed

+27
-1
lines changed

tests/module_api/test_api.py

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,13 @@
1616
from twisted.internet import defer
1717

1818
from synapse.api.constants import EduTypes, EventTypes
19+
from synapse.api.errors import SynapseError
1920
from synapse.events import EventBase
2021
from synapse.federation.units import Transaction
2122
from synapse.handlers.presence import UserPresenceState
2223
from synapse.handlers.push_rules import InvalidRuleException
2324
from synapse.rest import admin
24-
from synapse.rest.client import login, notifications, presence, profile, room
25+
from synapse.rest.client import directory, login, notifications, presence, profile, room
2526
from synapse.types import create_requester
2627

2728
from tests.events.test_presence_router import send_presence_update, sync_presence
@@ -40,6 +41,7 @@ class ModuleApiTestCase(HomeserverTestCase):
4041
presence.register_servlets,
4142
profile.register_servlets,
4243
notifications.register_servlets,
44+
directory.register_servlets,
4345
]
4446

4547
def prepare(self, reactor, clock, homeserver):
@@ -635,6 +637,30 @@ def test_check_push_rules_actions(self) -> None:
635637
[{"set_tweak": "sound", "value": "default"}]
636638
)
637639

640+
def test_create_room(self) -> None:
641+
"""Test that modules can create a room."""
642+
# First test user existence verification.
643+
self.get_failure(
644+
self.module_api.create_room(
645+
user_id="@user:test", config={}, ratelimit=False
646+
),
647+
SynapseError,
648+
)
649+
650+
# Now do the happy path.
651+
user_id = self.register_user("user", "password")
652+
653+
(result, _) = self.get_success(
654+
self.module_api.create_room(user_id=user_id, config={}, ratelimit=False)
655+
)
656+
room_id = result["room_id"]
657+
658+
channel = self.make_request(
659+
"GET",
660+
f"/_matrix/client/r0/directory/list/room/{room_id}",
661+
)
662+
self.assertEqual(channel.code, 200, channel.result)
663+
638664

639665
class ModuleApiWorkerTestCase(BaseMultiWorkerStreamTestCase):
640666
"""For testing ModuleApi functionality in a multi-worker setup"""

0 commit comments

Comments
 (0)