<!doctype html>
<html>
  <head>
    <title>XMLHttpRequest: open() resolving URLs (multi-Window; 3; evil)</title>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div id="log"></div>
    <script>
      function init() {
        test(function() {
          var client = new self[0].XMLHttpRequest()
          client.open("GET", "folder.txt")
          document.body.removeChild(document.getElementsByTagName("iframe")[0])
          assert_throws("InvalidStateError", function() {
            client.send(null)
          }, "send() when associated document's IFRAME is removed")
        })
      }
    </script>
    <iframe src="resources/init.htm"></iframe>
 </body>
</html>
