Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /xhr/event-readystatechange-loaded.any.html - WPT Dashboard Interop Dashboard
- /xhr/event-readystatechange-loaded.any.worker.html - WPT Dashboard Interop Dashboard
// META: title=XMLHttpRequest: the LOADING state change may be emitted multiple times
var test = async_test();
test.step(function () {
var client = new XMLHttpRequest();
var countedLoading = 0;
client.onreadystatechange = test.step_func(function () {
if (client.readyState === 3) {
countedLoading += 1;
}
if (client.readyState === 4) {
assert_greater_than(countedLoading, 1, "LOADING state change may be emitted multiple times");
test.done();
}
});
client.open("GET", "resources/trickle.py?count=10"); // default timeout in trickle.py is 1/2 sec, so this request will take 5 seconds to complete
client.send(null);
});