"use strict"; var gTestTab; var gContentAPI; var gContentWindow; function test() { requestLongerTimeout(2); UITourTest(); } var tests = [ function test_no_params(done) { function listener(event, params) { is(event, "test-event-1", "Correct event name"); is(params, null, "No param object"); gContentAPI.observe(null); done(); } gContentAPI.observe(listener, () => { UITour.notify("test-event-1"); }); }, function test_param_string(done) { function listener(event, params) { is(event, "test-event-2", "Correct event name"); is(params, "a param", "Correct param string"); gContentAPI.observe(null); done(); } gContentAPI.observe(listener, () => { UITour.notify("test-event-2", "a param"); }); }, function test_param_object(done) { function listener(event, params) { is(event, "test-event-3", "Correct event name"); is(JSON.stringify(params), JSON.stringify({key: "something"}), "Correct param object"); gContentAPI.observe(null); done(); } gContentAPI.observe(listener, () => { UITour.notify("test-event-3", {key: "something"}); }); }, function test_background_tab(done) { function listener(event, params) { is(event, "test-event-background-1", "Correct event name"); is(params, null, "No param object"); gContentAPI.observe(null); gBrowser.removeCurrentTab(); done(); } gContentAPI.observe(listener, () => { gBrowser.selectedTab = gBrowser.addTab("about:blank"); isnot(gBrowser.selectedTab, gTestTab, "Make sure the selected tab changed"); UITour.notify("test-event-background-1"); }); }, // Make sure the tab isn't torn down when switching back to the tour one. function test_background_then_foreground_tab(done) { let blankTab = null; function listener(event, params) { is(event, "test-event-4", "Correct event name"); is(params, null, "No param object"); gContentAPI.observe(null); gBrowser.removeTab(blankTab); done(); } gContentAPI.observe(listener, () => { blankTab = gBrowser.selectedTab = gBrowser.addTab("about:blank"); isnot(gBrowser.selectedTab, gTestTab, "Make sure the selected tab changed"); gBrowser.selectedTab = gTestTab; is(gBrowser.selectedTab, gTestTab, "Switch back to the test tab"); UITour.notify("test-event-4"); }); }, ];