<html>
<head>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.dumpChildFrames();
    testRunner.waitUntilDone();
}

window.onload = function() {
  document.getElementById("f").src = 'data:text/html,\
  <form action="http://127.0.0.1:8000/security/originHeader/resources/print-origin.cgi"\
        method="POST">\
  </form>\
  <script>document.forms[0].submit();</scr' + 'ipt>';
}
</script>
</head>
<body>
<iframe id="f" name="frame-with-data-url"></iframe>
</body>
</html>
