Skip to content

Commit 15a7c86

Browse files
committed
views: Use self to re-use instance variables in MsgInfoView class.
And the TestMsgInfoView class. Tests updated.
1 parent 743db7d commit 15a7c86

File tree

2 files changed

+32
-62
lines changed

2 files changed

+32
-62
lines changed

tests/ui_tools/test_popups.py

Lines changed: 18 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -975,27 +975,28 @@ def mock_external_classes(
975975
"Tue Mar 13 10:55:22",
976976
"Tue Mar 13 10:55:37",
977977
]
978+
self.message = message_fixture
978979
self.msg_info_view = MsgInfoView(
979980
self.controller,
980-
message_fixture,
981+
self.message,
981982
"Message Information",
982983
OrderedDict(),
983984
OrderedDict(),
984985
list(),
985986
)
986987

987-
def test_init(self, message_fixture: Message) -> None:
988-
assert self.msg_info_view.msg == message_fixture
988+
def test_init(self) -> None:
989+
assert self.msg_info_view.msg == self.message
989990
assert self.msg_info_view.topic_links == OrderedDict()
990991
assert self.msg_info_view.message_links == OrderedDict()
991992
assert self.msg_info_view.time_mentions == list()
992993

993-
def test_pop_up_info_order(self, message_fixture: Message) -> None:
994+
def test_pop_up_info_order(self) -> None:
994995
topic_links = OrderedDict([("https://bar.com", ("topic", 1, True))])
995996
message_links = OrderedDict([("image.jpg", ("image", 1, True))])
996997
msg_info_view = MsgInfoView(
997998
self.controller,
998-
message_fixture,
999+
self.message,
9991000
title="Message Information",
10001001
topic_links=topic_links,
10011002
message_links=message_links,
@@ -1029,7 +1030,6 @@ def test_keypress_any_key(
10291030
)
10301031
def test_keypress_edit_history(
10311032
self,
1032-
message_fixture: Message,
10331033
key: str,
10341034
widget_size: Callable[[Widget], urwid_Size],
10351035
realm_allow_edit_history: bool,
@@ -1041,21 +1041,13 @@ def test_keypress_edit_history(
10411041
self.controller.model.initial_data = {
10421042
"realm_allow_edit_history": realm_allow_edit_history,
10431043
}
1044-
msg_info_view = MsgInfoView(
1045-
self.controller,
1046-
message_fixture,
1047-
title="Message Information",
1048-
topic_links=OrderedDict(),
1049-
message_links=OrderedDict(),
1050-
time_mentions=list(),
1051-
)
1052-
size = widget_size(msg_info_view)
1044+
size = widget_size(self.msg_info_view)
10531045

1054-
msg_info_view.keypress(size, key)
1046+
self.msg_info_view.keypress(size, key)
10551047

1056-
if msg_info_view.show_edit_history_label:
1048+
if self.msg_info_view.show_edit_history_label:
10571049
self.controller.show_edit_history.assert_called_once_with(
1058-
message=message_fixture,
1050+
message=self.message,
10591051
topic_links=OrderedDict(),
10601052
message_links=OrderedDict(),
10611053
time_mentions=list(),
@@ -1065,51 +1057,29 @@ def test_keypress_edit_history(
10651057

10661058
@pytest.mark.parametrize("key", keys_for_command("FULL_RENDERED_MESSAGE"))
10671059
def test_keypress_full_rendered_message(
1068-
self,
1069-
message_fixture: Message,
1070-
key: str,
1071-
widget_size: Callable[[Widget], urwid_Size],
1060+
self, key: str, widget_size: Callable[[Widget], urwid_Size]
10721061
) -> None:
1073-
msg_info_view = MsgInfoView(
1074-
self.controller,
1075-
message_fixture,
1076-
title="Message Information",
1077-
topic_links=OrderedDict(),
1078-
message_links=OrderedDict(),
1079-
time_mentions=list(),
1080-
)
1081-
size = widget_size(msg_info_view)
1062+
size = widget_size(self.msg_info_view)
10821063

1083-
msg_info_view.keypress(size, key)
1064+
self.msg_info_view.keypress(size, key)
10841065

10851066
self.controller.show_full_rendered_message.assert_called_once_with(
1086-
message=message_fixture,
1067+
message=self.message,
10871068
topic_links=OrderedDict(),
10881069
message_links=OrderedDict(),
10891070
time_mentions=list(),
10901071
)
10911072

10921073
@pytest.mark.parametrize("key", keys_for_command("FULL_RAW_MESSAGE"))
10931074
def test_keypress_full_raw_message(
1094-
self,
1095-
message_fixture: Message,
1096-
key: str,
1097-
widget_size: Callable[[Widget], urwid_Size],
1075+
self, key: str, widget_size: Callable[[Widget], urwid_Size]
10981076
) -> None:
1099-
msg_info_view = MsgInfoView(
1100-
self.controller,
1101-
message_fixture,
1102-
title="Message Information",
1103-
topic_links=OrderedDict(),
1104-
message_links=OrderedDict(),
1105-
time_mentions=list(),
1106-
)
1107-
size = widget_size(msg_info_view)
1077+
size = widget_size(self.msg_info_view)
11081078

1109-
msg_info_view.keypress(size, key)
1079+
self.msg_info_view.keypress(size, key)
11101080

11111081
self.controller.show_full_raw_message.assert_called_once_with(
1112-
message=message_fixture,
1082+
message=self.message,
11131083
topic_links=OrderedDict(),
11141084
message_links=OrderedDict(),
11151085
time_mentions=list(),

zulipterminal/ui_tools/views.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1585,7 +1585,7 @@ def __init__(
15851585
self.time_mentions = time_mentions
15861586
self.server_url = controller.model.server_url
15871587
date_and_time = controller.model.formatted_local_time(
1588-
msg["timestamp"], show_seconds=True, show_year=True
1588+
self.msg["timestamp"], show_seconds=True, show_year=True
15891589
)
15901590
view_in_browser_keys = "[{}]".format(
15911591
", ".join(map(str, display_keys_for_command("VIEW_IN_BROWSER")))
@@ -1602,8 +1602,8 @@ def __init__(
16021602
"",
16031603
[
16041604
("Date & Time", date_and_time),
1605-
("Sender", msg["sender_full_name"]),
1606-
("Sender's Email ID", msg["sender_email"]),
1605+
("Sender", self.msg["sender_full_name"]),
1606+
("Sender's Email ID", self.msg["sender_email"]),
16071607
],
16081608
)
16091609
]
@@ -1632,13 +1632,13 @@ def __init__(
16321632
)
16331633
msg_info[1][1].append(("Edit History", keys))
16341634
# Render the category using the existing table methods if links exist.
1635-
if message_links:
1635+
if self.message_links:
16361636
msg_info.append(("Message Links", []))
1637-
if topic_links:
1637+
if self.topic_links:
16381638
msg_info.append(("Topic Links", []))
1639-
if time_mentions:
1640-
msg_info.append(("Time mentions", time_mentions))
1641-
if msg["reactions"]:
1639+
if self.time_mentions:
1640+
msg_info.append(("Time mentions", self.time_mentions))
1641+
if self.msg["reactions"]:
16421642
reactions = sorted(
16431643
(reaction["emoji_name"], reaction["user"]["full_name"])
16441644
for reaction in msg["reactions"]
@@ -1658,9 +1658,9 @@ def __init__(
16581658
# computing their slice indexes
16591659
self.button_widgets: List[Any] = []
16601660

1661-
if message_links:
1661+
if self.message_links:
16621662
message_link_widgets, message_link_width = self.create_link_buttons(
1663-
controller, message_links
1663+
controller, self.message_links
16641664
)
16651665

16661666
# slice_index = Number of labels before message links + 1 newline
@@ -1669,24 +1669,24 @@ def __init__(
16691669
slice_index = len(msg_info[0][1]) + len(msg_info[1][1]) + 2 + 2
16701670

16711671
slice_index += sum([len(w) + 2 for w in self.button_widgets])
1672-
self.button_widgets.append(message_links)
1672+
self.button_widgets.append(self.message_links)
16731673

16741674
widgets = (
16751675
widgets[:slice_index] + message_link_widgets + widgets[slice_index:]
16761676
)
16771677
popup_width = max(popup_width, message_link_width)
16781678

1679-
if topic_links:
1679+
if self.topic_links:
16801680
topic_link_widgets, topic_link_width = self.create_link_buttons(
1681-
controller, topic_links
1681+
controller, self.topic_links
16821682
)
16831683

16841684
# slice_index = Number of labels before topic links + 1 newline
16851685
# + 1 'Topic Links' category label.
16861686
# + 2 for Viewing Actions category label and its newline
16871687
slice_index = len(msg_info[0][1]) + len(msg_info[1][1]) + 2 + 2
16881688
slice_index += sum([len(w) + 2 for w in self.button_widgets])
1689-
self.button_widgets.append(topic_links)
1689+
self.button_widgets.append(self.topic_links)
16901690

16911691
widgets = widgets[:slice_index] + topic_link_widgets + widgets[slice_index:]
16921692
popup_width = max(popup_width, topic_link_width)

0 commit comments

Comments
 (0)