<!doctype html>
<meta charset="utf-8">
<title>Check that sandboxed iframe can not navigate their ancestors</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
  var t = async_test();
  var pop_state_count = 0;
  onpopstate = t.step_func((e) => {
    pop_state_count++;
    if (pop_state_count == 1) {
      // Should not generate a pop state
      frames[0].postMessage('forward', '*');
      t.step_timeout(() => {
        t.done();
      }, 1000);
    } else if (pop_state_count > 1) {
      assert_unreached('no pop state');
    }
  });

  function doNavigation() {
    history.pushState( {state: "one past"}, 'page 2', '');
    // Should generate a pop state
    history.back();
  }
</script>
<iframe id="child_frame" sandbox="allow-scripts" src="support/iframe-tried-to-be-navigated-by-history.html" onload="doNavigation();"></iframe>
