Index: third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html |
diff --git a/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..6aedc0608c6b2aee7a784fede5d886ad7724d57a |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/evaluation-error-2.html |
@@ -0,0 +1,27 @@ |
+<!DOCTYPE html> |
+<title>Handling of evaluation 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 ill-founded cyclic dependencies cause ReferenceError " + |
+ "during evaluation, which leads to error events on window, and that " + |
+ "exceptions are remembered.\n"); |
+ window.addEventListener("load", test_load.step_func_done(ev => { |
+ const exn = log[1]; |
+ assert_array_equals(log, ["cycle-tdz-access-a", exn, exn, exn]); |
+ assert_equals(exn.constructor, ReferenceError); |
+ })); |
+ |
+ function unreachable() { log.push("unexpected"); } |
+</script> |
+<script type="module" src="cycle-tdz-access.js" async onerror="unreachable()"></script> |
+<script type="module" src="cycle-tdz-access.js" nomodule onerror="unreachable()"></script> |
+<script type="module" src="cycle-tdz-access.js" onerror="unreachable()"></script> |