owName);
  t.add_cleanup(() => w.close());

  // Wait to get past any initial about:blank
  while (true) {
    if (w.location.href === absoluteStartURL) {
      break;
    }
    await new Promise(r => t.step_timeout(r, 0));
  }

  assert_equals(w.onloadFired, undefined, "onload must not yet have fired");
  assert_equals(w.history.length, 1, "history.length for the opened window must start at 1");

  await new Promise(r => {
    window.addEventListener("message", t.step_func(e => {
      if (e.data === "read