cross-origin-worklet-in-sandboxed-frame-inner.https.sub.html (1622B)
1 <!doctype html> 2 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharnessreport.js"></script> 4 <script src="/common/utils.js"></script> 5 <script src="/shared-storage/resources/util.js"></script> 6 <script src="/fenced-frame/resources/utils.js"></script> 7 8 <body> 9 <script> 10 'use strict'; 11 12 async function test() { 13 const url = new URL(location.href); 14 const cross_origin = url.searchParams.get('cross_origin'); 15 const ancestor_token = url.searchParams.get('ancestor_token'); 16 const mock_select_url_result_index = url.searchParams.get('mock_select_url_result_index'); 17 const set_key = url.searchParams.get('set_key'); 18 const set_value = url.searchParams.get('set_value'); 19 20 const script_url = cross_origin + 21 `/shared-storage/resources/simple-module.js`; 22 23 const worklet = await sharedStorage.createWorklet( 24 script_url, 25 { credentials: "omit", dataOrigin: "script-origin" }); 26 27 let url0 = generateURL("/shared-storage/resources/frame0.html", 28 [ancestor_token]); 29 30 let select_url_result_urn = await worklet.selectURL( 31 "test-url-selection-operation", 32 [{ url: url0 }], { 33 data: { 34 'mockResult': mock_select_url_result_index, 35 'setKey': set_key, 36 'setValue': set_value 37 }, 38 resolveToConfig: false, 39 keepAlive: true 40 }); 41 42 assert_true(validateSelectURLResult(select_url_result_urn, /*resolve_to_config=*/false)); 43 44 let parentOrOpener = window.opener || window.parent; 45 parentOrOpener.postMessage({success: true, selectUrlResultUrn: select_url_result_urn}, "*"); 46 } 47 48 test(); 49 50 </script> 51 </body>