Index: third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html |
diff --git a/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..131a6e439fd80752499e4e9d10445f518406abe6 |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/compilation-error-2.html |
@@ -0,0 +1,28 @@ |
+<!DOCTYPE html> |
+<title>Handling of compilation errors, 2</title> |
+ |
+<script src="/resources/testharness.js"></script> |
+<script src="/resources/testharnessreport.js"></script> |
+<script> |
+ setup({allow_uncaught_exception: true}); |
+ |
+ window.log = []; |
+ |
+ window.addEventListener("error", ev => log.push(ev.error)); |
+ |
+ const test_load = async_test( |
+ "Test that syntax errors lead to SyntaxError events on window, " + |
+ "and that exceptions are remembered."); |
+ window.addEventListener("load", test_load.step_func_done(ev => { |
+ assert_equals(log.length, 5); |
+ assert_equals(log[0].constructor, SyntaxError); |
+ assert_true(log.every(exn => exn === log[0])); |
+ })); |
+ |
+ function unreachable() { log.push("unexpected"); } |
+</script> |
+<script type="module" src="./syntaxerror-nested.js" onerror="unreachable()"></script> |
+<script type="module" src="./syntaxerror-nested.js" onerror="unreachable()"></script> |
+<script type="module" src="./syntaxerror.js" onerror="unreachable()"></script> |
+<script type="module" src="./syntaxerror-nested.js" onerror="unreachable()"></script> |
+<script type="module" src="./syntaxerror.js" onerror="unreachable()"></script> |