Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /html/cross-origin-embedder-policy/require-corp-worker-script-revalidation.html - WPT Dashboard Interop Dashboard
<!doctype html>
<title>COEP and dedicated worker</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src="/common/get-host-info.sub.js"></script>
<script src="resources/worker-support.js"></script>
<body>
<script>
promise_test(async (t) => {
const worker1 = new Worker("/html/cross-origin-embedder-policy/resources/dedicated-worker-supporting-revalidation.py");
worker1.onerror = t.unreached_func('Worker.onerror should not be called for first worker');
worker1.postMessage("foo");
const result1 = await waitForMessage(worker1);
assert_equals(result1.data, 'LOADED');
// Load the worker a second time, which should trigger revalidation of the cached resource.
const worker2 = new Worker("/html/cross-origin-embedder-policy/resources/dedicated-worker-supporting-revalidation.py");
worker2.onerror = t.unreached_func('Worker.onerror should not be called worker second worker');
worker2.postMessage("foo");
const result2 = await waitForMessage(worker2);
assert_equals(result2.data, 'LOADED');
}, 'COEP: require-corp with revalidated worker script');
</script>
</body>