| <!DOCTYPE html> |
| <title>Worker cross-origin URL</title> |
| <meta name="timeout" content="long"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <div id=log></div> |
| <script> |
| async_test(function(t) { |
| try { |
| var w = new Worker("ftp://example.org/support/WorkerBasic.js"); |
| w.onerror = t.step_func_done(function(e) { |
| assert_true(e instanceof Event); |
| }); |
| } catch (e) { |
| assert_throws("SecurityError", () => {throw e}, "DOMExceptions thrown on cross-origin Worker construction must be SecurityErrors"); |
| t.done(); |
| } |
| }, "Cross-origin classic workers should fail to fetch"); |
| |
| async_test(function(t) { |
| try { |
| var w = new Worker("ftp://example.org/support/WorkerBasic.js", {type: "module"}); |
| w.onerror = t.step_func_done(function(e) { |
| assert_true(e instanceof Event); |
| }); |
| } catch (e) { |
| assert_throws("SecurityError", () => {throw e}, "DOMExceptions thrown on cross-origin module Worker construction must be SecurityErrors"); |
| t.done(); |
| } |
| }, "Cross-origin module workers should fail to fetch"); |
| </script> |