Skip to content

Commit cbfd85d

Browse files
committed
model: Update index when marking message as read.
Modify tests.
1 parent 61bb67a commit cbfd85d

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

tests/model/test_model.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1239,6 +1239,8 @@ def test_update_read_status(self, mocker, model, event_op,
12391239
flags_before, flags_after):
12401240
model.index = dict(messages={msg_id: {'flags': flags_before}
12411241
for msg_id in indexed_ids})
1242+
model.index['unread_msg_ids'] = set(event_message_ids)
1243+
12421244
event = {
12431245
'messages': event_message_ids,
12441246
'type': 'update_message_flags',
@@ -1272,6 +1274,8 @@ def test_update_read_status(self, mocker, model, event_op,
12721274
elif event_op == 'remove':
12731275
set_count.assert_not_called()
12741276

1277+
assert len(model.index['unread_msg_ids']) == 0
1278+
12751279
@pytest.mark.parametrize('narrow, event, called', [
12761280
# Not in PM Narrow
12771281
([], {}, False),

zulipterminal/model.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -838,6 +838,7 @@ def update_message_flag_status(self, event: Event) -> None:
838838
if event['operation'] == 'add' and flag_to_change == 'read':
839839
set_count(list(message_ids_to_mark & indexed_message_ids),
840840
self.controller, -1)
841+
self.index['unread_msg_ids'].difference_update(message_ids_to_mark)
841842

842843
def update_rendered_view(self, msg_id: int) -> None:
843844
# Update new content in the rendered view

0 commit comments

Comments
 (0)