Anders Kaseorg
ac4d3bf204
js: Convert static/js/alert_words_ui.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
636587665b
js: Convert static/js/starred_messages.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5ae2f172d0
js: Convert static/js/message_flags.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
e30df92944
js: Convert static/js/hashchange.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
c94ffb5319
js: Convert static/js/hash_util.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
9d318f054f
js: Convert static/js/notifications.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
9a3dcb7305
js: Convert static/js/hotkey.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
9d7917749c
js: Convert static/js/list_util.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
0200f48a12
js: Convert static/js/navigate.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
b9137e3de8
js: Convert static/js/search.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
9d9c716dd2
js: Convert static/js/search_suggestion.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
940861fd7e
js: Convert static/js/typeahead_helper.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
45b8e0244e
js: Convert static/js/overlays.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
b3f74af090
js: Convert static/js/popovers.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
c71af35461
js: Convert static/js/stream_popover.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
b408565111
js: Convert static/js/gear_menu.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
fb93be0d94
js: Convert static/js/scroll_bar.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5b647e3d72
js: Convert static/js/settings_toggle.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
dd84974a15
js: Convert static/js/settings_panel_menu.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
7416022f20
js: Convert static/js/click_handlers.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
f59133db42
js: Convert static/js/ui_util.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
8a07ec5365
js: Convert static/js/night_mode.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
3a90ec30d5
js: Convert static/js/info_overlay.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5b2b2924be
js: Convert static/js/message_scroll.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
26710a4370
js: Convert static/js/ui_report.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
76bfa78beb
js: Convert static/js/lightbox.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
68732d4581
js: Convert static/js/floating_recipient_bar.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
e58666e512
js: Convert static/js/list_widget.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
9f881ebe34
js: Convert static/js/resize.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5ba7153a3b
js: Convert static/js/condense.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
dd18b32e04
js: Convert static/js/message_edit.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
031fab7661
js: Convert static/js/stream_edit.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
72ffb33589
js: Convert static/js/stream_events.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
f47090136d
js: Convert static/js/stream_muting.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
ad3390e395
js: Convert static/js/stream_topic_history.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
245d6c3a3e
js: Convert static/js/stream_data.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
d81ba3698f
js: Convert static/js/stream_color.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
374dfc2fda
js: Convert static/js/color_data.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
6f660793e7
js: Convert static/js/upload.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5d3baec4ef
js: Convert static/js/compose.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
35afd078f3
js: Convert static/js/transmit.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
1547494e25
js: Convert static/js/compose_state.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
f499c4a858
js: Convert static/js/sent_messages.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
32288d245c
js: Convert static/js/local_message.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
10a4d2bcbd
js: Convert static/js/markdown.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
ea01e6da5e
js: Convert static/js/compose_fade.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
527b6a36b3
js: Convert static/js/reload.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
e05293a257
js: Convert static/js/reload_state.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
b830f53eb5
js: Convert static/js/narrow_state.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
a1e9be884d
js: Convert static/js/message_live_update.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
817358ce00
js: Convert static/js/message_list_view.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
68f7bfff56
js: Convert static/js/submessage.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
472f3bc478
js: Convert static/js/poll_widget.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
cfacf68fb8
js: Convert static/js/filter.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
16668904c1
js: Convert static/js/top_left_corner.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
1b151d0472
js: Convert static/js/recent_senders.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
850c3c65e7
js: Convert static/js/pm_list.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
666938f46c
js: Convert static/js/pm_list_dom.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
20cfb9ef09
js: Convert static/js/topic_list.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
5a68bda15b
js: Convert static/js/user_groups.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
592cd780f5
js: Convert static/js/rows.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
fe4d1e839c
js: Convert static/js/message_viewport.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
6e045e4470
js: Convert static/js/muting_ui.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
94a5da325c
js: Convert static/js/muting.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
ece27a19bc
js: Convert static/js/unread_ui.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
09920af211
js: Convert static/js/channel.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
1dafb143e3
js: Convert static/js/compose_pm_pill.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
000865ceb1
js: Convert static/js/user_pill.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
977e7dfe07
js: Convert static/js/drafts.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
98c4ffa700
js: Convert static/js/scroll_util.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
6477b7631c
js: Convert static/js/rtl.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
f85924dd0a
js: Convert static/js/keydown_util.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
d5740d43f3
js: Convert static/js/vdom.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
3faae49dc0
js: Convert static/js/loading.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
a3e6ebb04c
js: Convert static/js/common.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
48c67700ed
node_tests: Convert rewiremock.proxy uses to low level API.
...
This seems easier to understand and much easier to produce
automatically.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
7c860caffc
node_tests: Remove unnecessary zrequire calls for ES6 modules.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Anders Kaseorg
cc3d33b386
node_tests: Unroll ignore_modules loop in ui_init test.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-28 14:23:00 -08:00
Steve Howell
07b213bd2e
node tests: Remove unused parameters.
...
We were not setting shiftKey or ctrlKey to true.
2021-02-26 14:11:42 -05:00
Steve Howell
4543554daf
node tests: Add overrides for hotkeys.
2021-02-26 14:11:42 -05:00
Steve Howell
bfcb84774c
node tests: Default overlay functions to false.
2021-02-26 14:11:42 -05:00
Steve Howell
87f4fa3323
node tests: Split up hotkey tests.
2021-02-26 14:11:42 -05:00
Steve Howell
70d204ddce
node tests: Promote code to module level in hotkeys test.
2021-02-26 14:11:42 -05:00
Steve Howell
3035d1790b
node tests: Inline return_true and return_false.
...
We just use the concise es6 idiom now.
2021-02-26 14:11:42 -05:00
Anders Kaseorg
54c97c4457
node_tests: Consistently move set_global mocks before zrequire calls.
...
This way, as we convert them to rewiremock, they will become available
before they are imported.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-26 07:55:53 -08:00
Wesley Aptekar-Cassels
673af19a4d
typeahead: Always rank exact string match first.
...
Previously, exact matches could be pushed off the typeahead list in the
case where there were more prefix matches that happened to rank first,
which is confusing to the user: if an emoji, for instance, falls into
this category, it will never show up in typeahead, which is easy to
confuse with the emoji not existing.
This isn't a perfect fix — there are still cases where it's hard to find
emojis because the prefix-space is very crowded, but it does fix a
category of surprising and frustrating behaviour.
This doesn't come completely without downside - it means that the exact
match emoji will jump to the front of the list, which changes what is
currently conceptually a "filtering" operation to a "filtering and
sorting" operation, but it seems on the whole to be a more ideal
experience. This is particularly notable in the non-typeahead emoji
picker, which uses the same codepath, but this change seems somewhat
desirable even there, since it allows the user to type the name of an
emoji and press enter and have that emoji show up, without having to
visually confirm that they aren't inadvertently selecting a
prefix-matching emoji.
A better solution to this in the long term might be ordering emoji
results by shortest-first as a tiebreaker for alphabetical ordering,
since that should provide the same behaviour while keeping the mental
model as "filtering" (since the sort order won't change as the user
types), but this seems like a reasonable first pass, and changing to
shortest-first ordering after making this change won't break any muscle
memory for existing users.
2021-02-25 17:55:54 -08:00
Aman Agrawal
f4f37fca14
hashchange: Extract func which checks current hash is in RT.
2021-02-25 17:31:33 -08:00
Aman Agrawal
3e36fe6a1e
recent_topics: Don't show topics from unsubscribed streams.
2021-02-25 17:31:33 -08:00
Aman Agrawal
e887428dec
stream_events: Re-render RT after a stream is (un)muted.
...
We manually trigger a re-render of RT after a stream is muted
to update the list of topic in RT for the active filter.
This fixes the bug that RT doesn't update correctly
after a stream is muted.
2021-02-25 17:31:33 -08:00
Aman Agrawal
bbe1b742c6
recent_topics: Recalculate space for stream list when activating.
...
If user is in private message narrow, we reduce height of stream
list to allow height for pm list in the left sidebar. We need
to recalculate it when moving out of pm narrow and moving in
rt narrow.
2021-02-25 17:31:33 -08:00
Aman Agrawal
a29b328854
MessageListView: Don't reselect message_id if RT is open.
...
When idle, we try to backfill messages and in the end reselect
the closest message in the list, which can be a unread message
if present.
When recent topics is open, we can backfill messages; but
shouldn't select the message_id otherwise it will mark the
message as read if the message is unread while triggering
`message_selected.zulip`.
2021-02-25 17:31:32 -08:00
Aman Agrawal
b5036cd3b3
narrow: Explicitly hide recent topics when changing narrow.
...
User can go from recent topics to stream / topic narrow via various
means, but all go through narrow.activate, hence we make sure all the
state changes we do in recent_topics.hide are actually applied when we
hide recent topics and go to another narrow.
This fixes the bug that narrowing from left sidebar to a stream
takes user to the top of the narrow.
2021-02-25 17:31:32 -08:00
Aman Agrawal
8d398ddd54
recent_topics: Focus on first table row after first render.
...
We land user on the first row of the table instead of the search
box because here user can access hotkeys like `w`, `q`, `/`, etc,
which will not be directly available if user is focused in
recent topics search box.
For tests:
We set focus to search by default to avoid mocking a lot of
table html for getting the tests passing.
2021-02-25 17:31:32 -08:00
Aman Agrawal
d2c2371c84
recent_topics: Call revive_current_focus as part of redraw process.
...
This makes more sense as it ensures we revive focus after every
redraw.
2021-02-25 17:31:32 -08:00
YashRE42
2cd234f1b7
recent_topics: Add persistence for filters via localstorage.
...
Previously the filter would be reset every time the page was
refreshed. This commit adds persistence via localstorage, the tests
follow the pattern used in tests for drafts.
Fixes : #15676 .
2021-02-25 17:31:32 -08:00
Aman Agrawal
39d123e355
recent_topics: Make it the default view.
...
Go to Recent Topics on "#", no hash and "#recent_topics".
Go to Recent Topics as the last destination for escape key.
Map `a` key to All messages and change its hash to
`#all_messages`.
2021-02-25 17:31:32 -08:00
Aman Agrawal
1eafb1d8b3
recent_topics: Move from overlay to a narrow-like view.
...
Recent Topics is no longer an overlay now, but note that it is
also not a typical messages narrow. It can reside between
an overlay and a Filter in the sense that it is dispalyed as
a typical Filter narrow but has properties of an Overlay.
Compose box is not visible in this view as it will be confusing
to many users and hence compose shortcuts have also been disabled.
Keyboard shortcuts that apply on messages have also been disabled.
The remaining shortcuts that apply to a narrow are still accessible
here.
2021-02-25 17:31:32 -08:00
Steve Howell
092670b278
node tests: Break out view tests for reactions.
...
The old test here was overly complicated, and
while it got a lot of line coverage, it wasn't
verifying things very precisely.
2021-02-25 13:42:47 -05:00
Steve Howell
a577004842
node tests: Test redundant actions in reactions.
2021-02-25 13:42:47 -05:00
Steve Howell
e9c94982e0
node tests: Prevent leaking reactions.view functions.
2021-02-25 13:42:47 -05:00
Steve Howell
20203e1bba
node tests: Verify Alice's emojis in test.
2021-02-25 13:42:47 -05:00
Steve Howell
737f60e2b7
minor: Add constant for alice_user_id.
2021-02-25 13:42:47 -05:00
Steve Howell
f0d6a0d459
node tests: Use better values for emoji urls.
2021-02-25 13:42:47 -05:00
Steve Howell
623accff68
node tests: Use override for message_store.get.
2021-02-25 13:42:47 -05:00
Steve Howell
5437a16602
zjquery: Remove bogus remove().
2021-02-25 13:42:47 -05:00
Steve Howell
bd034f5767
node tests: Exercise compose_pm_pill callbacks.
...
In the next commit we are stubbing out some
code in compose.js that only indirectly tested
these one-liner configs.
2021-02-25 13:42:47 -05:00
Steve Howell
98fc28c8ed
node tests: Add explicit test for clearing input pills.
2021-02-25 13:42:47 -05:00
Steve Howell
e971cff5b8
node tests: Use override in topic_list_data.
2021-02-24 11:56:40 -05:00
Steve Howell
983f1d66fd
node tests: Break up reactions test.
2021-02-24 11:56:40 -05:00
Steve Howell
0ab3649182
reactions: Simplify code to choose popover target.
...
We now only assign target once, rather than
assigning it then overwriting it for the
not-sent-by-me use case.
I tried to extract a "selector" here but the linter
complained.
Splitting up the tests here ensures we don't
needlessly do extra work here. (In the prior
clumsy implementation, the second test that
I split out here would fail due to the lack
of us setting up the jquery stub.)
2021-02-24 11:56:40 -05:00
Steve Howell
da1cd57d5f
node tests: Use override in more places.
2021-02-24 11:56:40 -05:00
Steve Howell
b57873050f
node tests: Consolidate message_store.get stubs.
2021-02-24 11:56:40 -05:00
Steve Howell
fe28303376
node tests: Clean up narrow tests.
...
I do the following:
- hoist some imports
- split big test into three
- use some of actual compose_state implementation
2021-02-24 11:56:40 -05:00
Steve Howell
70fff472c3
node tests: Use zjquery text() method for input_pill test.
2021-02-24 11:56:40 -05:00
Steve Howell
aa21ccf61f
node tests: Avoid silly stub in filter test.
2021-02-24 11:56:40 -05:00
Steve Howell
dd2552e5f5
node tests: Split up echo test.
2021-02-24 11:56:40 -05:00
Anders Kaseorg
6ff28577cc
js: Convert static/js/message_list_data.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 20:36:01 -08:00
Anders Kaseorg
f9c4b5438e
js: Convert static/js/localstorage.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 20:36:01 -08:00
Anders Kaseorg
901a1e16cf
js: Convert static/js/list_cursor.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 20:36:01 -08:00
Anders Kaseorg
8add2ffc4e
js: Convert static/js/fetch_status.js to ES6 module.
...
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 20:36:01 -08:00
Anders Kaseorg
5a22e73cc6
ui: Remove warning for unsupported old Zulip desktop app.
...
This warning was added in #6551 . It’s not for any version of the
current Electron app, which we warn about on the server side with
DESKTOP_WARNING_VERSION, but rather some pre-Electron app so ancient I
don’t even know what it is. Apparently it communicated using the
window.bridge global, so eradicate that too.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 18:14:12 -08:00
Anders Kaseorg
ba0ee6ddfa
dependencies: Upgrade Source Sans Pro font to Source Sans 3.
...
https://blog.adobe.com/en/2020/11/30/whats-new-in-source-sans-3.html
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 14:55:33 -08:00
Anders Kaseorg
174fa0a331
node_tests: Revert wrong conversion of some functions to arrows.
...
‘function’ and ‘=>’ are not equivalent because they bind ‘this’
differently. For these functions, the ‘function’ semantics are
intentional.
This reverts part of commit 1a241cef88
(#17388 ).
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-23 11:35:55 -08:00
Steve Howell
1a241cef88
node tests: Use array syntax more aggressively.
2021-02-23 09:15:36 -05:00
Steve Howell
2262f79cc8
node tests: Use override/with_field in billing.
...
This prevents the possibility of future leaks.
2021-02-23 09:15:36 -05:00
Steve Howell
009a6e0145
node tests: Use override in widgetize.
2021-02-23 09:15:36 -05:00
Steve Howell
dbf514a055
node tests: Remove unnecessary test_ui wrappers.
2021-02-23 07:55:43 -05:00
Steve Howell
ac69450681
zjsunit: Clear $ elements in run_test.
...
We now call $.clear_all_elements at the top
of run_test.
We have to exempt two modules from the new regime:
compose
settings_user_groups
Also, if modules do set_global("$", ...) we don't
try to call the non-existent function.
It's possible we'll want to move to something like
this, but we might want to clean up the two
sloppy_$ modules first:
// AVOID THIS:
// const $ = require("zjquery")
run_test("test widget", ({override, $}) => {
override(foo, "bar", ...);
$.create(...);
// do stuff
});
2021-02-23 07:55:43 -05:00
Steve Howell
81fd1a5e6a
node tests: Introduce test_ui wrappers.
...
These are a prep step for the next commit.
2021-02-23 07:55:43 -05:00
Steve Howell
2fae9dc0a2
node test: Stub out first element of search box.
2021-02-23 07:55:43 -05:00
Steve Howell
0b711516c9
node tests: Fix zjquery leaks in recent_topics.
2021-02-23 07:55:43 -05:00
Anders Kaseorg
7e3735b9ba
node_tests: Don’t read page_params from deprecated global variable.
...
Follow up to commit 89aa3155a9
(#17262 ).
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-22 19:46:42 -08:00
Anders Kaseorg
7011f0911d
node_tests: Fix misspelled pm_conversation global.
...
It’s pm_conversations.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-22 10:17:03 -08:00
Steve Howell
ff3175f8a2
lightbox: Export method for testing purposes.
...
We weren't exercising this method in any
meaningful way during the tests, and when
do add coverage, we probably want to just
test it directly.
We also kill off stub_selector(), which was
never well-documented.
2021-02-22 12:38:07 -05:00
Steve Howell
aed5b65525
node tests: Avoid use of stub_selector.
...
We will eliminate this soon.
2021-02-22 12:38:07 -05:00
Steve Howell
d62ef78e9c
node tests: Avoid stub_selector() in activity tests.
2021-02-22 12:38:07 -05:00
Steve Howell
42c2c9fb2d
zjquery: Avoid array-related hacks.
...
Callers can either explicitly pass in children,
stub out $(...)[0] as needed, or just
circumvent jQuery complications with override.
Note the reactions test was broken before,
since $(...)[0] was always returning the same
stub.
2021-02-22 12:38:07 -05:00
Steve Howell
914533c8bc
zjsunit: Prevent common mistakes with overrides.
...
We only allow you to replace functions with functions,
unless you have used set_global() or are dealing
with $ from zjquery.
2021-02-22 10:04:29 -05:00
Steve Howell
5caee967d3
zjquery: Remove bogus after/before functions.
2021-02-22 10:04:29 -05:00
Steve Howell
132e67cb28
zjquery: Prohibit extensions to $.fn.
...
We make an exception for the popovers code.
Luckily it's pretty rare that we extend $.fn
in our real code.
2021-02-22 10:04:29 -05:00
Steve Howell
b40d8d5790
node tests: Inline setup for settings_bots.
...
I also use override in more places, and I add
$.validator to zjquery.
In passing I clean up some IIFEs that aren't
really needed.
2021-02-22 10:04:29 -05:00
Steve Howell
38e3aa490f
node tests: Use override for $.post.
2021-02-22 10:04:29 -05:00
Steve Howell
623500bae1
node tests: Avoid zjquery for channel tests.
...
We create our own stub for $.ajax.
2021-02-22 10:04:29 -05:00
Steve Howell
0ffbea8650
node tests: Break up channel tests.
2021-02-22 10:04:29 -05:00
Steve Howell
ffe1043bcc
zjsunit: Remove stub_out_jquery.
...
We now either use zjquery or do whatever gross
things we need to do to work past document.trigger(...)
calls or $.now calls explicitly in the tests.
2021-02-21 17:34:55 -05:00
Steve Howell
64c7eb67eb
zjquery: Make zjquery a singleton.
...
We no longer export make_zjquery().
We now instead have a singleton zjquery instance
that we attach to global.$ in index.js.
We call $.clear_all_elements() before each module.
(We will soon get even more aggressive about doing
it in run_test.)
Test functions can still override $ with set_global.
A good example of this is copy_and_paste using the
real jquery module.
We no longer exempt $ as a global variable, so
test modules that use the zjquery $ need to do:
const $ = require("../zjsunit/zjquery");
2021-02-21 17:34:55 -05:00
Steve Howell
2e3406f0b8
node tests: Eliminate "silent" option for zjquery.
...
The "silent" option was kind of evil, as it had
$(...).find(...) passing back "self" instead of a stub.
Now we just use $(...).set_find_results(...) or
override(...) to simulate/bypass drawing code.
(It turns out hash_util didn't even need this option.)
2021-02-21 15:11:31 -05:00
Steve Howell
706e2baf7e
node_test: Avoid make_zjquery.
...
We just use $.clear_all_elements() now.
2021-02-21 15:11:31 -05:00
Steve Howell
9938811759
node tests: Avoid $ override for compose test.
...
We just use zjquery now.
2021-02-21 15:11:31 -05:00
Steve Howell
895179e8f6
node tests: Make setup for ui_init more local.
2021-02-21 15:11:31 -05:00