Update web-platform-tests to revision 0d318188757a9c996e20b82db201fd04de5aa255

This commit is contained in:
James Graham 2015-03-27 09:15:38 +00:00
parent b2a5225831
commit 1a81b18b9f
12321 changed files with 544385 additions and 6 deletions

View file

@ -0,0 +1,66 @@
<!DOCTYPE html>
<html>
<head>
<!-- This behaviour is not explicitly spelled out in the spec.
It does say "queue tasks" under the "if the synchronous flag is unset" header in point 10 of the "send" algorithm.. -->
<link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following-sibling::ol/li[10]/dl/dd/dl/dd[2]/p[3]" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<title>XMLHttpRequest: sync requests should block events on pending async requests</title>
</head>
<body>
<div id="log"></div>
<script type="text/javascript">
var test = async_test();
var expect = ['sync 4', 'async 2', 'async 3', 'async 4']
var actual = []
test.step(function()
{
var xhr_async = new XMLHttpRequest()
xhr_async.open('GET', 'resources/delay.py?ms=1000', true) // first launch an async request, completes in 1 second
xhr_async.onreadystatechange = function()
{
test.step(function()
{
actual.push('async ' + xhr_async.readyState)
if(xhr_async.readyState === 4 && actual.indexOf('sync 4')>-1){
VerifyResult()
}
});
};
xhr_async.send()
setTimeout(function(){
var xhr_sync = new XMLHttpRequest();
xhr_sync.open('GET', 'resources/delay.py?ms=2000', false) // here's a sync request that will take 2 seconds to finish
xhr_sync.onreadystatechange = function()
{
test.step(function()
{
actual.push('sync ' + xhr_sync.readyState)
if(xhr_sync.readyState === 4 && actual.indexOf('async 4')>-1){
VerifyResult()
}
});
};
xhr_sync.send()
}, 10);
function VerifyResult()
{
test.step(function()
{
assert_array_equals(actual, expect);
test.done();
});
};
});
</script>
</body>
</html>