diff --git a/tests/test_utils/event_builders.py b/tests/test_utils/event_builders.py index 1f8239ada7..e4f05f0c2a 100644 --- a/tests/test_utils/event_builders.py +++ b/tests/test_utils/event_builders.py @@ -12,7 +12,9 @@ # . # -from typing import Any +from typing import Any, TypedDict + +from typing_extensions import NotRequired, Unpack from synapse.api.room_versions import ( RoomVersion, @@ -59,7 +61,7 @@ def make_test_event( room_version: RoomVersion = RoomVersions.V1, internal_metadata_dict: JsonDict | None = None, rejected_reason: str | None = None, - **fields: Any, + **fields: Unpack["_EventFields"], ) -> EventBase: """Build an `EventBase` with defaults for the strict-required fields. @@ -97,3 +99,18 @@ def make_test_pdu_event( """ pdu = {**default_event_fields(room_version), **pdu} return event_from_pdu_json(pdu, room_version, received_time=received_time) + + +class _EventFields(TypedDict): + """Type for `kwargs` in `make_test_event`.""" + + event_id: NotRequired[str] + type: NotRequired[str] + sender: NotRequired[str] + content: NotRequired[JsonDict] + depth: NotRequired[int] + origin_server_ts: NotRequired[int] + hashes: NotRequired[dict] + auth_events: NotRequired[list] + prev_events: NotRequired[list] + room_id: NotRequired[str]