<!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>
