9
9
from zulipterminal .api_types import Message
10
10
from zulipterminal .config .keys import is_command_key , keys_for_command
11
11
from zulipterminal .config .ui_mappings import EDIT_MODE_CAPTIONS
12
- from zulipterminal .helper import CustomProfileData , TidiedUserInfo
12
+ from zulipterminal .helper import (
13
+ CustomProfileData ,
14
+ MessageInfoPopupContent ,
15
+ TidiedUserInfo ,
16
+ )
13
17
from zulipterminal .ui_tools .messages import MessageBox
14
18
from zulipterminal .ui_tools .views import (
15
19
AboutView ,
@@ -922,10 +926,22 @@ def test_keypress_exit_popup(
922
926
assert self .controller .exit_popup .called
923
927
924
928
929
+ @pytest .fixture
930
+ def message_info_content () -> MessageInfoPopupContent :
931
+ return MessageInfoPopupContent (
932
+ topic_links = OrderedDict (),
933
+ message_links = OrderedDict (),
934
+ time_mentions = list (),
935
+ )
936
+
937
+
925
938
class TestMsgInfoView :
926
939
@pytest .fixture (autouse = True )
927
940
def mock_external_classes (
928
- self , mocker : MockerFixture , message_fixture : Message
941
+ self ,
942
+ mocker : MockerFixture ,
943
+ message_fixture : Message ,
944
+ message_info_content : MessageInfoPopupContent ,
929
945
) -> None :
930
946
self .controller = mocker .Mock ()
931
947
mocker .patch .object (
@@ -943,13 +959,12 @@ def mock_external_classes(
943
959
"Tue Mar 13 10:55:37" ,
944
960
]
945
961
self .message = message_fixture
962
+ self .message_info_content = message_info_content
946
963
self .msg_info_view = MsgInfoView (
947
964
self .controller ,
948
965
self .message ,
949
966
"Message Information" ,
950
- OrderedDict (),
951
- OrderedDict (),
952
- list (),
967
+ self .message_info_content ,
953
968
)
954
969
955
970
def test_init (self ) -> None :
@@ -961,16 +976,22 @@ def test_init(self) -> None:
961
976
def test_pop_up_info_order (self ) -> None :
962
977
topic_links = OrderedDict ([("https://bar.com" , ("topic" , 1 , True ))])
963
978
message_links = OrderedDict ([("image.jpg" , ("image" , 1 , True ))])
979
+ message_info_content = MessageInfoPopupContent (
980
+ topic_links = topic_links ,
981
+ message_links = message_links ,
982
+ time_mentions = list (),
983
+ )
964
984
msg_info_view = MsgInfoView (
965
985
self .controller ,
966
986
self .message ,
967
987
title = "Message Information" ,
968
- topic_links = topic_links ,
969
- message_links = message_links ,
970
- time_mentions = list (),
988
+ message_info_content = message_info_content ,
971
989
)
972
990
msg_links = msg_info_view .button_widgets
973
- assert msg_links == [message_links , topic_links ]
991
+ assert msg_links == [
992
+ message_info_content ["message_links" ],
993
+ message_info_content ["topic_links" ],
994
+ ]
974
995
975
996
def test_keypress_any_key (
976
997
self , widget_size : Callable [[Widget ], urwid_Size ]
@@ -1139,9 +1160,7 @@ def test_height_reactions(
1139
1160
self .controller ,
1140
1161
varied_message ,
1141
1162
"Message Information" ,
1142
- OrderedDict (),
1143
- OrderedDict (),
1144
- list (),
1163
+ self .message_info_content ,
1145
1164
)
1146
1165
# 12 = 7 labels + 2 blank lines + 1 'Reactions' (category)
1147
1166
# + 4 reactions (excluding 'Message Links').
0 commit comments