mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-07 00:08:39 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
101
devtools/client/scratchpad/test/browser_scratchpad_open.js
Normal file
101
devtools/client/scratchpad/test/browser_scratchpad_open.js
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
/* vim: set ts=2 et sw=2 tw=80: */
|
||||
/* Any copyright is dedicated to the Public Domain.
|
||||
http://creativecommons.org/publicdomain/zero/1.0/ */
|
||||
|
||||
// only finish() when correct number of tests are done
|
||||
const expected = 4;
|
||||
var count = 0;
|
||||
var lastUniqueName = null;
|
||||
|
||||
function done()
|
||||
{
|
||||
if (++count == expected) {
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
||||
function test()
|
||||
{
|
||||
waitForExplicitFinish();
|
||||
testOpen();
|
||||
testOpenWithState();
|
||||
testOpenInvalidState();
|
||||
testOpenTestFile();
|
||||
}
|
||||
|
||||
function testUniqueName(name)
|
||||
{
|
||||
ok(name, "Scratchpad has a uniqueName");
|
||||
|
||||
if (lastUniqueName === null) {
|
||||
lastUniqueName = name;
|
||||
return;
|
||||
}
|
||||
|
||||
ok(name !== lastUniqueName,
|
||||
"Unique name for this instance differs from the last one.");
|
||||
}
|
||||
|
||||
function testOpen()
|
||||
{
|
||||
openScratchpad(function (win) {
|
||||
is(win.Scratchpad.filename, undefined, "Default filename is undefined");
|
||||
isnot(win.Scratchpad.getText(), null, "Default text should not be null");
|
||||
is(win.Scratchpad.executionContext, win.SCRATCHPAD_CONTEXT_CONTENT,
|
||||
"Default execution context is content");
|
||||
testUniqueName(win.Scratchpad.uniqueName);
|
||||
|
||||
win.close();
|
||||
done();
|
||||
}, {noFocus: true});
|
||||
}
|
||||
|
||||
function testOpenWithState()
|
||||
{
|
||||
let state = {
|
||||
filename: "testfile",
|
||||
executionContext: 2,
|
||||
text: "test text"
|
||||
};
|
||||
|
||||
openScratchpad(function (win) {
|
||||
is(win.Scratchpad.filename, state.filename, "Filename loaded from state");
|
||||
is(win.Scratchpad.executionContext, state.executionContext, "Execution context loaded from state");
|
||||
is(win.Scratchpad.getText(), state.text, "Content loaded from state");
|
||||
testUniqueName(win.Scratchpad.uniqueName);
|
||||
|
||||
win.close();
|
||||
done();
|
||||
}, {state: state, noFocus: true});
|
||||
}
|
||||
|
||||
function testOpenInvalidState()
|
||||
{
|
||||
let win = openScratchpad(null, {state: 7});
|
||||
ok(!win, "no scratchpad opened if state is not an object");
|
||||
done();
|
||||
}
|
||||
|
||||
function testOpenTestFile()
|
||||
{
|
||||
let win = openScratchpad(function (win) {
|
||||
ok(win, "scratchpad opened for file open");
|
||||
try {
|
||||
win.Scratchpad.importFromFile(
|
||||
"http://example.com/browser/devtools/client/scratchpad/test/NS_ERROR_ILLEGAL_INPUT.txt",
|
||||
"silent",
|
||||
function (aStatus, content) {
|
||||
let nb = win.document.querySelector("#scratchpad-notificationbox");
|
||||
is(nb.querySelectorAll("notification").length, 1, "There is just one notification");
|
||||
let cn = nb.currentNotification;
|
||||
is(cn.priority, nb.PRIORITY_WARNING_HIGH, "notification priority is correct");
|
||||
is(cn.value, "file-import-convert-failed", "notification value is corrent");
|
||||
is(cn.type, "warning", "notification type is correct");
|
||||
done();
|
||||
});
|
||||
ok(true, "importFromFile does not cause exception");
|
||||
} catch (exception) {
|
||||
ok(false, "importFromFile causes exception " + DevToolsUtils.safeErrorString(exception));
|
||||
}
|
||||
}, {noFocus: true});
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue