blob: 52da60be91f62ce048f5ae1a2f81a9307a734479 [file] [log] [blame]
// META: global=worker
const crossOrigin = "https://{{hosts[alt][]}}:{{ports[https][0]}}";
const redirectToCrossOrigin = "/common/redirect.py?location=" + crossOrigin;
test(function() {
assert_throws_js(SyntaxError, function() {
importScripts("/workers/modules/resources/syntax-error.js");
});
}, "Same-origin syntax error");
test(function() {
assert_throws_js(Error, function() {
importScripts("/workers/modules/resources/throw.js");
});
}, "Same-origin throw");
// https://html.spec.whatwg.org/C/#run-a-classic-script
// Step 8.2. If rethrow errors is true and script's muted errors is true, then:
// Step 8.2.2. Throw a "NetworkError" DOMException.
test(function() {
assert_throws_dom("NetworkError", function() {
importScripts(crossOrigin +
"/workers/modules/resources/syntax-error.js");
});
}, "Cross-origin syntax error");
test(function() {
assert_throws_dom("NetworkError", function() {
importScripts(crossOrigin +
"/workers/modules/resources/throw.js");
});
}, "Cross-origin throw");
test(function() {
assert_throws_dom("NetworkError", function() {
importScripts(redirectToCrossOrigin +
"/workers/modules/resources/syntax-error.js");
});
}, "Redirect-to-cross-origin syntax error");
test(function() {
assert_throws_dom("NetworkError", function() {
importScripts(redirectToCrossOrigin +
"/workers/modules/resources/throw.js");
});
}, "Redirect-to-Cross-origin throw");