diff --git a/zulipterminal/ui_tools/messages.py b/zulipterminal/ui_tools/messages.py
index 1a9bb9d..3ddfa10 100644
--- a/zulipterminal/ui_tools/messages.py
+++ b/zulipterminal/ui_tools/messages.py
@@ -1045,12 +1045,12 @@ class MessageBox(urwid.Pile):
             # the time limit. A limit of 0 signifies no limit
             # on message body editing.
             msg_body_edit_enabled = True
-            if self.model.initial_data["realm_message_content_edit_limit_seconds"] > 0:
+            edit_time_limit = self.model.initial_data[
+                "realm_message_content_edit_limit_seconds"
+            ]
+            if edit_time_limit is not None and edit_time_limit > 0:
                 if self.message["sender_id"] == self.model.user_id:
                     time_since_msg_sent = time() - self.message["timestamp"]
-                    edit_time_limit = self.model.initial_data[
-                        "realm_message_content_edit_limit_seconds"
-                    ]
                     # Don't allow editing message body if time-limit exceeded.
                     if time_since_msg_sent >= edit_time_limit:
                         if self.message["type"] == "private":

diff --git a/tests/ui_tools/test_messages.py b/tests/ui_tools/test_messages.py
index d4d9e80..8deb4eb 100644
--- a/tests/ui_tools/test_messages.py
+++ b/tests/ui_tools/test_messages.py
@@ -1301,7 +1301,16 @@ class TestMessageBox:
                 {"stream": True, "private": True},
                 {"stream": True, "private": True},
                 {"stream": None, "private": None},
-                id="no_msg_body_edit_limit",
+                id="no_msg_body_edit_limit:ZFL<138",
+            ),
+            case(
+                {"sender_id": 1, "timestamp": 1, "subject": "test"},
+                True,
+                None,
+                {"stream": True, "private": True},
+                {"stream": True, "private": True},
+                {"stream": None, "private": None},
+                id="no_msg_body_edit_limit:ZFL>=138",
             ),
             case(
                 {"sender_id": 1, "timestamp": 1, "subject": "(no topic)"},
@@ -1352,7 +1361,16 @@ class TestMessageBox:
                 {"stream": True, "private": True},
                 {"stream": True, "private": True},
                 {"stream": None, "private": None},
-                id="no_msg_body_edit_limit_with_no_topic",
+                id="no_msg_body_edit_limit_with_no_topic:ZFL<138",
+            ),
+            case(
+                {"sender_id": 1, "timestamp": 45, "subject": "(no topic)"},
+                True,
+                None,
+                {"stream": True, "private": True},
+                {"stream": True, "private": True},
+                {"stream": None, "private": None},
+                id="no_msg_body_edit_limit_with_no_topic:ZFL>=138",
             ),
         ],
     )

