test_sharedWorker.html (1373B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>Test for cookies + SharedWorker loading when the policy changes</title> 5 <script src="/tests/SimpleTest/SimpleTest.js"></script> 6 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 7 <script type="application/javascript" src="cookiesHelper.js"></script> 8 </head> 9 <body> 10 <script type="application/javascript"> 11 12 runTests(async (w, state) => { 13 w.document.cookie = "name=value"; 14 15 if (state == BLOCKED) { 16 try { 17 new w.SharedWorker("cookie.sjs?sharedworker&" + Math.random()); 18 ok(false, "SharedWorker should not be allowed!"); 19 } catch (ex) { 20 ok(true, "SharedWorker should not be allowed!"); 21 } 22 return; 23 } 24 25 let p = new w.SharedWorker("cookie.sjs?sharedworker&" + Math.random()); 26 await new w.Promise(resolve => { p.port.onmessage = resolve; }); 27 await checkLastRequest("sharedworker", state); 28 29 await new w.Promise(resolve => { 30 p.port.postMessage("subworker"); 31 p.port.onmessage = resolve; 32 }); 33 await checkLastRequest("subworker", state); 34 35 await new w.Promise(resolve => { 36 p.port.postMessage("fetch"); 37 p.port.onmessage = resolve; 38 }); 39 await checkLastRequest("fetch", state); 40 41 await new w.Promise(resolve => { 42 p.port.postMessage("xhr"); 43 p.port.onmessage = resolve; 44 }); 45 await checkLastRequest("xhr", state); 46 }); 47 48 </script> 49 </body> 50 </html>