<!doctype html>
<meta charset=utf-8>
<title>Script src with an empty URL</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id=log></div>
<script>
// For a better error message in case the UA tries to load "" (which resolves
// to this document).
setup({
  "allow_uncaught_exception": true,
});
async_test(function(t) {
  window.onerror = this.unreached_func("Should not get an error reported to " +
                                       "the window before the script");
  var queued = false;
  var script = document.createElement("script");
  script.onerror = this.step_func_done(function(ev) {
    assert_equals(ev.type, "error");
    assert_false(ev.bubbles, "bubbles");
    assert_false(ev.cancelable, "cancelable");
    assert_true(ev.isTrusted, "isTrusted");
    assert_equals(ev.target, script);
    assert_true(ev instanceof Event, "instanceof Event");
    assert_class_string(ev, "Event");
    assert_true(queued, "event should not be dispatched synchronously");
  });
  script.setAttribute("src", "");
  document.body.appendChild(script);
  queued = true;
});
</script>
