| function sandbox_iframe_test(sandbox, src, title) { |
| return promise_test(async t => { |
| const iframe = document.createElement("iframe"); |
| if (sandbox !== "") |
| iframe.sandbox = sandbox; |
| iframe.src = src; |
| |
| let msg = await new Promise(resolve => { |
| window.addEventListener('message', resolve); |
| document.body.appendChild(iframe); |
| }); |
| |
| assert_equals(msg.data, "PASS", "message from opened frame"); |
| await fetch("/client-hints/accept-ch-stickiness/resources/clear-site-data.html"); |
| }, title); |
| } |
| |
| function sandbox_popup_listener(src) { |
| window.addEventListener('message', e => { |
| window.parent.postMessage(e.data, '*'); |
| }); |
| |
| let popup_window = window.open("/resources/blank.html"); |
| popup_window.location.href = src; |
| } |