1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/browser/devtools/debugger/test/browser_dbg_addon-panels.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,44 @@ 1.4 +/* Any copyright is dedicated to the Public Domain. 1.5 + http://creativecommons.org/publicdomain/zero/1.0/ */ 1.6 + 1.7 +// Ensure that only panels that are relevant to the addon debugger 1.8 +// display in the toolbox 1.9 + 1.10 +const ADDON_URL = EXAMPLE_URL + "addon3.xpi"; 1.11 + 1.12 +let gAddon, gClient, gThreadClient, gDebugger, gSources; 1.13 +let PREFS = [ 1.14 + "devtools.canvasdebugger.enabled", 1.15 + "devtools.shadereditor.enabled", 1.16 + "devtools.profiler.enabled", 1.17 + "devtools.netmonitor.enabled" 1.18 +]; 1.19 +function test() { 1.20 + Task.spawn(function () { 1.21 + let addon = yield addAddon(ADDON_URL); 1.22 + let addonDebugger = yield initAddonDebugger(ADDON_URL); 1.23 + 1.24 + // Store and enable all optional dev tools panels 1.25 + let originalPrefs = PREFS.map(pref => { 1.26 + let original = Services.prefs.getBoolPref(pref); 1.27 + Services.prefs.setBoolPref(pref, true) 1.28 + return original; 1.29 + }); 1.30 + 1.31 + let tabs = addonDebugger.frame.contentDocument.getElementById("toolbox-tabs").children; 1.32 + let expectedTabs = ["options", "jsdebugger"]; 1.33 + 1.34 + is(tabs.length, 2, "displaying only 2 tabs in addon debugger"); 1.35 + Array.forEach(tabs, (tab, i) => { 1.36 + let toolName = expectedTabs[i]; 1.37 + is(tab.getAttribute("toolid"), toolName, "displaying " + toolName); 1.38 + }); 1.39 + 1.40 + yield addonDebugger.destroy(); 1.41 + yield removeAddon(addon); 1.42 + 1.43 + PREFS.forEach((pref, i) => Services.prefs.setBoolPref(pref, originalPrefs[i])); 1.44 + 1.45 + finish(); 1.46 + }); 1.47 +}