<!doctype html>
<title>Unregistering event handlers after document.open</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<iframe src="004-1.html"></iframe>
<script>
var t = async_test();
var iframe;
onload = t.step_func(function() {
  var iframe = document.getElementsByTagName("iframe")[0];
  iframe.contentDocument.onclick = t.step_func(function() {assert_unreached()})
  iframe.contentDocument.open();
  var e = iframe.contentDocument.createEvent("mouseevents")
  e.initEvent("click", false, false);
  iframe.contentDocument.dispatchEvent(e);
  setTimeout(function() {t.done();}, 500);
});
</script>
