diff --git a/testing/web-platform/tests/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js b/testing/web-platform/tests/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js index 5f8e07711cbca..95d516e275280 100644 --- a/testing/web-platform/tests/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js +++ b/testing/web-platform/tests/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js @@ -46,40 +46,3 @@ async function assertHeaderIsAsExpected( return res.headers.get(headerName); }, [headerName]), 'header is set'); } - -async function assertNotRestoredReasonsEquals( - remoteContextHelper, blocked, url, src, id, name, reasons, children) { - let result = await remoteContextHelper.executeScript(() => { - return performance.getEntriesByType('navigation')[0].notRestoredReasons; - }); - assertReasonsStructEquals(result, blocked, url, src, id, name, reasons, children); -} - -function assertReasonsStructEquals(result, blocked, url, src, id, name, reasons, children) { - assert_equals(result.blocked, blocked); - assert_equals(result.url, url); - assert_equals(result.src, src); - assert_equals(result.id, id); - assert_equals(result.name, name); - // Reasons should match. - assert_equals(result.reasons.length, reasons.length); - reasons.sort(); - result.reasons.sort(); - for (let i=0; i { - const rcHelper = new RemoteContextHelper(); - - // Open a window with noopener so that BFCache will work. - const rc1 = await rcHelper.addWindow( - /*config=*/ null, /*options=*/ {features: 'noopener'}); - - // Navigate away. - const rc2 = await rc1.navigateToNew(); - - // Navigate back. - await rc2.historyBack(); - - // Verify that no reasons are recorded for successful restore. - assert_true(await rc1.executeScript(() => { - let reasons = performance.getEntriesByType('navigation')[0].notRestoredReasons; - return reasons == null; - })); -}); \ No newline at end of file diff --git a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-cross-origin-bfcache.window.js b/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-cross-origin-bfcache.window.js deleted file mode 100644 index f906b4b0735af..0000000000000 --- a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-cross-origin-bfcache.window.js +++ /dev/null @@ -1,70 +0,0 @@ -// META: title=RemoteContextHelper navigation using BFCache -// META: script=/common/dispatcher/dispatcher.js -// META: script=/common/get-host-info.sub.js -// META: script=/common/utils.js -// META: script=/resources/testharness.js -// META: script=/resources/testharnessreport.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js -// META: script=/websockets/constants.sub.js - -'use strict'; - -// Ensure that cross-origin subtree's reasons are not exposed to notRestoredReasons. -promise_test(async t => { - const rcHelper = new RemoteContextHelper(); - // Open a window with noopener so that BFCache will work. - const rc1 = await rcHelper.addWindow( - /*config=*/ null, /*options=*/ {features: 'noopener'}); - const rc1_url = await rc1.executeScript(() => { - return location.href; - }); - // Add a cross-origin iframe and use BroadcastChannel. - const rc1_child = await rc1.addIframe( - /*extraConfig=*/ { - origin: 'HTTP_REMOTE_ORIGIN', - scripts: [], - headers: [], - }, - /*attributes=*/ {id: 'test-id'}, - ); - - const domainPort = SCHEME_DOMAIN_PORT; - await rc1_child.executeScript((domain) => { - var ws = new WebSocket(domain + '/echo'); - }, [domainPort]); - - const rc1_child_url = await rc1_child.executeScript(() => { - return location.href; - }); - // Add a child to the iframe. - const rc1_grand_child = await rc1_child.addIframe(); - const rc1_grand_child_url = await rc1_grand_child.executeScript(() => { - return location.href; - }); - - // Navigate away. - const rc2 = await rc1.navigateToNew(); - - // Navigate back. - await rc2.historyBack(); - - // Check the reported reasons. - await assertNotRestoredReasonsEquals( - rc1, - /*blocked=*/false, - /*url=*/rc1_url, - /*src=*/ "", - /*id=*/"", - /*name=*/"", - /*reasons=*/[], - /*children=*/[{ - "blocked": true, - "url": "", - "src": "", - "id": "", - "name": "", - "reasons": [], - "children": [] - }]); -}); \ No newline at end of file diff --git a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-not-bfcached.window.js b/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-not-bfcached.window.js deleted file mode 100644 index ac8af0e88c8a4..0000000000000 --- a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-not-bfcached.window.js +++ /dev/null @@ -1,44 +0,0 @@ -// META: title=RemoteContextHelper navigation using BFCache -// META: script=/common/dispatcher/dispatcher.js -// META: script=/common/get-host-info.sub.js -// META: script=/common/utils.js -// META: script=/resources/testharness.js -// META: script=/resources/testharnessreport.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js -// META: script=/websockets/constants.sub.js - -'use strict'; - -// Ensure that notRestoredReasons is populated when not restored. -promise_test(async t => { - const rcHelper = new RemoteContextHelper(); - // Open a window with noopener so that BFCache will work. - const rc1 = await rcHelper.addWindow( - /*config=*/ null, /*options=*/ {features: 'noopener'}); - - const domainPort = SCHEME_DOMAIN_PORT; - await rc1.executeScript((domain) => { - var ws = new WebSocket(domain + '/echo'); - }, [domainPort]); - - const rc1_url = await rc1.executeScript(() => { - return location.href; - }); - - // Navigate away. - const rc2 = await rc1.navigateToNew(); - - // Navigate back. - await rc2.historyBack(); - // Check the reported reasons. - await assertNotRestoredReasonsEquals( - rc1, - /*blocked=*/true, - /*url=*/rc1_url, - /*src=*/ "", - /*id=*/"", - /*name=*/"", - /*reasons=*/["WebSocket"], - /*children=*/[]); -}); \ No newline at end of file diff --git a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-same-origin-bfcache.window.js b/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-same-origin-bfcache.window.js deleted file mode 100644 index fb5ec50400e5a..0000000000000 --- a/testing/web-platform/tests/performance-timeline/not-restored-reasons/performance-navigation-timing-same-origin-bfcache.window.js +++ /dev/null @@ -1,73 +0,0 @@ -// META: title=RemoteContextHelper navigation using BFCache -// META: script=/common/dispatcher/dispatcher.js -// META: script=/common/get-host-info.sub.js -// META: script=/common/utils.js -// META: script=/resources/testharness.js -// META: script=/resources/testharnessreport.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper/resources/remote-context-helper.js -// META: script=/html/browsers/browsing-the-web/remote-context-helper-tests/resources/test-helper.js -// META: script=/websockets/constants.sub.js - -'use strict'; - -// Ensure that same-origin subtree's reasons are exposed to notRestoredReasons. -promise_test(async t => { - const rcHelper = new RemoteContextHelper(); - // Open a window with noopener so that BFCache will work. - const rc1 = await rcHelper.addWindow( - /*config=*/ null, /*options=*/ {features: 'noopener'}); - const rc1_url = await rc1.executeScript(() => { - return location.href; - }); - // Add a same-origin iframe and use WebSocket. - const rc1_child = await rc1.addIframe(/*extra_config=*/{}, /*attributes=*/ {id: 'test-id'}); - - const domainPort = SCHEME_DOMAIN_PORT; - await rc1_child.executeScript((domain) => { - var ws = new WebSocket(domain + '/echo'); - }, [domainPort]); - - const rc1_child_url = await rc1_child.executeScript(() => { - return location.href; - }); - // Add a child to the iframe. - const rc1_grand_child = await rc1_child.addIframe(); - const rc1_grand_child_url = await rc1_grand_child.executeScript(() => { - return location.href; - }); - - // Navigate away. - const rc2 = await rc1.navigateToNew(); - - // Navigate back. - await rc2.historyBack(); - - // Check the reported reasons. - await assertNotRestoredReasonsEquals( - rc1, - /*blocked=*/false, - /*url=*/rc1_url, - /*src=*/ "", - /*id=*/"", - /*name=*/"", - /*reasons=*/[], - /*children=*/[{ - "blocked": true, - "url": rc1_child_url, - "src": rc1_child_url, - "id": "test-id", - "name": "", - "reasons": ["WebSocket"], - "children": [ - { - "blocked": false, - "url": rc1_grand_child_url, - "src": rc1_grand_child_url, - "id": "", - "name": "", - "reasons": [], - "children": [] - } - ] - }]); -}); \ No newline at end of file