<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
    testRunner.setCanOpenWindows(true);
    testRunner.setCloseRemainingWindowsWhenComplete(true);
}
</script>
<p>To run this test outside of DumpRenderTree, please disable your popup blocker!</p>
<p>If you change this test, please be sure to change popup-allowed-by-sandbox-is-sandboxed-control.html as well!</p>
<p>This test passes if it doesn't alert FAIL.</p>
<iframe sandbox="allow-scripts allow-popups"
  src="data:text/html,
       <script>
       var win = window.open('data:text/html,<form action=javascript:alert(/FAIL/) ><input type=submit></form><script>document.forms[0].submit(); if (window.testRunner) testRunner.notifyDone();<\/script>', '_blank');
       </script>"
  ></iframe>
