diff options
author | Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> | 2020-12-02 10:38:18 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-02 10:38:18 +0000 |
commit | edb3d3f82716c2b5c903ddb4d0df155e06c5c9e9 (patch) | |
tree | c9e46b7f6144048eb88b80df7c2a01b5c7c86ae5 /tests/rest/client/v1/utils.py | |
parent | Support "identifier" dicts in UIA (#8848) (diff) | |
download | synapse-edb3d3f82716c2b5c903ddb4d0df155e06c5c9e9.tar.xz |
Allow specifying room version in 'RestHelper.create_room_as' and add typing (#8854)
This PR adds a `room_version` argument to the `RestHelper`'s `create_room_as` function for tests. I plan to use this for testing knocking, which currently uses an unstable room version.
Diffstat (limited to 'tests/rest/client/v1/utils.py')
-rw-r--r-- | tests/rest/client/v1/utils.py | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/tests/rest/client/v1/utils.py b/tests/rest/client/v1/utils.py index b58768675b..737c38c396 100644 --- a/tests/rest/client/v1/utils.py +++ b/tests/rest/client/v1/utils.py @@ -41,14 +41,37 @@ class RestHelper: auth_user_id = attr.ib() def create_room_as( - self, room_creator=None, is_public=True, tok=None, expect_code=200, - ): + self, + room_creator: str = None, + is_public: bool = True, + room_version: str = None, + tok: str = None, + expect_code: int = 200, + ) -> str: + """ + Create a room. + + Args: + room_creator: The user ID to create the room with. + is_public: If True, the `visibility` parameter will be set to the + default (public). Otherwise, the `visibility` parameter will be set + to "private". + room_version: The room version to create the room as. Defaults to Synapse's + default room version. + tok: The access token to use in the request. + expect_code: The expected HTTP response code. + + Returns: + The ID of the newly created room. + """ temp_id = self.auth_user_id self.auth_user_id = room_creator path = "/_matrix/client/r0/createRoom" content = {} if not is_public: content["visibility"] = "private" + if room_version: + content["room_version"] = room_version if tok: path = path + "?access_token=%s" % tok |