Skip to content

Commit c7f6db9

Browse files
committed
model/test_model: Add function to handle realm_user event update.
This commit contains Model._handle_realm_user_event() which updates the meta data of the respective user in Model.initia_data["realm_users"].
1 parent 3fa214e commit c7f6db9

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

tests/model/test_model.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,7 @@ def test_register_initial_desired_events(self, mocker, initial_data):
237237
"update_display_settings",
238238
"user_settings",
239239
"realm_emoji",
240+
"realm_user",
240241
]
241242
fetch_event_types = [
242243
"realm",

zulipterminal/model.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ def __init__(self, controller: Any) -> None:
150150
("update_display_settings", self._handle_update_display_settings_event),
151151
("user_settings", self._handle_user_settings_event),
152152
("realm_emoji", self._handle_update_emoji_event),
153+
("realm_user", self._handle_realm_user_event),
153154
]
154155
)
155156

@@ -1747,6 +1748,18 @@ def _handle_update_display_settings_event(self, event: Event) -> None:
17471748
view.message_view.log[msg_pos] = msg_w_list[0]
17481749
self.controller.update_screen()
17491750

1751+
def _handle_realm_user_event(self, event: Event) -> None:
1752+
"""
1753+
Handle change to user(s) metadata (Eg: full_name, timezone, etc.)
1754+
"""
1755+
assert event["type"] == "realm_user"
1756+
if event["op"] == "update":
1757+
updated_details = event["person"]
1758+
for realm_user in self.initial_data["realm_users"]:
1759+
if realm_user["user_id"] == updated_details["user_id"]:
1760+
realm_user.update(updated_details)
1761+
break
1762+
17501763
def _register_desired_events(self, *, fetch_data: bool = False) -> str:
17511764
fetch_types = None if not fetch_data else self.initial_data_to_fetch
17521765
event_types = list(self.event_actions)

0 commit comments

Comments
 (0)