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.