diff options
author | Erik Johnston <erik@matrix.org> | 2019-10-02 10:14:01 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2019-10-02 10:14:01 +0100 |
commit | ce7a3e7e27ba4215ed86112d2967b0acca4cfb77 (patch) | |
tree | 7bcde3735648e5c6bcd806396c0aaa04fa222969 /tests | |
parent | Merge pull request #6135 from matrix-org/erikj/fixup_devices_last_seen_query (diff) | |
download | synapse-ce7a3e7e27ba4215ed86112d2967b0acca4cfb77.tar.xz |
Fix fetching censored redactions from DB
Fetching a censored redactions caused an exception due to the code expecting redactions to have a `redact` key, which redacted redactions don't have.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/storage/test_redaction.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/storage/test_redaction.py b/tests/storage/test_redaction.py index deecfad9fb..427d3c49c5 100644 --- a/tests/storage/test_redaction.py +++ b/tests/storage/test_redaction.py @@ -118,6 +118,8 @@ class RedactionTestCase(unittest.HomeserverTestCase): self.get_success(self.store.persist_event(event, context)) + return event + def test_redact(self): self.get_success( self.inject_room_member(self.room1, self.u_alice, Membership.JOIN) @@ -361,3 +363,37 @@ class RedactionTestCase(unittest.HomeserverTestCase): ) self.assert_dict({"content": {}}, json.loads(event_json)) + + def test_redact_redaction(self): + """Tests that we can redact a redaction and can fetch it again. + """ + + self.get_success( + self.inject_room_member(self.room1, self.u_alice, Membership.JOIN) + ) + + msg_event = self.get_success(self.inject_message(self.room1, self.u_alice, "t")) + + first_redact_event = self.get_success( + self.inject_redaction( + self.room1, msg_event.event_id, self.u_alice, "Redacting message" + ) + ) + + self.get_success( + self.inject_redaction( + self.room1, + first_redact_event.event_id, + self.u_alice, + "Redacting redaction", + ) + ) + + # Now lets jump to the future where we have censored the redaction event + # in the DB. + self.reactor.advance(60 * 60 * 24 * 31) + + # We just want to check that fetching the event doesn't raise an exception. + self.get_success( + self.store.get_event(first_redact_event.event_id, allow_none=True) + ) |