Mypal/devtools/client/styleeditor/test/browser_styleeditor_add_stylesheet.js
2021-02-04 16:48:36 +02:00

37 lines
1.1 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/ */
"use strict";
// Test that a newly-added style sheet shows up in the style editor.
const TESTCASE_URI = TEST_BASE_HTTPS + "simple.html";
add_task(function* () {
let { ui } = yield openStyleEditorForURL(TESTCASE_URI);
is(ui.editors.length, 2, "Two sheets present after load.");
// We have to wait for the length to change, because we might still
// be seeing events from the initial open.
let added = new Promise(resolve => {
let handler = () => {
if (ui.editors.length === 3) {
ui.off("editor-added", handler);
resolve();
}
};
ui.on("editor-added", handler);
});
info("Adding a style sheet");
yield ContentTask.spawn(gBrowser.selectedBrowser, null, () => {
let document = content.document;
const style = document.createElement("style");
style.appendChild(document.createTextNode("div { background: #f06; }"));
document.head.appendChild(style);
});
yield added;
is(ui.editors.length, 3, "Three sheets present after new style sheet");
});