%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<!DOCTYPE html> <meta charset="UTF-8"> <title>Throwing in event listeners</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <div id="log"></div> <script> setup({allow_uncaught_exception:true}) test(function() { var errorEvents = 0; window.onerror = this.step_func(function(e) { assert_equals(typeof e, 'string'); ++errorEvents; }); var element = document.createElement('div'); element.addEventListener('click', function() { throw new Error('Error from only listener'); }); element.dispatchEvent(new Event('click')); assert_equals(errorEvents, 1); }, "Throwing in event listener with a single listeners"); test(function() { var errorEvents = 0; window.onerror = this.step_func(function(e) { assert_equals(typeof e, 'string'); ++errorEvents; }); var element = document.createElement('div'); var secondCalled = false; element.addEventListener('click', function() { throw new Error('Error from first listener'); }); element.addEventListener('click', this.step_func(function() { secondCalled = true; }), false); element.dispatchEvent(new Event('click')); assert_equals(errorEvents, 1); assert_true(secondCalled); }, "Throwing in event listener with multiple listeners"); </script>