| Index: LayoutTests/http/tests/xmlhttprequest/ontimeout-event-override.html
|
| diff --git a/LayoutTests/http/tests/xmlhttprequest/ontimeout-event.html b/LayoutTests/http/tests/xmlhttprequest/ontimeout-event-override.html
|
| similarity index 50%
|
| copy from LayoutTests/http/tests/xmlhttprequest/ontimeout-event.html
|
| copy to LayoutTests/http/tests/xmlhttprequest/ontimeout-event-override.html
|
| index 23d1e0474ac3999b5604fc2af961b31f098d1761..23e17e8f9930b9958e2e87ff32cca7504af3fb67 100644
|
| --- a/LayoutTests/http/tests/xmlhttprequest/ontimeout-event.html
|
| +++ b/LayoutTests/http/tests/xmlhttprequest/ontimeout-event-override.html
|
| @@ -6,40 +6,36 @@
|
| </head>
|
| <body>
|
| <p> Verify that a timeout ProgressEvent is dispatched and have the expected values.</p>
|
| -<div id="log"></div>
|
| +<div id="logEvent"></div>
|
| <script type="text/javascript">
|
| +var didTimeout = false;
|
|
|
| -function verifyProgressEvent(context, e)
|
| -{
|
| - assert_true(e.loaded >= 0, "Non-zero 'loaded' value for '" + context + "' event.");
|
| - assert_true(!e.lengthComputable || e.total > 0, "Non-zero 'total' value for '" + context + "' event.");
|
| -}
|
| -
|
| -function logProgressEvent(e) {
|
| - results += " " + e.type;
|
| +function timeoutEvent(e) {
|
| + didTimeout = true;
|
| }
|
|
|
| function unexpectedProgressEvent(e) {
|
| - assert_unreached("Unexpected request error");
|
| -}
|
| -
|
| -function timeoutHandler(e)
|
| -{
|
| - assert_true(e instanceof ProgressEvent);
|
| - verifyProgressEvent("ontimeout", e);
|
| - testOnTimeoutEvent.done();
|
| + assert_unreached("'" + e.type + "' event should not be dispatched, expected 'timeout'");
|
| }
|
|
|
| var testOnTimeoutEvent = async_test("Check that 'timeout' events are delivered and have expected values.");
|
| testOnTimeoutEvent.step(function () {
|
| var xhr = new XMLHttpRequest();
|
| - xhr.ontimeout = testOnTimeoutEvent.step_func(timeoutHandler);
|
| + xhr.ontimeout = testOnTimeoutEvent.step_func(timeoutEvent);
|
| xhr.onabort = testOnTimeoutEvent.step_func(unexpectedProgressEvent);
|
| xhr.onerror = testOnTimeoutEvent.step_func(unexpectedProgressEvent);
|
| xhr.onload = testOnTimeoutEvent.step_func(unexpectedProgressEvent);
|
| - xhr.timeout = 30;
|
| - xhr.open("GET", "/resources/load-and-stall.php?name=../resources/test.mp4&stallAt=100&stallFor=10000&mimeType=video/mp4", true);
|
| + xhr.onloadend = testOnTimeoutEvent.step_func(function(e) {
|
| + assert_true(didTimeout, "'timeout' event should be dispatched after 400ms");
|
| + testOnTimeoutEvent.done();
|
| + });
|
| + xhr.timeout = 100000;
|
| + xhr.open("GET", "../resources/load-and-stall.php?name=test.mp4&stallAt=0&stallFor=1000&mimeType=video/mp4", true);
|
| xhr.send();
|
| + // Defer overriding timeout
|
| + setTimeout(function() {
|
| + xhr.timeout = 400;
|
| + }, 200);
|
| });
|
| </script>
|
| </body>
|
|
|