blob: 3c7aef01ae9d50a52c9b11e52b0e2a048ca448e0 [file] [log] [blame]
<!doctype html>
<html>
<body>
<pre id='consoleElement'></pre>
<script type="text/javascript">
function log(message) {
consoleElement.appendChild(document.createTextNode(message + "\n"));
}
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
(function() {
var xhr = new XMLHttpRequest;
var errorCalled = false;
xhr.onerror = function() {
errorCalled = true;
xhr.timeout = 1;
// To ensure xhr.ontimeout is not called, we asynchronously record whether
// the test passes.
setTimeout(function() {
log("PASS: Timeout override did not reactivate timer after failure");
if (window.testRunner)
testRunner.notifyDone();
}, 50);
};
xhr.ontimeout = function() {
// This test should never time out. There are two failure modes depending on
// whether xhr.onerror was called or not.
if (errorCalled)
log("FAIL: Timeout override reactivated the timer.");
else
log("FAIL: Request timed out but should have failed due to origin restrictions.");
if (window.testRunner)
testRunner.notifyDone();
}
xhr.open("GET", "http://localhost:8000/xmlhttprequest/resources/access-control-basic-denied.cgi");
xhr.timeout = 500;
xhr.send();
})();
</script>
</body>
</html>