|
|
@@ -19,7 +19,7 @@ from parameterized import parameterized |
|
|
|
|
|
|
|
from twisted.test.proto_helpers import MemoryReactor |
|
|
|
|
|
|
|
from synapse.api.constants import EventContentFields |
|
|
|
from synapse.api.constants import EventContentFields, RelationTypes |
|
|
|
from synapse.api.room_versions import RoomVersions |
|
|
|
from synapse.push.bulk_push_rule_evaluator import BulkPushRuleEvaluator |
|
|
|
from synapse.rest import admin |
|
|
@@ -370,3 +370,43 @@ class TestBulkPushRuleEvaluator(HomeserverTestCase): |
|
|
|
}, |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
@override_config({"experimental_features": {"msc3958_supress_edit_notifs": True}}) |
|
|
|
def test_suppress_edits(self) -> None: |
|
|
|
"""Under the default push rules, event edits should not generate notifications.""" |
|
|
|
bulk_evaluator = BulkPushRuleEvaluator(self.hs) |
|
|
|
|
|
|
|
# Create & persist an event to use as the parent of the relation. |
|
|
|
event, context = self.get_success( |
|
|
|
self.event_creation_handler.create_event( |
|
|
|
self.requester, |
|
|
|
{ |
|
|
|
"type": "m.room.message", |
|
|
|
"room_id": self.room_id, |
|
|
|
"content": { |
|
|
|
"msgtype": "m.text", |
|
|
|
"body": "helo", |
|
|
|
}, |
|
|
|
"sender": self.alice, |
|
|
|
}, |
|
|
|
) |
|
|
|
) |
|
|
|
self.get_success( |
|
|
|
self.event_creation_handler.handle_new_client_event( |
|
|
|
self.requester, events_and_context=[(event, context)] |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
# Room mentions from those without power should not notify. |
|
|
|
self.assertFalse( |
|
|
|
self._create_and_process( |
|
|
|
bulk_evaluator, |
|
|
|
{ |
|
|
|
"body": self.alice, |
|
|
|
"m.relates_to": { |
|
|
|
"rel_type": RelationTypes.REPLACE, |
|
|
|
"event_id": event.event_id, |
|
|
|
}, |
|
|
|
}, |
|
|
|
) |
|
|
|
) |