diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html new file mode 100644 index 000000000..d127f1eb3 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/scripting-1/the-script-element/fetch-src/empty.html @@ -0,0 +1,32 @@ +<!doctype html> +<meta charset=utf-8> +<title>Script src with an empty URL</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<div id=log></div> +<script> +// For a better error message in case the UA tries to load "" (which resolves +// to this document). +setup({ + "allow_uncaught_exception": true, +}); +async_test(function(t) { + window.onerror = this.unreached_func("Should not get an error reported to " + + "the window before the script"); + var queued = false; + var script = document.createElement("script"); + script.onerror = this.step_func_done(function(ev) { + assert_equals(ev.type, "error"); + assert_false(ev.bubbles, "bubbles"); + assert_false(ev.cancelable, "cancelable"); + assert_true(ev.isTrusted, "isTrusted"); + assert_equals(ev.target, script); + assert_true(ev instanceof Event, "instanceof Event"); + assert_class_string(ev, "Event"); + assert_true(queued, "event should not be dispatched synchronously"); + }); + script.setAttribute("src", ""); + document.body.appendChild(script); + queued = true; +}); +</script> |