OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <title>Handling of instantiation errors, 3</title> |
| 3 |
| 4 <script src="/resources/testharness.js"></script> |
| 5 <script src="/resources/testharnessreport.js"></script> |
| 6 <script> |
| 7 setup({allow_uncaught_exception: true}); |
| 8 |
| 9 window.log = []; |
| 10 |
| 11 window.addEventListener("error", ev => log.push(ev.error)); |
| 12 |
| 13 const test_load = async_test( |
| 14 "Test that unresolvable cycles lead to SyntaxError events on window " + |
| 15 "and load events on script, and that exceptions are remembered"); |
| 16 window.addEventListener("load", test_load.step_func_done(ev => { |
| 17 const exn = log[0]; |
| 18 assert_array_equals(log, [exn, 1, exn, 2, exn, 3]); |
| 19 assert_equals(exn.constructor, SyntaxError); |
| 20 })); |
| 21 |
| 22 function unreachable() { log.push("unexpected"); } |
| 23 </script> |
| 24 <script type="module" src="./cycle-unresolvable.js" |
| 25 onerror="unreachable()" onload="log.push(1)" nomodule></script> |
| 26 <script type="module" src="./cycle-unresolvable-a.js" |
| 27 onerror="unreachable()" onload="log.push(2)"></script> |
| 28 <script type="module" src="./cycle-unresolvable.js" |
| 29 onerror="unreachable()" onload="log.push(3)" async></script> |
OLD | NEW |