This commit is contained in:
Andrew Morgan
2026-01-23 17:05:56 +00:00
parent 85ef24f917
commit e1b42da345
3 changed files with 14 additions and 15 deletions
@@ -97,7 +97,9 @@ class GuestRegistrationServlet(DirectServeJsonResource):
# This is the Matrix user ID (i.e. "@guest_abc123:matrix.org")
user_id = self._api.get_qualified_user_id(localpart)
logger.info(f"Registered guest user: '{user_id}' (MAS ID: '{mas_user_id}')")
logger.info(
f"Registered guest user: '{user_id}' (MAS ID: '{mas_user_id}')"
)
await self._api.set_displayname(
UserID.from_string(user_id),
@@ -135,9 +137,11 @@ class GuestRegistrationServlet(DirectServeJsonResource):
return 500, {"msg": "Internal error: Could not find a free username"}
async def _store_mas_user(self, mas_user_id: str, user_id: str, created_at_sec: int) -> None:
async def _store_mas_user(
self, mas_user_id: str, user_id: str, created_at_sec: int
) -> None:
"""Store details about the MAS user in the DB
Args:
mas_user_id: The MAS user ID
user_id: The Matrix user ID
@@ -52,11 +52,11 @@ class MasAdminClient:
self, mas_user_id: str, expires_in_sec: int
) -> tuple[str, str]:
"""Creates a new personal session for the given MAS user.
Args:
mas_user_id: The MAS user ID.
expires_in_sec: The session expiration time in seconds.
Returns:
A tuple of (device_id, access_token).
"""
@@ -104,7 +104,7 @@ class MasAdminClient:
Returns:
The admin access token.
Raises:
ValueError: If the token response is invalid.
HttpResponseException: On a non-2xx HTTP response.
@@ -122,7 +122,9 @@ class MasAdminClient:
"scope": "urn:mas:admin",
}
response = await self._api.http_client.post_urlencoded_get_json(url, data, headers)
response = await self._api.http_client.post_urlencoded_get_json(
url, data, headers
)
access_token = response.get("access_token")
if not isinstance(access_token, str) or len(access_token) == 0:
raise ValueError("MAS token response missing access_token")
@@ -18,14 +18,7 @@ from twisted.web.test.requesthelper import DummyRequest
from synapse_guest_module import GuestModule
from synapse_guest_module.mas_admin_client import MasAdminClient
from tests import (
SQLiteStore,
create_module,
make_awaitable,
mas_config_override,
set_async_return_value,
set_async_side_effect,
)
from tests import SQLiteStore, create_module, make_awaitable, mas_config_override
@parameterized_class(