samesite-sw-helper.html (977B)
1 <!DOCTYPE html> 2 <meta charset="utf-8"> 3 <title>Navigation Preload Same Site SW registrator</title> 4 <script src="/resources/testharness.js"></script> 5 <script src="/resources/testharnessreport.js"></script> 6 <script src="../../resources/test-helpers.sub.js"></script> 7 <script> 8 9 /** 10 * This is a helper file to register/unregister service worker in a same-site 11 * iframe. 12 **/ 13 14 async function messageToParent(msg) { 15 parent.postMessage(msg, '*'); 16 } 17 18 onmessage = async (e) => { 19 // t is a , but the helper function needs a test object. 20 let t = { 21 step_func: (func) => func, 22 }; 23 if (e.data === "Register") { 24 let reg = await service_worker_unregister_and_register(t, "samesite-worker.js", "."); 25 let worker = reg.installing; 26 await wait_for_state(t, worker, 'activated'); 27 await messageToParent("SW Registered"); 28 } else if (e.data == "Unregister") { 29 await service_worker_unregister(t, "."); 30 await messageToParent("SW Unregistered"); 31 } 32 } 33 34 </script>