requestStorageAccess.tentative.https.window.js (1165B)
1 // META: script=/common/get-host-info.sub.js 2 // META: script=/common/utils.js 3 // META: script=/common/dispatcher/dispatcher.js 4 // META: script=/html/cross-origin-embedder-policy/credentialless/resources/common.js 5 // META: script=./resources/common.js 6 7 setup(() => { 8 assert_implements(document.requestStorageAccess, 9 "requestStorageAccess is not supported."); 10 }) 11 12 const requestStorageAccess = (iframe) => { 13 const reply = token(); 14 send(iframe, ` 15 try { 16 await document.requestStorageAccess(); 17 send("${reply}", "success"); 18 } catch { 19 send("${reply}", "failed"); 20 } 21 `); 22 return receive(reply); 23 } 24 25 promise_test(async test => { 26 const same_origin = window.origin; 27 const iframe = newIframeCredentialless(same_origin); 28 assert_equals(await requestStorageAccess(iframe), "failed"); 29 }, "Same-origin credentialless iframe can't request storage access"); 30 31 promise_test(async test => { 32 const cross_origin = get_host_info().HTTPS_REMOTE_ORIGIN; 33 const iframe = newIframeCredentialless(cross_origin); 34 assert_equals(await requestStorageAccess(iframe), "failed"); 35 }, "Cross-origin credentialless iframe can't request storage access");