add-module-or-create-worklet-with-data-url.tentative.https.sub.html (1756B)
1 <!doctype html> 2 <script src="/resources/testharness.js"></script> 3 <script src="/resources/testharnessreport.js"></script> 4 5 <body> 6 <script> 7 'use strict'; 8 9 promise_test(async t => { 10 // Loading the worklet script uses CORS, which doesn't support the data 11 // scheme. 12 return promise_rejects_dom(t, "OperationError", 13 sharedStorage.worklet.addModule( 14 `data:application/javascript;alert("Hi!")`)); 15 }, 'addModule() with data URL module script'); 16 17 promise_test(async t => { 18 // Loading the worklet script uses CORS, which doesn't support the data 19 // scheme. 20 return promise_rejects_dom(t, "OperationError", 21 sharedStorage.createWorklet( 22 `data:application/javascript;alert("Hi!")`)); 23 }, 'createWorklet() with data URL module script and default data origin'); 24 25 promise_test(async t => { 26 // Loading the worklet script uses CORS, which doesn't support the data 27 // scheme. 28 return promise_rejects_dom(t, "OperationError", 29 sharedStorage.createWorklet( 30 `data:application/javascript;alert("Hi!")`, 31 { dataOrigin: "context-origin" })); 32 }, 'createWorklet() with data URL module script and dataOrigin "context-origin"'); 33 34 promise_test(async t => { 35 // Opaque data origins are not permitted. 36 return promise_rejects_dom(t, "InvalidAccessError", 37 sharedStorage.createWorklet( 38 `data:application/javascript;alert("Hi!")`, 39 { dataOrigin: "script-origin" })); 40 }, 'createWorklet() with data URL module script and dataOrigin "script-origin"'); 41 </script> 42 </body>