zulip/web/tests
N-Shar-ma dfb4fc4261 compose: Revamp and improve test suite for compose formatting buttons.
Earlier, the tests for compose formatting were verbose, hard to read as
well as extend, and overly granular, without even having the ability to
test the final text selection or the cursor position.

Now, new test helpers, `init_textarea_state` and `get_textarea_state`,
have been added, enabling the tests to be more concise and readable,
while also being more powerful. A representative string alone now
describes the textarea state (the text and the selection / cursor),
making each test case as easy as defining the initial state as a string
and comparing the expected state post formatting with another string.

These new tests helped surface a couple bugs which have been fixed in
preceding commits.

(cherry picked from commit 179e9374b4)
2024-01-22 18:19:09 -08:00
..
lib node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
templates
activity.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
alert_words_ui.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
alert_words.test.js
blueslip_stacktrace.test.js
bot_data.test.js models: Extract zerver.models.users. 2024-01-05 10:32:54 -05:00
browser_history.test.js settings: Rename default_view and escape_navigates_to_default_view. 2023-10-26 11:00:12 -07:00
buddy_data.test.js ts: Migrate user_status module to TypeScript. 2023-10-30 11:10:47 -07:00
buddy_list.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
channel.test.js ui_report: Reuse channel.xhr_error_message function in error method. 2023-08-31 13:47:16 -07:00
color_data.test.js
common.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
components.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose_actions.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose_closed_ui.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose_fade.test.js compose_state: Make get_or_set accept a full selector. 2023-11-02 14:06:04 -07:00
compose_pm_pill.test.js users: Add "(guest)" to names for guest users. 2023-10-12 12:06:10 -07:00
compose_state.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose_ui.test.js compose: Revamp and improve test suite for compose formatting buttons. 2024-01-22 18:19:09 -08:00
compose_validate.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose_video.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
compose.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
composebox_typeahead.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
copy_and_paste.test.js compose: Fix bug where extra line breaks were pasted between blocks. 2023-11-17 08:55:55 -08:00
deprecated_feature_notice.test.js
dispatch_subs.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
dispatch.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
drafts.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
echo.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
emoji_picker.test.js emoji: Fallback to Google Modern for unsupported new Twitter emoji. 2023-11-28 23:46:49 -08:00
emoji.test.js ts: Convert emoji.js to TypeScript. 2023-04-05 10:29:01 -07:00
example1.test.js docs: Add missing spaces around code spans. 2023-12-14 00:05:44 -08:00
example2.test.js
example3.test.js narrow_state: Rename stream() to stream_name() which is more accurate. 2023-08-07 17:08:59 -07:00
example4.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
example5.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
example6.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
example7.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
example8.test.js typing_events: Do not show typing notifications for inaccessible users. 2023-12-07 19:34:07 -08:00
fenced_code.test.js
fetch_status.test.js refactor: Extract message_feed_loading module from message_scroll. 2023-05-14 11:24:31 -07:00
filter.test.js top_navbar: Match navbar icons to left sidebar navigation. 2023-11-17 17:28:54 -08:00
fold_dict.test.js eslint: Fix unicorn/prefer-spread. 2023-03-02 12:16:56 -08:00
gear_menu_util.test.js gear_menu: Extract version_display_string into a util library. 2023-10-18 22:02:38 -07:00
hash_util.test.js stream settings: Include section for right panel in the URL. 2023-11-20 15:32:29 -08:00
hashchange.test.js settings: Rename default_view and escape_navigates_to_default_view. 2023-10-26 11:00:12 -07:00
hotkey.test.js hotkey: Fix emoji popover not triggered in a narrow width range. 2023-11-21 20:56:31 -08:00
i18n.test.js settings: Add "Automatically follow topics where I'm mentioned" setting. 2023-12-11 23:26:11 -08:00
input_pill.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
internal_url.test.js
keydown_util.test.js
lazy_set.test.js lazy set: Increase code coverage. 2023-10-31 16:06:07 -07:00
left_sidebar_navigation_area.test.js left_sidebar: Grid 'Back to streams' with unread count. 2023-11-21 09:16:43 -08:00
lightbox.test.js lightbox: Replace image with media. 2023-10-02 22:39:02 -07:00
linkifiers.test.js Revert "linkifiers: Match JS implementation to server implementation." 2023-11-16 14:59:48 -08:00
list_cursor.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
list_widget.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
markdown_parse.test.js Revert "linkifiers: Match JS implementation to server implementation." 2023-11-16 14:59:48 -08:00
markdown.test.js markdown: Do not show mention pills for inaccessible users. 2023-12-07 19:34:07 -08:00
message_edit.test.js messages: Add support to allow bot-owners to delete messages. 2023-10-12 12:13:39 -07:00
message_events.test.js topic_mentions: Rename wildcard_mentioned to stream_wildcard_mentioned. 2023-11-10 11:06:26 -08:00
message_fetch.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
message_flags.test.js js: Rename top_left_corner.js to left_sidebar_navigation_area.js. 2023-07-24 13:02:28 -07:00
message_list_data.test.js refactor: Rename is_search to is_keyword_search for clarity. 2023-11-13 08:09:03 -08:00
message_list_view.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
message_list.test.js narrow_state: Rename stream() to stream_name() which is more accurate. 2023-08-07 17:08:59 -07:00
message_store.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
muted_users.test.js i18n: Localize date and time displays across the app. 2023-02-26 17:43:47 -08:00
narrow_activate.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
narrow_local.test.js message_list: Extract visibly_empty helper method. 2023-05-03 18:40:59 -07:00
narrow_state.test.js narrow_state: Add stream_id() function. 2023-10-10 17:36:55 -07:00
narrow_unread.test.js narrow: Add frontend support for dm: narrow and /dm/... URL. 2023-04-25 09:07:08 -07:00
narrow.test.js compose: Add banner to go to conversation when replying in search view. 2023-11-28 16:55:05 -08:00
navbar_alerts.test.js notifications: Rename to desktop_notifications. 2023-10-06 16:22:40 -07:00
notifications.test.js desktop_notification: Fix bad rendering of math formulas. 2023-11-26 23:30:24 -08:00
password.test.js
peer_data.test.js peer_data: Remove over defensive assert_number function. 2023-07-17 10:37:29 -07:00
people_errors.test.js users: Do not pass unknown users data for webapp. 2023-12-07 19:34:07 -08:00
people.test.js tests: Fix “inaccesible” typo. 2023-12-12 12:13:51 -08:00
pill_typeahead.test.js settings: Remove "User groups" panel from settings overlay. 2023-12-07 06:35:38 -08:00
pm_conversations.test.js node-tests: Update references to "private message" and "PM". 2023-06-26 11:07:28 -07:00
pm_list_data.test.js node-tests: Update references to "private message" and "PM". 2023-06-26 11:07:28 -07:00
pm_list.test.js left_sidebar: Use DM identifiers on DM containers. 2023-10-30 10:14:28 -07:00
poll_widget.test.js
popover_menus_data.test.js compose: Migrate empty_topic_placeholder to compose_state. 2023-10-02 17:45:27 -07:00
presence.test.js presence: Do not raise blueslip error for presence data of unknown user. 2023-11-29 12:01:37 -08:00
reactions.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
realm_playground.test.js requirements: Upgrade Python requirements. 2023-12-01 18:52:00 -08:00
recent_senders.test.js typeahead: Show @-topic typeahead whenever it might be possible to use. 2023-11-28 09:24:18 -08:00
recent_view.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
reload_state.test.js
reload.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
rendered_markdown.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
resolved_topic.test.js
rtl.test.js
scheduled_messages.test.js compose_banner: Display time for messages with < 5 mins scheduled time. 2023-11-10 09:20:15 -08:00
scroll_util.test.js refactor: Move simplebar helper functions from ui to scroll_util. 2023-04-26 12:59:08 -07:00
search_suggestion.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
search.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
server_events.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
settings_bots.test.js ts: Migrate bot_data.js to TypeScript. 2023-08-14 16:06:15 -07:00
settings_config.test.js notification_settings: Add tooltip to checkboxes in the triggers table. 2023-12-04 16:38:19 -08:00
settings_data.test.js users: Do not pass unknown users data for webapp. 2023-12-07 19:34:07 -08:00
settings_emoji.test.js
settings_muted_users.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
settings_org.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
settings_profile_fields.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
settings_realm_domains.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
settings_user_topics.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
spoilers.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
starred_messages.test.js js: Rename top_left_corner.js to left_sidebar_navigation_area.js. 2023-07-24 13:02:28 -07:00
stream_create_subscribers_data.test.js
stream_data.test.js streams: Add API endpoint to get stream email. 2023-11-16 13:25:33 -05:00
stream_edit.test.js
stream_events.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
stream_list_sort.test.js refactor: Rename stream_sort.js to stream_list_sort.js. 2023-04-25 10:05:59 -07:00
stream_list.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
stream_pill.test.js
stream_search.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
stream_settings_ui.test.js hash_util: Extract hash_parser.ts. 2023-10-01 16:55:21 -07:00
stream_topic_history.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
submessage.test.js
support.test.js support: Fix scrubbing realms if string_id is a number. 2023-03-27 10:07:41 -07:00
templates.test.js
time_zone_util.test.js time_zone_util: Avoid relying on timeZoneName: "longOffset". 2023-11-29 09:57:10 -08:00
timerender.test.js timerender: Use an explicit time zone for all rendering. 2023-11-28 16:54:00 -08:00
topic_generator.test.js hotkey: Fix go to unread unmuted or followed topic in muted stream. 2023-12-11 22:32:56 -08:00
topic_list_data.test.js topic_list: Update the order of "Followed" topics in the muted stream. 2023-09-11 17:55:37 -07:00
transmit.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
typeahead_helper.test.js topic_mentions: Add @topic mention typeahead. 2023-11-13 09:07:36 -08:00
typeahead.test.js sort_emojis: Prioritize perfect matches above all. 2023-11-14 12:13:22 -08:00
typing_data.test.js muted_users: Hide muted typists in streams. 2023-10-10 17:36:55 -07:00
typing_events.test.js typing_events: Do not show typing notifications for inaccessible users. 2023-12-07 19:34:07 -08:00
typing_status.test.js typing_notifications: Send ajax requests for stream typing too. 2023-10-10 17:36:55 -07:00
unread.test.js settings: Add option for followed topics to unread count badge setting. 2023-11-17 14:07:20 -08:00
upload.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
user_events.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
user_group_pill.test.js user_group_pill: Add test coverage for append_user_group. 2023-07-17 10:38:24 -07:00
user_groups.test.js user_groups: Fix live-update of data when renaming groups. 2023-12-10 15:20:07 -08:00
user_pill.test.js user_pill: Add support to not allow adding inaccessible users manually. 2024-01-05 10:32:54 -05:00
user_search.test.js node tests: Use noop helper function pattern in test files. 2023-12-14 14:51:33 -08:00
user_status.test.js ts: Migrate user_status module to TypeScript. 2023-10-30 11:10:47 -07:00
user_topics.test.js user_topics: Pop user_topics from page_params. 2023-09-11 10:57:38 -07:00
util.test.js topic_mentions: Fix the incorrect large @-mention notification warning. 2023-11-21 09:20:56 -08:00
vdom.test.js left_sidebar: Use dm-list class. 2023-10-30 10:14:28 -07:00
watchdog.test.js watchdog: Handle exception in callback. 2023-11-19 15:04:58 -08:00
widgetize.test.js widgetize: Move widget registration to new widgets module. 2023-10-06 13:17:51 -07:00
zblueslip.test.js
zjquery.test.js