Blame dom/base/test/test_bug313646.html

Packit f0b94e
Packit f0b94e
<html>
Packit f0b94e
Packit f0b94e
https://bugzilla.mozilla.org/show_bug.cgi?id=313646
Packit f0b94e
-->
Packit f0b94e
<head>
Packit f0b94e
  <title>Test for Bug 313646</title>
Packit f0b94e
  <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>        
Packit f0b94e
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
Packit f0b94e
</head>
Packit f0b94e
<body>
Packit f0b94e
Mozilla Bug 313646
Packit f0b94e

Packit f0b94e
Packit f0b94e
  
Packit f0b94e
Packit f0b94e
Packit f0b94e
<script class="testbody" type="text/javascript">
Packit f0b94e
Packit f0b94e
/** Test for Bug 313646 **/
Packit f0b94e
Packit f0b94e
// dom/base/test/bug313646.txt
Packit f0b94e
Packit f0b94e
SimpleTest.waitForExplicitFinish();
Packit f0b94e
Packit f0b94e
var count1 = 0;
Packit f0b94e
var count2 = 0;
Packit f0b94e
var count3 = 0;
Packit f0b94e
var count4 = 0;
Packit f0b94e
var innerXHRDone = 0;
Packit f0b94e
var req = new XMLHttpRequest();
Packit f0b94e
req.onreadystatechange = function(evt) {
Packit f0b94e
  ++window["count" + evt.target.readyState];
Packit f0b94e
Packit f0b94e
  // Do something a bit evil, start a new sync XHR in
Packit f0b94e
  // readyStateChange listener.
Packit f0b94e
  var innerXHR = new XMLHttpRequest();
Packit f0b94e
  innerXHR.onreadystatechange = function(e) {
Packit f0b94e
    if (e.target.readyState == 4) {
Packit f0b94e
      ++innerXHRDone;
Packit f0b94e
    }
Packit f0b94e
  }
Packit f0b94e
  innerXHR.open("GET","bug313646.txt", false);
Packit f0b94e
  innerXHR.send();
Packit f0b94e
}
Packit f0b94e
Packit f0b94e
// make the synchronous request
Packit f0b94e
req.open("GET","bug313646.txt", false);
Packit f0b94e
req.send();
Packit f0b94e
Packit f0b94e
ok(count1, "XMLHttpRequest wasn't in state 1");
Packit f0b94e
is(count2, 0, "XMLHttpRequest shouldn't have been in state 2");
Packit f0b94e
is(count3, 0, "XMLHttpRequest shouldn't have been in state 3");
Packit f0b94e
ok(count4, "XMLHttpRequest wasn't in state 4");
Packit f0b94e
is(innerXHRDone, 2, "There should have been 2 inner XHRs.");
Packit f0b94e
Packit f0b94e
SimpleTest.finish();
Packit f0b94e
Packit f0b94e
</script>
Packit f0b94e
Packit f0b94e
</body>
Packit f0b94e
</html>