mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-06-25 10:00:32 -04:00
Add support for room version 10 (#13220)
This commit is contained in:
parent
2341032cf2
commit
ad5761b65c
4 changed files with 100 additions and 1 deletions
|
@ -19,7 +19,7 @@ from parameterized import parameterized
|
|||
|
||||
from synapse import event_auth
|
||||
from synapse.api.constants import EventContentFields
|
||||
from synapse.api.errors import AuthError
|
||||
from synapse.api.errors import AuthError, SynapseError
|
||||
from synapse.api.room_versions import EventFormatVersions, RoomVersion, RoomVersions
|
||||
from synapse.events import EventBase, make_event_from_dict
|
||||
from synapse.storage.databases.main.events_worker import EventRedactBehaviour
|
||||
|
@ -689,6 +689,45 @@ class EventAuthTestCase(unittest.TestCase):
|
|||
auth_events.values(),
|
||||
)
|
||||
|
||||
def test_room_v10_rejects_string_power_levels(self) -> None:
|
||||
pl_event_content = {"users_default": "42"}
|
||||
pl_event = make_event_from_dict(
|
||||
{
|
||||
"room_id": TEST_ROOM_ID,
|
||||
**_maybe_get_event_id_dict_for_room_version(RoomVersions.V10),
|
||||
"type": "m.room.power_levels",
|
||||
"sender": "@test:test.com",
|
||||
"state_key": "",
|
||||
"content": pl_event_content,
|
||||
"signatures": {"test.com": {"ed25519:0": "some9signature"}},
|
||||
},
|
||||
room_version=RoomVersions.V10,
|
||||
)
|
||||
|
||||
pl_event2_content = {"events": {"m.room.name": "42", "m.room.power_levels": 42}}
|
||||
pl_event2 = make_event_from_dict(
|
||||
{
|
||||
"room_id": TEST_ROOM_ID,
|
||||
**_maybe_get_event_id_dict_for_room_version(RoomVersions.V10),
|
||||
"type": "m.room.power_levels",
|
||||
"sender": "@test:test.com",
|
||||
"state_key": "",
|
||||
"content": pl_event2_content,
|
||||
"signatures": {"test.com": {"ed25519:0": "some9signature"}},
|
||||
},
|
||||
room_version=RoomVersions.V10,
|
||||
)
|
||||
|
||||
with self.assertRaises(SynapseError):
|
||||
event_auth._check_power_levels(
|
||||
pl_event.room_version, pl_event, {("fake_type", "fake_key"): pl_event2}
|
||||
)
|
||||
|
||||
with self.assertRaises(SynapseError):
|
||||
event_auth._check_power_levels(
|
||||
pl_event.room_version, pl_event2, {("fake_type", "fake_key"): pl_event}
|
||||
)
|
||||
|
||||
|
||||
# helpers for making events
|
||||
TEST_DOMAIN = "example.com"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue