diff options
Diffstat (limited to 'dom/base/test/test_bug737087.html')
-rw-r--r-- | dom/base/test/test_bug737087.html | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/dom/base/test/test_bug737087.html b/dom/base/test/test_bug737087.html new file mode 100644 index 0000000000..008ad3bc03 --- /dev/null +++ b/dom/base/test/test_bug737087.html @@ -0,0 +1,37 @@ +<!DOCTYPE HTML> +<!-- +https://bugzilla.mozilla.org/show_bug.cgi?id=737087 +--> +<title>Test for Bug 737087</title> +<script src="/tests/SimpleTest/SimpleTest.js"></script> +<link rel="stylesheet" href="/tests/SimpleTest/test.css"/> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=737087">Mozilla Bug 737087</a> +<script> + +/** Test for Bug 737087 **/ +SimpleTest.waitForExplicitFinish(); + +var bubbled = false; +var capturedEvent = null; +var inlineFiredEvent = null; + +addEventListener("error", function() { bubbled = true }); +addEventListener("error", function(e) { + capturedEvent = e; + is(typeof e, "object", "Error event must be object"); + is(Object.getPrototypeOf(e), Event.prototype, "Error event must be Event"); + is(e.bubbles, false, "e.bubbles must be false"); + is(e.cancelable, false, "e.cancelable must be false"); +}, true); + +addLoadEvent(function() { + is(bubbled, false, "Error event must not bubble"); + isnot(capturedEvent, null, "Error event must be captured"); + isnot(inlineFiredEvent, null, "Inline error handler must fire"); + is(capturedEvent, inlineFiredEvent, + "Same event must be handled by both handlers"); + SimpleTest.finish(); +}); +</script> +<script src=nonexistent + onerror="inlineFiredEvent = event"></script> |