blob: ee7c10ae11760666fa7c57ba75bc8fc2c73262ef [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
(async function() {
TestRunner.addResult(`Tests that constructed stylesheets appear properly.\n`);
await TestRunner.loadModule('elements_test_runner');
await TestRunner.showPanel('elements');
await TestRunner.loadHTML(`
<div id="inspected">Text</div>
`);
await TestRunner.evaluateInPagePromise(`
const s = new CSSStyleSheet();
s.replaceSync('div {color: red}');
document.adoptedStyleSheets = [s];
`);
ElementsTestRunner.selectNodeAndWaitForStyles('inspected', modify);
async function modify() {
await ElementsTestRunner.dumpSelectedElementStyles(true);
TestRunner.cssModel.addEventListener(SDK.CSSModel.Events.StyleSheetChanged, onStyleSheetChanged, this);
function onStyleSheetChanged(event) {
TestRunner.addResult('StyleSheetChanged triggered');
TestRunner.completeTest();
}
await TestRunner.evaluateInPagePromise(`
s.insertRule('div {color: green}');
`);
}
})();