fune/devtools/startup/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
Julian Descottes 0846848648 Bug 1444926 - Move devtools/shim to devtools/startup;r=ochameau
MozReview-Commit-ID: K9WuJuTdYHS

--HG--
rename : devtools/shim/DevToolsShim.jsm => devtools/startup/DevToolsShim.jsm
rename : devtools/shim/aboutdebugging-registration.js => devtools/startup/aboutdebugging-registration.js
rename : devtools/shim/aboutdebugging.manifest => devtools/startup/aboutdebugging.manifest
rename : devtools/shim/aboutdevtools/aboutdevtools-registration.js => devtools/startup/aboutdevtools/aboutdevtools-registration.js
rename : devtools/shim/aboutdevtools/aboutdevtools.css => devtools/startup/aboutdevtools/aboutdevtools.css
rename : devtools/shim/aboutdevtools/aboutdevtools.js => devtools/startup/aboutdevtools/aboutdevtools.js
rename : devtools/shim/aboutdevtools/aboutdevtools.manifest => devtools/startup/aboutdevtools/aboutdevtools.manifest
rename : devtools/shim/aboutdevtools/aboutdevtools.xhtml => devtools/startup/aboutdevtools/aboutdevtools.xhtml
rename : devtools/shim/aboutdevtools/images/dev-edition-logo.svg => devtools/startup/aboutdevtools/images/dev-edition-logo.svg
rename : devtools/shim/aboutdevtools/images/external-link.svg => devtools/startup/aboutdevtools/images/external-link.svg
rename : devtools/shim/aboutdevtools/images/feature-console.svg => devtools/startup/aboutdevtools/images/feature-console.svg
rename : devtools/shim/aboutdevtools/images/feature-debugger.svg => devtools/startup/aboutdevtools/images/feature-debugger.svg
rename : devtools/shim/aboutdevtools/images/feature-inspector.svg => devtools/startup/aboutdevtools/images/feature-inspector.svg
rename : devtools/shim/aboutdevtools/images/feature-memory.svg => devtools/startup/aboutdevtools/images/feature-memory.svg
rename : devtools/shim/aboutdevtools/images/feature-network.svg => devtools/startup/aboutdevtools/images/feature-network.svg
rename : devtools/shim/aboutdevtools/images/feature-performance.svg => devtools/startup/aboutdevtools/images/feature-performance.svg
rename : devtools/shim/aboutdevtools/images/feature-responsive.svg => devtools/startup/aboutdevtools/images/feature-responsive.svg
rename : devtools/shim/aboutdevtools/images/feature-storage.svg => devtools/startup/aboutdevtools/images/feature-storage.svg
rename : devtools/shim/aboutdevtools/images/feature-visualediting.svg => devtools/startup/aboutdevtools/images/feature-visualediting.svg
rename : devtools/shim/aboutdevtools/images/otter.svg => devtools/startup/aboutdevtools/images/otter.svg
rename : devtools/shim/aboutdevtools/moz.build => devtools/startup/aboutdevtools/moz.build
rename : devtools/shim/aboutdevtools/subscribe.css => devtools/startup/aboutdevtools/subscribe.css
rename : devtools/shim/aboutdevtools/subscribe.js => devtools/startup/aboutdevtools/subscribe.js
rename : devtools/shim/aboutdevtools/test/.eslintrc.js => devtools/startup/aboutdevtools/test/.eslintrc.js
rename : devtools/shim/aboutdevtools/test/browser.ini => devtools/startup/aboutdevtools/test/browser.ini
rename : devtools/shim/aboutdevtools/test/browser_aboutdevtools_closes_page.js => devtools/startup/aboutdevtools/test/browser_aboutdevtools_closes_page.js
rename : devtools/shim/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js => devtools/startup/aboutdevtools/test/browser_aboutdevtools_enables_devtools.js
rename : devtools/shim/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js => devtools/startup/aboutdevtools/test/browser_aboutdevtools_focus_owner_tab.js
rename : devtools/shim/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js => devtools/startup/aboutdevtools/test/browser_aboutdevtools_reuse_existing.js
rename : devtools/shim/aboutdevtools/test/head.js => devtools/startup/aboutdevtools/test/head.js
rename : devtools/shim/aboutdevtoolstoolbox-registration.js => devtools/startup/aboutdevtoolstoolbox-registration.js
rename : devtools/shim/aboutdevtoolstoolbox.manifest => devtools/startup/aboutdevtoolstoolbox.manifest
rename : devtools/shim/devtools-startup-prefs.js => devtools/startup/devtools-startup-prefs.js
rename : devtools/shim/devtools-startup.js => devtools/startup/devtools-startup.js
rename : devtools/shim/devtools-startup.manifest => devtools/startup/devtools-startup.manifest
rename : devtools/shim/jar.mn => devtools/startup/jar.mn
rename : devtools/shim/locales/en-US/aboutdevtools.dtd => devtools/startup/locales/en-US/aboutdevtools.dtd
rename : devtools/shim/locales/en-US/aboutdevtools.properties => devtools/startup/locales/en-US/aboutdevtools.properties
rename : devtools/shim/locales/en-US/key-shortcuts.properties => devtools/startup/locales/en-US/key-shortcuts.properties
rename : devtools/shim/locales/en-US/startup.properties => devtools/startup/locales/en-US/startup.properties
rename : devtools/shim/locales/jar.mn => devtools/startup/locales/jar.mn
rename : devtools/shim/locales/moz.build => devtools/startup/locales/moz.build
rename : devtools/shim/moz.build => devtools/startup/moz.build
rename : devtools/shim/tests/browser/.eslintrc.js => devtools/startup/tests/browser/.eslintrc.js
rename : devtools/shim/tests/browser/browser.ini => devtools/startup/tests/browser/browser.ini
rename : devtools/shim/tests/browser/browser_shim_disable_devtools.js => devtools/startup/tests/browser/browser_shim_disable_devtools.js
rename : devtools/shim/tests/unit/.eslintrc.js => devtools/startup/tests/unit/.eslintrc.js
rename : devtools/shim/tests/unit/test_devtools_shim.js => devtools/startup/tests/unit/test_devtools_shim.js
rename : devtools/shim/tests/unit/xpcshell.ini => devtools/startup/tests/unit/xpcshell.ini
extra : rebase_source : 7867a5b103d01dc936091a71deeaf526e7f0e47a
2018-03-12 14:41:48 +01:00

