mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-08-03 19:04:13 -04:00
Drop support for calling /_matrix/client/v3/rooms/{roomId}/invite
without an id_access_token
(#13241)
Fixes #13206 Signed-off-by: Jacek Kusnierz jacek.kusnierz@tum.de
This commit is contained in:
parent
42b11d5565
commit
84ddcd7bbf
9 changed files with 81 additions and 137 deletions
|
@ -25,7 +25,6 @@ from tests import unittest
|
|||
|
||||
|
||||
class IdentityTestCase(unittest.HomeserverTestCase):
|
||||
|
||||
servlets = [
|
||||
synapse.rest.admin.register_servlets_for_client_rest_resource,
|
||||
room.register_servlets,
|
||||
|
@ -33,7 +32,6 @@ class IdentityTestCase(unittest.HomeserverTestCase):
|
|||
]
|
||||
|
||||
def make_homeserver(self, reactor: MemoryReactor, clock: Clock) -> HomeServer:
|
||||
|
||||
config = self.default_config()
|
||||
config["enable_3pid_lookup"] = False
|
||||
self.hs = self.setup_test_homeserver(config=config)
|
||||
|
@ -54,6 +52,7 @@ class IdentityTestCase(unittest.HomeserverTestCase):
|
|||
"id_server": "testis",
|
||||
"medium": "email",
|
||||
"address": "test@example.com",
|
||||
"id_access_token": tok,
|
||||
}
|
||||
request_url = ("/rooms/%s/invite" % (room_id)).encode("ascii")
|
||||
channel = self.make_request(
|
||||
|
|
|
@ -3461,3 +3461,21 @@ class ThreepidInviteTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Also check that it stopped before calling _make_and_store_3pid_invite.
|
||||
make_invite_mock.assert_called_once()
|
||||
|
||||
def test_400_missing_param_without_id_access_token(self) -> None:
|
||||
"""
|
||||
Test that a 3pid invite request returns 400 M_MISSING_PARAM
|
||||
if we do not include id_access_token.
|
||||
"""
|
||||
channel = self.make_request(
|
||||
method="POST",
|
||||
path="/rooms/" + self.room_id + "/invite",
|
||||
content={
|
||||
"id_server": "example.com",
|
||||
"medium": "email",
|
||||
"address": "teresa@example.com",
|
||||
},
|
||||
access_token=self.tok,
|
||||
)
|
||||
self.assertEqual(channel.code, 400)
|
||||
self.assertEqual(channel.json_body["errcode"], "M_MISSING_PARAM")
|
||||
|
|
|
@ -97,7 +97,12 @@ class RoomTestCase(_ShadowBannedBase):
|
|||
channel = self.make_request(
|
||||
"POST",
|
||||
"/rooms/%s/invite" % (room_id,),
|
||||
{"id_server": "test", "medium": "email", "address": "test@test.test"},
|
||||
{
|
||||
"id_server": "test",
|
||||
"medium": "email",
|
||||
"address": "test@test.test",
|
||||
"id_access_token": "anytoken",
|
||||
},
|
||||
access_token=self.banned_access_token,
|
||||
)
|
||||
self.assertEqual(200, channel.code, channel.result)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue