From d54909956ef616d976b3d9969be994df5b65030a Mon Sep 17 00:00:00 2001 From: santhoshivan23 <47689668+santhoshivan23@users.noreply.github.com> Date: Wed, 22 Jun 2022 20:02:18 +0530 Subject: validate room alias before interacting with the room directory (#13106) --- tests/rest/client/test_directory.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'tests/rest/client') diff --git a/tests/rest/client/test_directory.py b/tests/rest/client/test_directory.py index 67473a68d7..16e7ef41bc 100644 --- a/tests/rest/client/test_directory.py +++ b/tests/rest/client/test_directory.py @@ -215,6 +215,19 @@ class DirectoryTestCase(unittest.HomeserverTestCase): self.assertEqual(channel.code, expected_code, channel.result) return alias + def test_invalid_alias(self) -> None: + alias = "#potato" + channel = self.make_request( + "GET", + f"/_matrix/client/r0/directory/room/{alias}", + access_token=self.user_tok, + ) + self.assertEqual(channel.code, HTTPStatus.BAD_REQUEST, channel.result) + self.assertIn("error", channel.json_body, channel.json_body) + self.assertEqual( + channel.json_body["errcode"], "M_INVALID_PARAM", channel.json_body + ) + def random_alias(self, length: int) -> str: return RoomAlias(random_string(length), self.hs.hostname).to_string() -- cgit 1.4.1