2 <script src=
"/js-test-resources/js-test.js"></script>
6 var numberOfDocumentsBefore
, numberOfDocumentsAfter
;
7 function checkDocumentLeakAndFinishTest() {
8 numberOfDocumentsAfter
= internals
.numberOfLiveDocuments();
9 shouldBe("numberOfDocumentsAfter", "numberOfDocumentsBefore");
14 numberOfDocumentsBefore
= internals
.numberOfLiveDocuments();
16 var xhr
= new XMLHttpRequest();
17 xhr
.responseType
= 'document';
18 xhr
.overrideMimeType("text/html");
19 xhr
.onreadystatechange = function () {
20 if (this.readyState
== XMLHttpRequest
.HEADERS_RECEIVED
) {
21 testPassed("this reached HEADERS_RECEIVED state.");
23 asyncGC(checkDocumentLeakAndFinishTest
);
24 } else if (this.readyState
== XMLHttpRequest
.LOADING
) {
25 testFailed("this reached LOADING state, but it should not reach here after abort().");
26 } else if (this.readyState
== XMLHttpRequest
.DONE
) {
27 testPassed("this reached DONE state.");
31 xhr
.open("GET", "resources/get.txt", true);
36 // run GC before test to avoid document count being flaky.