<!doctype html>
<title>Reload document with document.written content written in load event</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
var win = window.open("reload_document_write_onload-1.html");
var t = async_test();

var data = [];

window.onmessage = t.step_func(function(e) {
  data.push(e.data);
  if (data.length < 3) {
    win.location.reload();
  } else {
    setTimeout(t.step_func(function() {
      assert_array_equals(data, ["original", "written", "written"]);
      t.done();
    }), 500);
  }
});

add_completion_callback(function() {win.close()});
</script>

