mirror of
https://github.com/zulip/zulip.git
synced 2025-11-02 13:03:29 +00:00
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>
This commit is contained in:
committed by
Tim Abbott
parent
aee94f141d
commit
48c67700ed
@@ -53,6 +53,9 @@ set_global("navigator", _navigator);
|
||||
set_global("notifications", _notifications);
|
||||
set_global("reminder", reminder);
|
||||
set_global("sent_messages", sent_messages);
|
||||
rewiremock("../../static/js/rendered_markdown").with({
|
||||
update_elements: () => {},
|
||||
});
|
||||
|
||||
const local_message = set_global("local_message", {});
|
||||
const transmit = set_global("transmit", {});
|
||||
@@ -73,6 +76,8 @@ document.location.host = "foo.com";
|
||||
const fake_now = 555;
|
||||
MockDate.set(new Date(fake_now * 1000));
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const compose_ui = zrequire("compose_ui");
|
||||
const peer_data = zrequire("peer_data");
|
||||
const util = zrequire("util");
|
||||
@@ -85,11 +90,7 @@ zrequire("input_pill");
|
||||
zrequire("user_pill");
|
||||
const compose_pm_pill = zrequire("compose_pm_pill");
|
||||
const echo = zrequire("echo");
|
||||
const compose = rewiremock.proxy(() => zrequire("compose"), {
|
||||
"../../static/js/rendered_markdown": {
|
||||
update_elements: () => {},
|
||||
},
|
||||
});
|
||||
const compose = zrequire("compose");
|
||||
const upload = zrequire("upload");
|
||||
const server_events_dispatch = zrequire("server_events_dispatch");
|
||||
const settings_config = zrequire("settings_config");
|
||||
@@ -1921,3 +1922,5 @@ test_ui("test_video_chat_button_toggle", () => {
|
||||
});
|
||||
|
||||
MockDate.reset();
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -13,6 +13,13 @@ const {set_global, zrequire} = require("../zjsunit/namespace");
|
||||
const {run_test} = require("../zjsunit/test");
|
||||
|
||||
set_global("page_params", {});
|
||||
rewiremock("katex").with({
|
||||
renderToString: () => {
|
||||
throw new Error("some-exception");
|
||||
},
|
||||
});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const markdown_config = zrequire("markdown_config");
|
||||
zrequire("hash_util");
|
||||
@@ -20,13 +27,7 @@ zrequire("message_store");
|
||||
zrequire("stream_data");
|
||||
zrequire("user_groups");
|
||||
|
||||
const markdown = rewiremock.proxy(() => zrequire("markdown"), {
|
||||
katex: {
|
||||
renderToString: () => {
|
||||
throw new Error("some-exception");
|
||||
},
|
||||
},
|
||||
});
|
||||
const markdown = zrequire("markdown");
|
||||
|
||||
markdown.initialize([], markdown_config.get_helpers());
|
||||
|
||||
@@ -35,3 +36,5 @@ run_test("katex_throws_unexpected_exceptions", () => {
|
||||
const message = {raw_content: "$$a$$"};
|
||||
markdown.apply_markdown(message);
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -25,6 +25,9 @@ const _navigator = {
|
||||
userAgent: "Mozilla/5.0 AppleWebKit/537.36 Chrome/64.0.3282.167 Safari/537.36",
|
||||
};
|
||||
set_global("navigator", _navigator);
|
||||
rewiremock("../../static/js/favicon").with({});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const muting = zrequire("muting");
|
||||
const stream_data = zrequire("stream_data");
|
||||
@@ -32,9 +35,7 @@ const ui = zrequire("ui");
|
||||
const spoilers = zrequire("spoilers");
|
||||
spoilers.hide_spoilers_in_notification = () => {};
|
||||
|
||||
const notifications = rewiremock.proxy(() => zrequire("notifications"), {
|
||||
"../../static/js/favicon": {},
|
||||
});
|
||||
const notifications = zrequire("notifications");
|
||||
|
||||
// Not muted streams
|
||||
const general = {
|
||||
@@ -359,3 +360,5 @@ run_test("basic_notifications", (override) => {
|
||||
assert.equal(n.size, 0);
|
||||
assert.equal(last_closed_message_id, message_2.id);
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -38,6 +38,9 @@ set_global("stream_popover", {
|
||||
const stream_data = set_global("stream_data", {});
|
||||
|
||||
const ClipboardJS = noop;
|
||||
rewiremock("clipboard").with(ClipboardJS);
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
zrequire("hash_util");
|
||||
zrequire("narrow");
|
||||
@@ -47,14 +50,9 @@ zrequire("presence");
|
||||
zrequire("buddy_data");
|
||||
const user_status = zrequire("user_status");
|
||||
const message_edit = zrequire("message_edit");
|
||||
function import_popovers() {
|
||||
return rewiremock.proxy(() => zrequire("popovers"), {
|
||||
clipboard: ClipboardJS,
|
||||
});
|
||||
}
|
||||
|
||||
// Bypass some scary code that runs when we import the module.
|
||||
const popovers = with_field($.fn, "popover", noop, import_popovers);
|
||||
const popovers = with_field($.fn, "popover", noop, () => zrequire("popovers"));
|
||||
|
||||
const alice = {
|
||||
email: "alice@example.com",
|
||||
@@ -267,3 +265,5 @@ test_ui("actions_popover", (override) => {
|
||||
|
||||
handler.call(target, e);
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -31,15 +31,16 @@ const bot_data_params = {
|
||||
|
||||
const avatar = set_global("avatar", {});
|
||||
|
||||
const bot_data = zrequire("bot_data");
|
||||
|
||||
function ClipboardJS(sel) {
|
||||
assert.equal(sel, "#copy_zuliprc");
|
||||
}
|
||||
|
||||
const settings_bots = rewiremock.proxy(() => zrequire("settings_bots"), {
|
||||
clipboard: ClipboardJS,
|
||||
});
|
||||
rewiremock("clipboard").with(ClipboardJS);
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const bot_data = zrequire("bot_data");
|
||||
const settings_bots = zrequire("settings_bots");
|
||||
|
||||
bot_data.initialize(bot_data_params);
|
||||
|
||||
@@ -198,3 +199,5 @@ run_test("can_create_new_bots", () => {
|
||||
page_params.realm_bot_creation_policy = 3;
|
||||
assert(!settings_bots.can_create_new_bots());
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -78,14 +78,16 @@ set_global("realm_logo", _realm_logo);
|
||||
set_global("ui_report", _ui_report);
|
||||
set_global("ListWidget", _ListWidget);
|
||||
|
||||
// setup is only imported to set the
|
||||
// setup.password_change_in_progress flag.
|
||||
rewiremock("../../static/js/setup").with({});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const settings_config = zrequire("settings_config");
|
||||
const settings_bots = zrequire("settings_bots");
|
||||
const stream_data = zrequire("stream_data");
|
||||
const settings_account = rewiremock.proxy(() => zrequire("settings_account"), {
|
||||
// Setup is only imported to set the
|
||||
// setup.password_change_in_progress flag.
|
||||
"../../static/js/setup": {},
|
||||
});
|
||||
const settings_account = zrequire("settings_account");
|
||||
const settings_org = zrequire("settings_org");
|
||||
const dropdown_list_widget = zrequire("dropdown_list_widget");
|
||||
|
||||
@@ -1054,3 +1056,5 @@ run_test("misc", () => {
|
||||
assert.equal(elem.text(), "translated: Disabled");
|
||||
assert(elem.hasClass("text-warning"));
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -38,9 +38,11 @@ page_params.custom_profile_field_types = {
|
||||
},
|
||||
};
|
||||
|
||||
const settings_profile_fields = rewiremock.proxy(() => zrequire("settings_profile_fields"), {
|
||||
sortablejs: {default: {create: () => {}}},
|
||||
});
|
||||
rewiremock("sortablejs").with({default: {create: () => {}}});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const settings_profile_fields = zrequire("settings_profile_fields");
|
||||
|
||||
function test_populate(opts) {
|
||||
const fields_data = opts.fields_data;
|
||||
@@ -186,3 +188,5 @@ run_test("populate_profile_fields", () => {
|
||||
is_admin: true,
|
||||
});
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -94,6 +94,13 @@ server_events.home_view_loaded = () => true;
|
||||
|
||||
resize.watch_manual_resize = () => {};
|
||||
|
||||
rewiremock("../../static/js/favicon").with({});
|
||||
rewiremock("../../static/js/emojisets").with({
|
||||
initialize: () => {},
|
||||
});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
const util = zrequire("util");
|
||||
|
||||
zrequire("hash_util");
|
||||
@@ -119,9 +126,7 @@ zrequire("composebox_typeahead");
|
||||
zrequire("narrow");
|
||||
zrequire("search_suggestion");
|
||||
zrequire("search");
|
||||
rewiremock.proxy(() => zrequire("notifications"), {
|
||||
"../../static/js/favicon": {},
|
||||
});
|
||||
zrequire("notifications");
|
||||
zrequire("pm_list");
|
||||
zrequire("keydown_util");
|
||||
zrequire("stream_list");
|
||||
@@ -172,9 +177,7 @@ run_test("initialize_everything", () => {
|
||||
|
||||
$("<audio>")[0] = "stub";
|
||||
|
||||
rewiremock.proxy(() => zrequire("ui_init"), {
|
||||
"../../static/js/emojisets": {
|
||||
initialize: () => {},
|
||||
},
|
||||
});
|
||||
zrequire("ui_init");
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
@@ -4,7 +4,7 @@ const {strict: assert} = require("assert");
|
||||
|
||||
const rewiremock = require("rewiremock/node");
|
||||
|
||||
const {set_global, zrequire} = require("../zjsunit/namespace");
|
||||
const {reset_module, set_global, zrequire} = require("../zjsunit/namespace");
|
||||
const {run_test} = require("../zjsunit/test");
|
||||
const $ = require("../zjsunit/zjquery");
|
||||
|
||||
@@ -314,6 +314,8 @@ run_test("upload_files", () => {
|
||||
assert($("#compose-textarea").val(), "user modified text");
|
||||
});
|
||||
|
||||
rewiremock.enable();
|
||||
|
||||
run_test("uppy_config", () => {
|
||||
let uppy_stub_called = false;
|
||||
let uppy_set_meta_called = false;
|
||||
@@ -356,7 +358,8 @@ run_test("uppy_config", () => {
|
||||
};
|
||||
}
|
||||
uppy_stub.Plugin = plugin_stub;
|
||||
upload = rewiremock.proxy(() => require("../../static/js/upload"), {"@uppy/core": uppy_stub});
|
||||
rewiremock("@uppy/core").with(uppy_stub);
|
||||
upload = reset_module("upload");
|
||||
upload.setup_upload({mode: "compose"});
|
||||
|
||||
assert.equal(uppy_stub_called, true);
|
||||
@@ -493,7 +496,8 @@ run_test("uppy_events", () => {
|
||||
};
|
||||
}
|
||||
uppy_stub.Plugin = plugin_stub;
|
||||
upload = rewiremock.proxy(() => require("../../static/js/upload"), {"@uppy/core": uppy_stub});
|
||||
rewiremock("@uppy/core").with(uppy_stub);
|
||||
upload = reset_module("upload");
|
||||
upload.setup_upload({mode: "compose"});
|
||||
assert.equal(Object.keys(callbacks).length, 5);
|
||||
|
||||
@@ -679,3 +683,5 @@ run_test("uppy_events", () => {
|
||||
assert(compose_ui_replace_syntax_called);
|
||||
assert.equal($("#compose-textarea").val(), "user modified text");
|
||||
});
|
||||
|
||||
rewiremock.disable();
|
||||
|
||||
Reference in New Issue
Block a user