diff --git a/tests/storage/test_sliding_sync_tables.py b/tests/storage/test_sliding_sync_tables.py
index de80ad53cd..61dccc8077 100644
--- a/tests/storage/test_sliding_sync_tables.py
+++ b/tests/storage/test_sliding_sync_tables.py
@@ -4416,136 +4416,6 @@ class SlidingSyncTablesBackgroundUpdatesTestCase(SlidingSyncTablesTestCaseBase):
),
)
- def test_membership_snapshots_background_update_forgotten_partial(self) -> None:
- """
- Test an existing `sliding_sync_membership_snapshots` row is updated with the
- latest `forgotten` status after the background update passes over it.
- """
- user1_id = self.register_user("user1", "pass")
- user1_tok = self.login(user1_id, "pass")
- user2_id = self.register_user("user2", "pass")
- user2_tok = self.login(user2_id, "pass")
-
- room_id = self.helper.create_room_as(user2_id, tok=user2_tok)
-
- # User1 joins the room
- self.helper.join(room_id, user1_id, tok=user1_tok)
- # User1 leaves the room (we have to leave in order to forget the room)
- self.helper.leave(room_id, user1_id, tok=user1_tok)
-
- state_map = self.get_success(
- self.storage_controllers.state.get_current_state(room_id)
- )
-
- # Forget the room
- channel = self.make_request(
- "POST",
- f"/_matrix/client/r0/rooms/{room_id}/forget",
- content={},
- access_token=user1_tok,
- )
- self.assertEqual(channel.code, 200, channel.result)
-
- # Clean-up the `sliding_sync_joined_rooms` table as if the forgotten status
- # never made it into the table.
- self.get_success(
- self.store.db_pool.simple_update(
- table="sliding_sync_membership_snapshots",
- keyvalues={"room_id": room_id},
- updatevalues={"forgotten": 0},
- desc="sliding_sync_membership_snapshots.test_membership_snapshots_background_update_forgotten_partial",
- )
- )
-
- # We should see the partial row that we made in preparation for the test.
- sliding_sync_membership_snapshots_results = (
- self._get_sliding_sync_membership_snapshots()
- )
- self.assertIncludes(
- set(sliding_sync_membership_snapshots_results.keys()),
- {
- (room_id, user1_id),
- (room_id, user2_id),
- },
- exact=True,
- )
- user1_snapshot = _SlidingSyncMembershipSnapshotResult(
- room_id=room_id,
- user_id=user1_id,
- sender=user1_id,
- membership_event_id=state_map[(EventTypes.Member, user1_id)].event_id,
- membership=Membership.LEAVE,
- event_stream_ordering=state_map[
- (EventTypes.Member, user1_id)
- ].internal_metadata.stream_ordering,
- has_known_state=True,
- room_type=None,
- room_name=None,
- is_encrypted=False,
- tombstone_successor_room_id=None,
- # Room is *not* forgotten because of our test preparation
- forgotten=False,
- )
- self.assertEqual(
- sliding_sync_membership_snapshots_results.get((room_id, user1_id)),
- user1_snapshot,
- )
- user2_snapshot = _SlidingSyncMembershipSnapshotResult(
- room_id=room_id,
- user_id=user2_id,
- sender=user2_id,
- membership_event_id=state_map[(EventTypes.Member, user2_id)].event_id,
- membership=Membership.JOIN,
- event_stream_ordering=state_map[
- (EventTypes.Member, user2_id)
- ].internal_metadata.stream_ordering,
- has_known_state=True,
- room_type=None,
- room_name=None,
- is_encrypted=False,
- tombstone_successor_room_id=None,
- )
- self.assertEqual(
- sliding_sync_membership_snapshots_results.get((room_id, user2_id)),
- user2_snapshot,
- )
-
- # Insert and run the background update.
- self.get_success(
- self.store.db_pool.simple_insert(
- "background_updates",
- {
- "update_name": _BackgroundUpdates.SLIDING_SYNC_MEMBERSHIP_SNAPSHOTS_BG_UPDATE,
- "progress_json": "{}",
- },
- )
- )
- self.store.db_pool.updates._all_done = False
- self.wait_for_background_updates()
-
- # Make sure the table is populated
- sliding_sync_membership_snapshots_results = (
- self._get_sliding_sync_membership_snapshots()
- )
- self.assertIncludes(
- set(sliding_sync_membership_snapshots_results.keys()),
- {
- (room_id, user1_id),
- (room_id, user2_id),
- },
- exact=True,
- )
- # Forgotten status is now updated
- self.assertEqual(
- sliding_sync_membership_snapshots_results.get((room_id, user1_id)),
- attr.evolve(user1_snapshot, forgotten=True),
- )
- # Holds the info according to the current state when the user joined
- self.assertEqual(
- sliding_sync_membership_snapshots_results.get((room_id, user2_id)),
- user2_snapshot,
- )
-
class SlidingSyncTablesCatchUpBackgroundUpdatesTestCase(SlidingSyncTablesTestCaseBase):
"""
|