83 lines
2.6 KiB
JavaScript

/* vim: set ts=2 et sw=2 tw=80: */
/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
/* eslint-env browser */
/**
* When closing about:devtools, test that the tab where the user triggered about:devtools
* is selected again.
*/
add_task(async function() {
await pushPref("devtools.enabled", false);
info("Add an about:blank tab");
let tab1 = await addTab("data:text/html;charset=utf-8,tab1");
let tab2 = await addTab("data:text/html;charset=utf-8,tab2");
ok(tab1 === gBrowser.tabs[1], "tab1 is the second tab in the current browser window");
info("Select the first tab");
gBrowser.selectedTab = tab1;
synthesizeToggleToolboxKey();
info("Wait for the about:devtools tab to be selected");
await waitUntil(() => isAboutDevtoolsTab(gBrowser.selectedTab));
info("about:devtools was opened as expected.");
let aboutDevtoolsTab = gBrowser.selectedTab;
ok(aboutDevtoolsTab === gBrowser.tabs[2],
"about:devtools was opened next to its owner tab");
info("Move the owner tab to the end of the tabs array.");
gBrowser.moveTabTo(tab1, gBrowser.tabs.length - 1);
await removeTab(aboutDevtoolsTab);
await waitUntil(() => tab1 == gBrowser.selectedTab);
info("The correct tab was selected after closing about:devtools.");
await removeTab(tab1);
await removeTab(tab2);
});
/**
* When closing about:devtools, test that the current tab is not updated if
* about:devtools was not the selectedTab.
*/
add_task(async function() {
await pushPref("devtools.enabled", false);
info("Add an about:blank tab");
let tab1 = await addTab("data:text/html;charset=utf-8,tab1");
let tab2 = await addTab("data:text/html;charset=utf-8,tab2");
ok(tab1 === gBrowser.tabs[1], "tab1 is the second tab in the current browser window");
info("Select the first tab");
gBrowser.selectedTab = tab1;
synthesizeToggleToolboxKey();
info("Wait for the about:devtools tab to be selected");
await waitUntil(() => isAboutDevtoolsTab(gBrowser.selectedTab));
info("about:devtools was opened as expected.");
let aboutDevtoolsTab = gBrowser.selectedTab;
ok(aboutDevtoolsTab === gBrowser.tabs[2],
"about:devtools was opened next to its owner tab");
info("Select the second tab");
gBrowser.selectedTab = tab2;
let aboutDevtoolsDocument = aboutDevtoolsTab.linkedBrowser.contentDocument;
await waitUntil(() => aboutDevtoolsDocument.visibilityState === "hidden");
await removeTab(aboutDevtoolsTab);
ok(tab2 == gBrowser.selectedTab,
"Tab 2 should still be selected.");
await removeTab(tab1);
await removeTab(tab2);
});