From b40d8d57902e5c9585ca0eb03dd025d8069578fa Mon Sep 17 00:00:00 2001 From: Steve Howell Date: Mon, 22 Feb 2021 12:10:25 +0000 Subject: [PATCH] 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. --- frontend_tests/node_tests/settings_bots.js | 66 ++++++++-------------- frontend_tests/zjsunit/zjquery.js | 6 ++ 2 files changed, 31 insertions(+), 41 deletions(-) diff --git a/frontend_tests/node_tests/settings_bots.js b/frontend_tests/node_tests/settings_bots.js index 64ff4902ef..d445048cdf 100644 --- a/frontend_tests/node_tests/settings_bots.js +++ b/frontend_tests/node_tests/settings_bots.js @@ -118,12 +118,10 @@ function test_create_bot_type_input_box_toggle(f) { assert(!config_inputbox.visible()); } -function set_up() { +run_test("test tab clicks", (override) => { $.clear_all_elements(); - // bunch of stubs - - $.validator = {addMethod: () => {}}; + override($.validator, "addMethod", () => {}); $("#create_bot_form").validate = () => {}; @@ -133,20 +131,12 @@ function set_up() { }; return mock_children; }; - avatar.build_bot_create_widget = () => {}; - avatar.build_bot_edit_widget = () => {}; + + override(avatar, "build_bot_create_widget", () => {}); settings_bots.set_up(); test_create_bot_type_input_box_toggle(() => $("#create_bot_type").trigger("change")); -} - -run_test("set_up", () => { - set_up(); -}); - -run_test("test tab clicks", () => { - set_up(); function click_on_tab(tab_elem) { tab_elem.trigger("click"); @@ -171,38 +161,32 @@ run_test("test tab clicks", () => { inactive: $("#inactive_bots_list"), }; - (function () { - click_on_tab(tabs.add); - assert(tabs.add.hasClass("active")); - assert(!tabs.active.hasClass("active")); - assert(!tabs.inactive.hasClass("active")); + click_on_tab(tabs.add); + assert(tabs.add.hasClass("active")); + assert(!tabs.active.hasClass("active")); + assert(!tabs.inactive.hasClass("active")); - assert(forms.add.visible()); - assert(!forms.active.visible()); - assert(!forms.inactive.visible()); - })(); + assert(forms.add.visible()); + assert(!forms.active.visible()); + assert(!forms.inactive.visible()); - (function () { - click_on_tab(tabs.active); - assert(!tabs.add.hasClass("active")); - assert(tabs.active.hasClass("active")); - assert(!tabs.inactive.hasClass("active")); + click_on_tab(tabs.active); + assert(!tabs.add.hasClass("active")); + assert(tabs.active.hasClass("active")); + assert(!tabs.inactive.hasClass("active")); - assert(!forms.add.visible()); - assert(forms.active.visible()); - assert(!forms.inactive.visible()); - })(); + assert(!forms.add.visible()); + assert(forms.active.visible()); + assert(!forms.inactive.visible()); - (function () { - click_on_tab(tabs.inactive); - assert(!tabs.add.hasClass("active")); - assert(!tabs.active.hasClass("active")); - assert(tabs.inactive.hasClass("active")); + click_on_tab(tabs.inactive); + assert(!tabs.add.hasClass("active")); + assert(!tabs.active.hasClass("active")); + assert(tabs.inactive.hasClass("active")); - assert(!forms.add.visible()); - assert(!forms.active.visible()); - assert(forms.inactive.visible()); - })(); + assert(!forms.add.visible()); + assert(!forms.active.visible()); + assert(forms.inactive.visible()); }); run_test("can_create_new_bots", () => { diff --git a/frontend_tests/zjsunit/zjquery.js b/frontend_tests/zjsunit/zjquery.js index 911a19d316..d376d0df72 100644 --- a/frontend_tests/zjsunit/zjquery.js +++ b/frontend_tests/zjsunit/zjquery.js @@ -549,6 +549,12 @@ function make_zjquery() { elems.clear(); }; + zjquery.validator = { + addMethod() { + throw new Error("You must create your own $.validator.addMethod stub."); + }, + }; + return zjquery; }