blob: ae8cd55dbe5f544ef95efcab044b6d81e75dcf45 [file] [log] [blame]
<!doctype html>
<html>
<body>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
function log(str)
{
document.body.appendChild(document.createTextNode(str));
document.body.appendChild(document.createElement("br"));
}
function addElement(e)
{
var txt = (e && e.type) || "insertedText";
log(txt);
}
document.addEventListener("DOMContentLoaded", addElement, false);
var abortDispatched = false;
function reportResult()
{
log(abortDispatched ? "PASS" : "FAIL");
testRunner.notifyDone();
}
window.onload = function () {
xhr.open("GET", "", true);
setTimeout(reportResult, 100);
};
var xhr = new XMLHttpRequest();
xhr.onabort = function () {
abortDispatched = true;
};
function sendAndAbort()
{
xhr.open("GET", "", true);
xhr.send();
xhr.abort();
}
window.addEventListener("DOMSubtreeModified", sendAndAbort);
addElement();
</script>
Reentrancy, cancellation and explicit abort. Check that we don't crash
and report the expected abort event.<br/>
</body>
</html>