blob: 468fdaa153e99ebf5959fe58af5ef694b4faa03f [file] [log] [blame]
(async function(testRunner) {
var {page, session, dp} = await testRunner.startBlank('Tests Page.windowOpen notification.');
await dp.Page.enable();
testRunner.log(`\nOpening with empty url`);
session.evaluate(`window.open(); undefined`);
var event = await dp.Page.onceWindowOpen();
testRunner.log(`url: ${event.params.url}`);
testRunner.log(`\nOpening with absolute url`);
session.evaluate(`window.open('http://example.com/index.html'); undefined`);
var event = await dp.Page.onceWindowOpen();
testRunner.log(`url: ${event.params.url}`);
testRunner.log(`\nOpening with relative url`);
session.evaluate(`window.open('path.html'); undefined`);
event = await dp.Page.onceWindowOpen();
var url = event.params.url;
url = url.substring(url.lastIndexOf('/'));
testRunner.log(`url: ...${url}`);
testRunner.log(`\nOpening from click`);
session.evaluate(`
var a = document.createElement('a');
a.setAttribute('href', 'anchor.html');
a.setAttribute('target', '_blank');
document.body.appendChild(a);
a.click();
`);
event = await dp.Page.onceWindowOpen();
url = event.params.url;
url = url.substring(url.lastIndexOf('/'));
testRunner.log(`url: ...${url}`);
testRunner.completeTest();
})