blob: 6c5476542b869dffea77c828cad64a380c15ef63 [file] [log] [blame]
<!doctype html>
<meta charset=utf-8>
<title>
When a listener from window A is added to an event target in window B via the
addEventListener function from window A, errors in that listener should be
reported to window A.
</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<iframe></iframe>
<iframe></iframe>
<script>
test(function() {
var f = new frames[0].Function("thereIsNoSuchCallable()");
frames[0].document.addEventListener.call(frames[1].document, "myevent", f);
var frame0ErrorFired = false;
var frame1ErrorFired = false;
var ourErrorFired = false;
frames[0].addEventListener("error", function() {
frame0ErrorFired = true;
});
frames[1].addEventListener("error", function() {
frame1ErrorFired = true;
});
addEventListener("error", function() {
ourErrorFired = true;
});
frames[1].document.dispatchEvent(new Event("myevent"));
assert_true(frame0ErrorFired);
assert_false(frame1ErrorFired);
assert_false(ourErrorFired);
}, "The error event from an event listener should fire on that listener's global");
</script>