[bug] crash when editing message
Server: Zulip cloud server
Client: main branch
Python: 3.11
self.model.initial_data: `{'zulip_version': '9.0-dev-642-g9d469357ea', 'zulip_feature_level': 237, 'zulip_merge_base': '9.0-dev-605-g47a5459637', 'realm_message_content_edit_limit_seconds': None}`
log:
```
Traceback (most recent call last):
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/cli/run.py", line 578, in main
    ).main()
      ^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/core.py", line 691, in main
    self.loop.run()
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 287, in run
    self._run()
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 385, in _run
    self.event_loop.run()
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 790, in run
    self._loop()
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 827, in _loop
    self._watch_files[fd]()
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/raw_display.py", line 416, in <lambda>
    wrapper = lambda: self.parse_input(
                      ^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/raw_display.py", line 515, in parse_input
    callback(processed, processed_codes)
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 412, in _update
    self.process_input(keys)
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/main_loop.py", line 513, in process_input
    k = self._topmost_widget.keypress(self.screen_size, k)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/ui.py", line 324, in keypress
    return super().keypress(size, key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/container.py", line 1135, in keypress
    return self.body.keypress( (maxcol, remaining), key )
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/container.py", line 1626, in keypress
    key = self.focus.keypress(tsize, key)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/container.py", line 2316, in keypress
    key = w.keypress((mc,) + size[1:], key)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/ui_tools/views.py", line 651, in keypress
    return super().keypress(size, key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/container.py", line 1135, in keypress
    return self.body.keypress( (maxcol, remaining), key )
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/ui_tools/views.py", line 249, in keypress
    key = super().keypress(size, key)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/urwid/listbox.py", line 968, in keypress
    key = focus_widget.keypress((maxcol,),key)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/home/.local/share/pipx/venvs/zulip-term/lib/python3.11/site-packages/zulipterminal/ui_tools/messages.py", line 1048, in keypress
    if self.model.initial_data["realm_message_content_edit_limit_seconds"] > 0:
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: '>' not supported between instances of 'NoneType' and 'int'
```
tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-no_msg_body_edit_limit:ZFL>=138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-no_msg_body_edit_limit_with_no_topic:ZFL>=138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-no_msg_body_edit_limit:ZFL>=138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-no_msg_body_edit_limit_with_no_topic:ZFL>=138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-no_msg_body_edit_limit:ZFL>=138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-no_msg_body_edit_limit_with_no_topic:ZFL>=138-e]
tests/ui_tools/test_messages.py::TestMessageBox::test_init[stream-set_fields0] tests/ui_tools/test_messages.py::TestMessageBox::test_init[private-set_fields1] tests/ui_tools/test_messages.py::TestMessageBox::test_init_fails_with_bad_message_type tests/ui_tools/test_messages.py::TestMessageBox::test_private_message_to_self tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[empty] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[p] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[user-mention] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h1] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h2] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h3] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h4] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h5] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[h6] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[group-mention] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[topic-mention] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[inline-code] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[codehilite-code] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[codehilite-code-old] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[codehilite-plain-text-codeblock] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[codehilite-plain-text-codeblock-old] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[strong] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[em] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[blockquote] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[embedded_content] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_two] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_samelinkdifferentname] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_duplicatelink] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_trailingslash] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_trailingslashduplicatelink] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_sametext] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_sameimage] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_differenttext] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_userupload] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_api] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_serverrelative_same] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_textwithoutscheme] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[link_differentscheme] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[li] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[empty_li] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[li_with_li_p_newline] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[two_li] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[two_li_with_li_p_newlines] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[li_nested] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[li_heavily_nested] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[br] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[br2] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[hr] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[hr2] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[img] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[img2] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[table_default] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[table_with_left_and_right_alignments] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[table_with_center_and_right_alignments] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[table_with_single_column] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[table_with_the_bare_minimum] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[time_human_readable_input] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[time_UNIX_timestamp_input] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[katex_HTML_response_math_fenced_markdown] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[katex_HTML_response_double_$_fenced_markdown] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[ul] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[ul_with_ul_li_newlines] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[ol] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[ol_with_ol_li_newlines] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[ol_starting_at_5] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[strikethrough_del] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[inline_image] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[inline_ref] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[emoji] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[preview-twitter] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[zulip_extra_emoji] tests/ui_tools/test_messages.py::TestMessageBox::test_soup2markup[custom_emoji] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view[message0-None] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view[message1-None] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_renders_slash_me[<p>/me tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_renders_slash_me[<p>This tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_stream_header[different_stream_before-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_stream_header[different_topic_before-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_stream_header[PM_before-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_PM_header[larger_pm_group-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_PM_header[stream_before-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow0-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow1-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow2-2- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow3-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow4-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow5-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow6-2- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow7-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow8-2- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow9-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow10-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow11-2- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow12-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow13-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow14-0- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow15-1- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow16-2- tests/ui_tools/test_messages.py::TestMessageBox::test_msg_generates_search_and_header_bar[msg_narrow17-1- tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-this_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-this_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-this_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-last_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-last_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-last_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-no_stars-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-no_stars-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[show_author_as_authors_different-no_stars-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-this_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-this_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-this_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-last_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-last_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-last_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-no_stars-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-no_stars-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[merge_messages_as_only_slightly_earlier_message-no_stars-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-this_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-this_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-this_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-last_starred-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-last_starred-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-last_starred-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-no_stars-now_2018-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-no_stars-now_2019-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_content_header_without_header[dont_merge_messages_as_much_earlier_message-no_stars-now_2050-message0] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[stream_message-common_author] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[stream_message-common_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[stream_message-common_early_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[stream_message-common_unchanged_message] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[stream_message-both_starred] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[pm_message-common_author] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[pm_message-common_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[pm_message-common_early_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[pm_message-common_unchanged_message] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[pm_message-both_starred] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[group_pm_message-common_author] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[group_pm_message-common_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[group_pm_message-common_early_timestamp] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[group_pm_message-common_unchanged_message] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_compact_output[group_pm_message-both_starred] tests/ui_tools/test_messages.py::TestMessageBox::test_main_view_generates_EDITED_label tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[stream_message-author_field_present] tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[stream_message-author_field_not_present] tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[pm_message-author_field_present] tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[pm_message-author_field_not_present] tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[group_pm_message-author_field_present] tests/ui_tools/test_messages.py::TestMessageBox::test_update_message_author_status[group_pm_message-author_field_not_present] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[all_messages_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[stream_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[topic_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[private_conversation_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[starred_messages_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[mentions_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_STREAM_MESSAGE[private_messages_narrow-c] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-msg_sent_by_other_user_with_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-topic_edit_only_after_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-realm_editing_not_allowed-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-realm_editing_allowed_and_within_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-no_msg_body_edit_limit:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-msg_sent_by_me_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-msg_sent_by_other_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-realm_editing_not_allowed_for_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[stream_message-no_msg_body_edit_limit_with_no_topic:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-msg_sent_by_other_user_with_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-topic_edit_only_after_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-realm_editing_not_allowed-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-realm_editing_allowed_and_within_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-no_msg_body_edit_limit:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-msg_sent_by_me_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-msg_sent_by_other_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-realm_editing_not_allowed_for_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[pm_message-no_msg_body_edit_limit_with_no_topic:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-msg_sent_by_other_user_with_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-topic_edit_only_after_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-realm_editing_not_allowed-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-realm_editing_allowed_and_within_time_limit-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-no_msg_body_edit_limit:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-msg_sent_by_me_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-msg_sent_by_other_with_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-realm_editing_not_allowed_for_no_topic-e] tests/ui_tools/test_messages.py::TestMessageBox::test_keypress_EDIT_MESSAGE[group_pm_message-no_msg_body_edit_limit_with_no_topic:ZFL<138-e] tests/ui_tools/test_messages.py::TestMessageBox::test_transform_content[quoted tests/ui_tools/test_messages.py::TestMessageBox::test_transform_content[multi-line tests/ui_tools/test_messages.py::TestMessageBox::test_transform_content[quoting tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[stream_message-to_vary_in_each_message0- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[stream_message-to_vary_in_each_message1- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[stream_message-to_vary_in_each_message2- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[stream_message-to_vary_in_each_message3- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[stream_message-to_vary_in_each_message4- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[pm_message-to_vary_in_each_message0- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[pm_message-to_vary_in_each_message1- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[pm_message-to_vary_in_each_message2- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[pm_message-to_vary_in_each_message3- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[pm_message-to_vary_in_each_message4- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[group_pm_message-to_vary_in_each_message0- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[group_pm_message-to_vary_in_each_message1- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[group_pm_message-to_vary_in_each_message2- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[group_pm_message-to_vary_in_each_message3- tests/ui_tools/test_messages.py::TestMessageBox::test_reactions_view[group_pm_message-to_vary_in_each_message4- tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_view[one_footlink] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_view[more_than_one_footlink] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_view[similar_link_and_text] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_view[different_link_and_text] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_view[http_default_scheme] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_limit[0-NoneType] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_limit[1-Padding] tests/ui_tools/test_messages.py::TestMessageBox::test_footlinks_limit[3-Padding] tests/ui_tools/test_messages.py::TestMessageBox::test_mouse_event_left_click[ignore_mouse_click-left_click-key:enter] tests/ui_tools/test_messages.py::TestMessageBox::test_mouse_event_left_click[handle_mouse_click-left_click-key:enter]