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