summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/workers/Worker_cross_origin_security_err.htm
blob: 8417adbefdad83678b06cdb076696e19b70c32a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!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_dom("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_dom("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>