blob: 78b164779ba930170286c669096d980ce6d3295a [file] [log] [blame]
// Copyright 2017 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 overlay layers are not present in the layer tree`);
await TestRunner.loadModule('layers_test_runner');
await TestRunner.loadHTML(`
<style>
.layer {
transform: translateZ(10px);
opacity: 0.8;
background: blue;
}
</style>
<div id="a" style="width: 200px; height: 200px" class="layer">
CONTENT
</div>
`);
await TestRunner.evaluateInPagePromise(`
function updateGeometry()
{
document.getElementById("a").style.width = "300px";
}
`);
await LayersTestRunner.requestLayers();
var layersBeforeHighlight = [];
LayersTestRunner.layerTreeModel().layerTree().forEachLayer(function(layer) {
layersBeforeHighlight.push(layer.id());
});
TestRunner.OverlayAgent.highlightRect(0, 0, 200, 200, {r: 255, g: 0, b: 0});
await LayersTestRunner.evaluateAndWaitForTreeChange('updateGeometry()');
var layersAfterHighlight = [];
LayersTestRunner.layerTreeModel().layerTree().forEachLayer(function(layer) {
layersAfterHighlight.push(layer.id());
});
layersBeforeHighlight.sort();
layersAfterHighlight.sort();
function inOverlay() {
return document;
}
function isCSSPropertyUseCountedInOverlay(overlay_document) {
assert_false(internals.isCSSPropertyUseCounted(overlay_document, "height"));
assert_false(internals.isCSSPropertyUseCounted(overlay_document, "width"));
assert_true(internals.isCSSPropertyUseCounted(document, "height"));
assert_true(internals.isCSSPropertyUseCounted(document, "width"));
}
TestRunner.evaluateFunctionInOverlay(inOverlay, isCSSPropertyUseCountedInOverlay);
TestRunner.assertEquals(JSON.stringify(layersBeforeHighlight), JSON.stringify(layersAfterHighlight));
TestRunner.addResult('DONE');
TestRunner.completeTest();
})();