blob: 988a1cf9d62fd1bca4d834db9856d094fb23ed6d [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 event listeners output in the Elements sidebar panel when the listeners are added on an element in about:blank page.\n`);
await TestRunner.loadModule('elements_test_runner');
await TestRunner.showPanel('elements');
await TestRunner.loadHTML(`
<iframe id="myframe"></iframe>
`);
await TestRunner.evaluateInPagePromise(`
function setupEventListeners()
{
function f() {}
var frame = document.getElementById("myframe");
var body = frame.contentDocument.body;
body.addEventListener("click", f, true);
var div = frame.contentDocument.createElement("div");
div.id = "div-in-iframe";
div.addEventListener("hover", f, {capture: true, once: true});
body.appendChild(div);
body.addEventListener("wheel", f, {"passive": true});
}
`);
Common.settingForTest('showEventListenersForAncestors').set(true);
TestRunner.evaluateInPage('setupEventListeners()', step1);
function step1() {
ElementsTestRunner.selectNodeWithId('div-in-iframe', step2);
}
function step2() {
ElementsTestRunner.expandAndDumpSelectedElementEventListeners(TestRunner.completeTest.bind(TestRunner));
}
})();