@@ -1105,6 +1105,8 @@ def test_toggle_stream_muted_status(
11051105 (["read" ], "add" ),
11061106 (["read" , "starred" ], "remove" ),
11071107 (["starred" , "read" ], "remove" ),
1108+ (["read" , "mentioned" , "wildcard_mentioned" ], "add" ),
1109+ (["mentioned" , "wildcard_mentioned" , "starred" ], "remove" ),
11081110 ],
11091111 )
11101112 def test_toggle_message_star_status (
@@ -2295,11 +2297,18 @@ def test_update_star_status_invalid_operation(
22952297 ("add" , 1 , ["read" ], ["read" , "starred" ]),
22962298 ("add" , 1 , ["starred" ], ["starred" ]),
22972299 ("add" , 1 , ["read" , "starred" ], ["read" , "starred" ]),
2300+ ("add" , 1 , ["mentioned" ], ["mentioned" , "starred" ]),
2301+ ("add" , 1 , ["mentioned" , "starred" ], ["mentioned" , "starred" ]),
2302+ ("add" , 1 , ["wildcard_mentioned" ], ["wildcard_mentioned" , "starred" ]),
22982303 ("remove" , - 1 , [], []),
22992304 ("remove" , - 1 , ["read" ], ["read" ]),
23002305 ("remove" , - 1 , ["starred" ], []),
23012306 ("remove" , - 1 , ["read" , "starred" ], ["read" ]),
23022307 ("remove" , - 1 , ["starred" , "read" ], ["read" ]),
2308+ ("remove" , - 1 , ["mentioned" ], ["mentioned" ]),
2309+ ("remove" , - 1 , ["wildcard_mentioned" ], ["wildcard_mentioned" ]),
2310+ ("remove" , - 1 , ["mentioned" , "starred" ], ["mentioned" ]),
2311+ ("remove" , - 1 , ["wildcard_mentioned" , "starred" ], ["wildcard_mentioned" ]),
23032312 ],
23042313 )
23052314 def test_update_star_status (
@@ -2318,7 +2327,23 @@ def test_update_star_status(
23182327
23192328 model .index = dict (
23202329 messages = {msg_id : {"flags" : flags_before } for msg_id in indexed_ids },
2321- unread_mentioned_msg_ids = set (),
2330+ mentioned_msg_ids = set (
2331+ [
2332+ msg_id
2333+ for msg_id in indexed_ids
2334+ if {"mentioned" , "wildcard_mentioned" } & set (flags_before )
2335+ ]
2336+ ),
2337+ unread_mentioned_msg_ids = set (
2338+ [
2339+ msg_id
2340+ for msg_id in indexed_ids
2341+ if (
2342+ {"mentioned" , "wildcard_mentioned" } & set (flags_before )
2343+ and "read" not in flags_before
2344+ )
2345+ ]
2346+ ),
23222347 starred_msg_ids = set (
23232348 [msg_id for msg_id in indexed_ids if "starred" in flags_before ]
23242349 ),
@@ -2379,11 +2404,19 @@ def test_update_star_status(
23792404 ("add" , ["read" ], ["read" ]),
23802405 ("add" , ["starred" ], ["starred" , "read" ]),
23812406 ("add" , ["read" , "starred" ], ["read" , "starred" ]),
2407+ ("add" , ["mentioned" ], ["mentioned" , "read" ]),
2408+ ("add" , ["read" , "mentioned" ], ["read" , "mentioned" ]),
2409+ ("add" , ["mentioned" , "starred" ], ["mentioned" , "starred" , "read" ]),
2410+ ("add" , ["wildcard_mentioned" ], ["wildcard_mentioned" , "read" ]),
23822411 ("remove" , [], []),
23832412 ("remove" , ["read" ], ["read" ]), # msg cannot be marked 'unread'
23842413 ("remove" , ["starred" ], ["starred" ]),
2414+ ("remove" , ["mentioned" ], ["mentioned" ]),
23852415 ("remove" , ["starred" , "read" ], ["starred" , "read" ]),
23862416 ("remove" , ["read" , "starred" ], ["read" , "starred" ]),
2417+ ("remove" , ["read" , "mentioned" ], ["read" , "mentioned" ]),
2418+ ("remove" , ["wildcard_mentioned" ], ["wildcard_mentioned" ]),
2419+ ("remove" , ["read" , "wildcard_mentioned" ], ["read" , "wildcard_mentioned" ]),
23872420 ],
23882421 )
23892422 def test_update_read_status (
0 commit comments