gecko/browser/devtools/shared/test/head.js
Joe Walker b8b002dae1 Bug 742672 - GCLI needs a new home; r=robcee
--HG--
rename : browser/devtools/webconsole/GcliCommands.jsm => browser/devtools/commandline/GcliCommands.jsm
rename : browser/devtools/webconsole/GcliTiltCommands.jsm => browser/devtools/commandline/GcliTiltCommands.jsm
rename : browser/devtools/webconsole/gcli.css => browser/devtools/commandline/gcli.css
rename : browser/devtools/webconsole/gcli.jsm => browser/devtools/commandline/gcli.jsm
rename : browser/devtools/webconsole/gcliblank.xhtml => browser/devtools/commandline/gcliblank.xhtml
rename : browser/devtools/shared/test/browser_gcli_break.html => browser/devtools/commandline/test/browser_gcli_break.html
rename : browser/devtools/shared/test/browser_gcli_break.js => browser/devtools/commandline/test/browser_gcli_break.js
rename : browser/devtools/shared/test/browser_gcli_commands.js => browser/devtools/commandline/test/browser_gcli_commands.js
rename : browser/devtools/shared/test/browser_gcli_inspect.html => browser/devtools/commandline/test/browser_gcli_inspect.html
rename : browser/devtools/shared/test/browser_gcli_inspect.js => browser/devtools/commandline/test/browser_gcli_inspect.js
rename : browser/devtools/shared/test/browser_gcli_integrate.js => browser/devtools/commandline/test/browser_gcli_integrate.js
rename : browser/devtools/shared/test/browser_gcli_web.js => browser/devtools/commandline/test/browser_gcli_web.js
rename : browser/devtools/shared/test/browser_gcli_require.js => browser/devtools/shared/test/browser_require_basic.js
2012-05-17 19:04:33 +01:00

120 lines
3.5 KiB
JavaScript

/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is DevTools test code.
*
* The Initial Developer of the Original Code is
* The Mozilla Foundation.
*
* Portions created by the Initial Developer are Copyright (C) 2011
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
* Joe Walker <jwalker@mozilla.com> (Original author)
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
let console = (function() {
let tempScope = {};
Components.utils.import("resource:///modules/devtools/Console.jsm", tempScope);
return tempScope.console;
})();
/**
* Open a new tab at a URL and call a callback on load
*/
function addTab(aURL, aCallback)
{
waitForExplicitFinish();
gBrowser.selectedTab = gBrowser.addTab();
content.location = aURL;
let tab = gBrowser.selectedTab;
let browser = gBrowser.getBrowserForTab(tab);
function onTabLoad() {
browser.removeEventListener("load", onTabLoad, true);
aCallback(browser, tab, browser.contentDocument);
}
browser.addEventListener("load", onTabLoad, true);
}
registerCleanupFunction(function tearDown() {
while (gBrowser.tabs.length > 1) {
gBrowser.removeCurrentTab();
}
console = undefined;
});
/**
* Various functions for testing DeveloperToolbar.
* Parts of this code exist in:
* - browser/devtools/commandline/test/head.js
* - browser/devtools/shared/test/head.js
*/
let DeveloperToolbarTest = {
/**
* Paranoid DeveloperToolbar.show();
*/
show: function DTT_show(aCallback) {
if (DeveloperToolbar.visible) {
ok(false, "DeveloperToolbar.visible at start of openDeveloperToolbar");
}
else {
DeveloperToolbar.show(aCallback);
}
},
/**
* Paranoid DeveloperToolbar.hide();
*/
hide: function DTT_hide() {
if (!DeveloperToolbar.visible) {
ok(false, "!DeveloperToolbar.visible at start of closeDeveloperToolbar");
}
else {
DeveloperToolbar.display.inputter.setInput("");
DeveloperToolbar.hide();
}
}
};
function catchFail(func) {
return function() {
try {
return func.apply(null, arguments);
}
catch (ex) {
ok(false, ex);
console.error(ex);
finish();
throw ex;
}
};
}