<body>
<script>
onload = function() {
  if (window.testRunner)
  {
      testRunner.dumpAsText();
      testRunner.waitUntilDone();
  }
}

wentBack = false;

function onFrameLoaded()
{
    wentBack = true;
    history.back();
    document.getElementById('result').innerText = 'PASS';
    if (window.testRunner)
        testRunner.notifyDone();      
}
</script>
<iframe src="resources/history-back-within-subframe-url-2.html"></iframe>
<div id="result">FAIL</div>
</body>
