content/base/test/test_bug737087.html
author Margaret Leibovic <margaret.leibovic@gmail.com>
Mon, 25 Aug 2014 15:28:10 -0700
changeset 216776 8d7b3bfaf3ab9bb3c32afb51d9714246d7c854f4
parent 94223 f9053a07fb7ac1ac58a13c44e1b06c5a4d8debb9
permissions -rw-r--r--
Bug 996753 - Telemetry probes for settings pages. r=liuche, a=sledru

<!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>