mirror of
https://github.com/servo/servo.git
synced 2025-09-11 15:38:24 +01:00
Update web-platform-tests to revision 8a2ceb5f18911302b7a5c1cd2791f4ab50ad4326
This commit is contained in:
parent
462c272380
commit
1f531f66ea
5377 changed files with 174916 additions and 84369 deletions
|
@ -8,24 +8,24 @@
|
|||
<link rel=preload href="resources/dummy.js" as=script>
|
||||
<link rel=preload href="resources/dummy.css" as=style>
|
||||
<link rel=preload href="resources/square.png" as=image>
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="/media/white.mp4" as=video>
|
||||
<link rel=preload href="/media/sound_5.oga" as=audio>
|
||||
<link rel=preload href="/media/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="resources/white.mp4" as=video>
|
||||
<link rel=preload href="resources/sound_5.oga" as=audio>
|
||||
<link rel=preload href="resources/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/dummy.xml?foo=bar" as=foobarxmlthing>
|
||||
<link rel=preload href="resources/dummy.xml?novalue">
|
||||
<link rel=preload href="resources/dummy.xml" as="fetch">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&download-resources"></script>
|
||||
<script>
|
||||
window.addEventListener("load", t.step_func(function() {
|
||||
verifyPreloadAndRTSupport()
|
||||
verifyNumberOfDownloads("resources/dummy.js", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 1);
|
||||
verifyNumberOfDownloads("/fonts/CanvasTest.ttf", 1);
|
||||
verifyNumberOfDownloads("/media/white.mp4", 1);
|
||||
verifyNumberOfDownloads("/media/sound_5.oga", 1);
|
||||
verifyNumberOfDownloads("/media/foo.vtt", 1);
|
||||
verifyNumberOfDownloads("resources/CanvasTest.ttf", 1);
|
||||
verifyNumberOfDownloads("resources/white.mp4", 1);
|
||||
verifyNumberOfDownloads("resources/sound_5.oga", 1);
|
||||
verifyNumberOfDownloads("resources/foo.vtt", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.xml?foo=bar", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.xml?novalue", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.xml", 1);
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
<!DOCTYPE html>
|
||||
<script nonce="abc" src="/resources/testharness.js"></script>
|
||||
<script nonce="abc" src="/resources/testharnessreport.js"></script>
|
||||
<script nonce="abc" src="/preload/resources/preload_helper.js"></script>
|
||||
<body>
|
||||
<script nonce="abc">
|
||||
|
||||
async_test(function(t) {
|
||||
verifyPreloadAndRTSupport();
|
||||
var link = document.createElement("link");
|
||||
link.as = "script";
|
||||
link.rel = "preload";
|
||||
link.href = "resources/dummy.js?with-nonce";
|
||||
link.nonce = "abc";
|
||||
link.onload = link.onerror = t.step_func(function() {
|
||||
t.step_timeout(function() {
|
||||
verifyNumberOfDownloads("resources/dummy.js?with-nonce", 1);
|
||||
t.done();
|
||||
}, 0);
|
||||
});
|
||||
document.body.appendChild(link);
|
||||
}, "link preload with nonce attribute");
|
||||
|
||||
async_test(function(t) {
|
||||
verifyPreloadAndRTSupport();
|
||||
var link = document.createElement("link");
|
||||
link.as = "script";
|
||||
link.rel = "preload";
|
||||
link.href = "resources/dummy.js?without-nonce";
|
||||
link.onload = link.onerror = t.step_func(function() {
|
||||
t.step_timeout(function() {
|
||||
verifyNumberOfDownloads("resources/dummy.js?without-nonce", 0);
|
||||
t.done();
|
||||
}, 0);
|
||||
});
|
||||
document.body.appendChild(link);
|
||||
}, "link preload without nonce attribute");
|
||||
|
||||
</script>
|
||||
</body>
|
|
@ -0,0 +1 @@
|
|||
Content-Security-Policy: script-src 'nonce-abc'
|
|
@ -12,14 +12,15 @@
|
|||
var link = document.createElement("link");
|
||||
link.as = "script";
|
||||
link.rel = "preload";
|
||||
link.href = "resources/dummy.js";
|
||||
link.href = "resources/dummy.js?dynamic-adding-preload";
|
||||
link.onload = t.step_func(function() {
|
||||
t.step_timeout(function() {
|
||||
verifyNumberOfDownloads("resources/dummy.js", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js?dynamic-adding-preload", 1);
|
||||
t.done();
|
||||
}, 0);
|
||||
});
|
||||
document.body.appendChild(link);
|
||||
});
|
||||
</script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&dynamic-adding-preload"></script>
|
||||
</body>
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
<!DOCTYPE html>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/preload/resources/preload_helper.js"></script>
|
||||
<script>
|
||||
var t = async_test('Makes sure that Link headers on subresources preload resources');
|
||||
</script>
|
||||
<link rel=stylesheet href="resources/dummy-preloads-subresource.css?link-header-on-subresource">
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&link-header-on-subresources"></script>
|
||||
<script>
|
||||
window.addEventListener("load", t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
verifyNumberOfDownloads("/preload/resources/CanvasTest.ttf?link-header-on-subresource", 1);
|
||||
t.done();
|
||||
}));
|
||||
</script>
|
||||
|
|
@ -13,11 +13,11 @@
|
|||
background-image: url(resources/square.png?background);
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="resources/dummy.css">
|
||||
<script src="resources/dummy.js"></script>
|
||||
<link rel="stylesheet" href="resources/dummy.css?link-header-preload-delay-onload">
|
||||
<script src="resources/dummy.js?link-header-preload-delay-onload"></script>
|
||||
<div id="background"></div>
|
||||
<script>
|
||||
document.write('<img src="resources/square.png">');
|
||||
document.write('<img src="resources/square.png?link-header-preload-delay-onload">');
|
||||
window.addEventListener("load", t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
var entries = performance.getEntriesByType("resource");
|
||||
|
@ -31,10 +31,10 @@
|
|||
}
|
||||
}
|
||||
assert_true(found_background_first);
|
||||
verifyNumberOfDownloads("resources/square.png", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?link-header-preload-delay-onload", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?background", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js?link-header-preload-delay-onload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css?link-header-preload-delay-onload", 1);
|
||||
t.done();
|
||||
}));
|
||||
</script>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
Link: </preload/resources/square.png?background>;rel=preload;as=image
|
||||
Link: </preload/resources/dummy.js>;rel=preload;as=script
|
||||
Link: </preload/resources/dummy.css>;rel=preload;as=style
|
||||
Link: </preload/resources/square.png>;rel=preload;as=image
|
||||
Link: </preload/resources/dummy.js?link-header-preload-delay-onload>;rel=preload;as=script
|
||||
Link: </preload/resources/dummy.css?link-header-preload-delay-onload>;rel=preload;as=style
|
||||
Link: </preload/resources/square.png?link-header-preload-delay-onload>;rel=preload;as=image
|
||||
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<script nonce="abc" src="/resources/testharness.js"></script>
|
||||
<script nonce="abc" src="/resources/testharnessreport.js"></script>
|
||||
<script nonce="abc" src="/preload/resources/preload_helper.js"></script>
|
||||
<script nonce="abc">
|
||||
var t = async_test('Makes sure that Link headers preload resources with CSP nonce');
|
||||
</script>
|
||||
<script nonce="abc" src="resources/dummy.js?pipe=trickle(d5)&link-header-preload-nonce"></script>
|
||||
<script nonce="abc">
|
||||
window.addEventListener('load', t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
verifyNumberOfDownloads("resources/dummy.js?without-nonce", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.js?with-nonce", 1);
|
||||
t.done();
|
||||
}));
|
||||
</script>
|
|
@ -0,0 +1,3 @@
|
|||
Content-Security-Policy: script-src 'nonce-abc'
|
||||
Link: </preload/resources/dummy.js?without-nonce>;rel=preload;as=script
|
||||
Link: </preload/resources/dummy.js?with-nonce>;rel=preload;as=script;nonce=abc
|
|
@ -6,13 +6,13 @@
|
|||
var t = async_test('Makes sure that Link headers preload resources');
|
||||
</script>
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&link-header-preload"></script>
|
||||
<script>
|
||||
window.addEventListener("load", t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
verifyNumberOfDownloads("resources/square.png", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?link-header-preload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js?link-header-preload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css?link-header-preload", 1);
|
||||
t.done();
|
||||
}));
|
||||
</script>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Link: </preload/resources/dummy.js>;rel=preload;as=script
|
||||
Link: </preload/resources/dummy.css>;rel=preload;as=style
|
||||
Link: </preload/resources/square.png>;rel=preload;as=image
|
||||
Link: </preload/resources/dummy.js?link-header-preload>;rel=preload;as=script
|
||||
Link: </preload/resources/dummy.css?link-header-preload>;rel=preload;as=style
|
||||
Link: </preload/resources/square.png?link-header-preload>;rel=preload;as=image
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
<link rel=preload href="non-existent/dummy.xml?foo" as=foobarxmlthing onerror="gibberishFailed = true;">
|
||||
<link rel=preload href="non-existent/dummy.xml?fetch" as=fetch onerror="fetchFailed = true;">
|
||||
<link rel=preload href="non-existent/dummy.xml?empty" onerror="emptyFailed = true;">
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&onerror-event"></script>
|
||||
<script>
|
||||
window.onload = t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
|
|
|
@ -19,15 +19,15 @@
|
|||
<link rel=preload href="resources/dummy.js" as=script onload="scriptLoaded = true;">
|
||||
<link rel=preload href="resources/dummy.css" as=style onload="styleLoaded = true;">
|
||||
<link rel=preload href="resources/square.png" as=image onload="imageLoaded = true;">
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font crossorigin onload="fontLoaded = true;">
|
||||
<link rel=preload href="/media/white.mp4" as=video onload="videoLoaded = true;">
|
||||
<link rel=preload href="/media/sound_5.oga" as=audio onload="audioLoaded = true;">
|
||||
<link rel=preload href="/media/foo.vtt" as=track onload="trackLoaded = true;">
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font crossorigin onload="fontLoaded = true;">
|
||||
<link rel=preload href="resources/white.mp4" as=video onload="videoLoaded = true;">
|
||||
<link rel=preload href="resources/sound_5.oga" as=audio onload="audioLoaded = true;">
|
||||
<link rel=preload href="resources/foo.vtt" as=track onload="trackLoaded = true;">
|
||||
<link rel=preload href="resources/dummy.xml?foo=bar" as=foobarxmlthing onload="gibberishLoaded = true;" onerror="gibberishErrored = true;">
|
||||
<link rel=preload href="resources/dummy.xml?fetch" as=fetch onload="fetchLoaded = true;">
|
||||
<link rel=preload href="resources/dummy.xml" onload="noTypeLoaded = true;">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&onload-event"></script>
|
||||
<script>
|
||||
window.onload = t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
|
|
|
@ -9,24 +9,24 @@
|
|||
<link rel=preload href="{{host}}:{{ports[http][1]}}/preload/resources/dummy.js" as=style>
|
||||
<link rel=preload href="resources/dummy.css" as=style>
|
||||
<link rel=preload href="resources/square.png" as=image>
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="/media/white.mp4" as=video>
|
||||
<link rel=preload href="/media/sound_5.oga" as=audio>
|
||||
<link rel=preload href="/media/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="resources/white.mp4" as=video>
|
||||
<link rel=preload href="resources/sound_5.oga" as=audio>
|
||||
<link rel=preload href="resources/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/dummy.xml?foo=bar" as=foobarxmlthing>
|
||||
<link rel=preload href="resources/dummy.xml">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&preload-csp"></script>
|
||||
<script>
|
||||
window.onload = t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
verifyNumberOfDownloads("{{host}}:{{ports[http][1]}}/preload/resources/dummy.js", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 0);
|
||||
verifyNumberOfDownloads("resources/square.png", 0);
|
||||
verifyNumberOfDownloads("/fonts/CanvasTest.ttf", 0);
|
||||
verifyNumberOfDownloads("/media/white.mp4", 0);
|
||||
verifyNumberOfDownloads("/media/sound_5.oga", 0);
|
||||
verifyNumberOfDownloads("/media/foo.vtt", 0);
|
||||
verifyNumberOfDownloads("resources/CanvasTest.ttf", 0);
|
||||
verifyNumberOfDownloads("resources/white.mp4", 0);
|
||||
verifyNumberOfDownloads("resources/sound_5.oga", 0);
|
||||
verifyNumberOfDownloads("resources/foo.vtt", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.xml", 0);
|
||||
t.done();
|
||||
});
|
||||
|
|
|
@ -9,24 +9,24 @@
|
|||
<link rel=preload href="{{host}}:{{ports[http][1]}}/preload/resources/dummy.js" as=style>
|
||||
<link rel=preload href="resources/dummy.css" as=style>
|
||||
<link rel=preload href="resources/square.png" as=image>
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="/media/white.mp4" as=video>
|
||||
<link rel=preload href="/media/sound_5.oga" as=audio>
|
||||
<link rel=preload href="/media/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="resources/white.mp4" as=video>
|
||||
<link rel=preload href="resources/sound_5.oga" as=audio>
|
||||
<link rel=preload href="resources/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/dummy.xml?foo=bar" as=foobarxmlthing>
|
||||
<link rel=preload href="resources/dummy.xml">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&preload-default-csp"></script>
|
||||
<script>
|
||||
window.onload = t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
verifyNumberOfDownloads("{{host}}:{{ports[http][1]}}/preload/resources/dummy.js", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 0);
|
||||
verifyNumberOfDownloads("resources/square.png", 0);
|
||||
verifyNumberOfDownloads("/fonts/CanvasTest.ttf", 0);
|
||||
verifyNumberOfDownloads("/media/white.mp4", 0);
|
||||
verifyNumberOfDownloads("/media/sound_5.oga", 0);
|
||||
verifyNumberOfDownloads("/media/foo.vtt", 0);
|
||||
verifyNumberOfDownloads("resources/CanvasTest.ttf", 0);
|
||||
verifyNumberOfDownloads("resources/white.mp4", 0);
|
||||
verifyNumberOfDownloads("resources/sound_5.oga", 0);
|
||||
verifyNumberOfDownloads("resources/foo.vtt", 0);
|
||||
verifyNumberOfDownloads("resources/dummy.xml", 0);
|
||||
t.done();
|
||||
});
|
||||
|
|
|
@ -23,31 +23,31 @@
|
|||
}
|
||||
return null;
|
||||
};
|
||||
var videoURL = getVideoURI("/media/A4");
|
||||
var audioURL = getAudioURI("/media/sound_5");
|
||||
var videoURL = getVideoURI("resources/A4");
|
||||
var audioURL = getAudioURI("resources/sound_5");
|
||||
var videoFormat = getFormat(videoURL);
|
||||
var audioFormat = getFormat(audioURL);
|
||||
</script>
|
||||
<link rel=preload href="resources/dummy.js" as=script type="text/javascript" onload="scriptLoaded = true;">
|
||||
<link rel=preload href="resources/dummy.css" as=style type="text/css" onload="styleLoaded = true;">
|
||||
<link rel=preload href="resources/square.png" as=image type="image/png" onload="imageLoaded = true;">
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font type="font/ttf" crossorigin onload="fontLoaded = true;">
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font type="font/ttf" crossorigin onload="fontLoaded = true;">
|
||||
<script>
|
||||
document.write('<link rel=preload href="' + videoURL + '" as=video type="video/' + videoFormat + '" onload="videoLoaded = true;">');
|
||||
document.write('<link rel=preload href="' + audioURL + '" as=audio type="audio/' + audioFormat + '" onload="audioLoaded = true;">');
|
||||
</script>
|
||||
<link rel=preload href="/media/foo.vtt" as=track type="text/vtt" onload="trackLoaded = true;">
|
||||
<link rel=preload href="resources/foo.vtt" as=track type="text/vtt" onload="trackLoaded = true;">
|
||||
<link rel=preload href="resources/dummy.js" as=script type="application/foobar" onload="gibberishLoaded++;">
|
||||
<link rel=preload href="resources/dummy.css" as=style type="text/foobar" onload="gibberishLoaded++;">
|
||||
<link rel=preload href="resources/square.png" as=image type="image/foobar" onload="gibberishLoaded++;">
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font type="font/foobar" crossorigin onload="gibberishLoaded++;">
|
||||
<link rel=preload href="resources/CanvasTest.ttf" as=font type="font/foobar" crossorigin onload="gibberishLoaded++;">
|
||||
<script>
|
||||
document.write('<link rel=preload href="' + videoURL + '" as=video type="video/foobar" onload="gibberishLoaded++;">');
|
||||
document.write('<link rel=preload href="' + audioURL + '" as=audio type="audio/foobar" onload="gibberishLoaded++;">');
|
||||
</script>
|
||||
<link rel=preload href="/media/foo.vtt" as=track type="text/foobar" onload="gibberishLoaded++;">
|
||||
<link rel=preload href="resources/foo.vtt" as=track type="text/foobar" onload="gibberishLoaded++;">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d5)&preload-with-type"></script>
|
||||
<script>
|
||||
window.onload = t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
|
|
|
@ -15,6 +15,7 @@ test(function() {
|
|||
"video": "video",
|
||||
"audio": "audio",
|
||||
"track": "track",
|
||||
"fetch": "fetch",
|
||||
};
|
||||
var keys = Object.keys(values);
|
||||
for (var i = 0; i < keys.length; ++i) {
|
||||
|
|
BIN
tests/wpt/web-platform-tests/preload/resources/A4.ogv
Normal file
BIN
tests/wpt/web-platform-tests/preload/resources/A4.ogv
Normal file
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
BIN
tests/wpt/web-platform-tests/preload/resources/CanvasTest.ttf
Normal file
BIN
tests/wpt/web-platform-tests/preload/resources/CanvasTest.ttf
Normal file
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -0,0 +1 @@
|
|||
/* This is just a dummy, empty CSS file */
|
|
@ -0,0 +1,2 @@
|
|||
Cache-Control: max-age=1000
|
||||
Link: </preload/resources/CanvasTest.ttf?link-header-on-subresource>; rel=preload;as=font;crossorigin
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
4
tests/wpt/web-platform-tests/preload/resources/foo.vtt
Normal file
4
tests/wpt/web-platform-tests/preload/resources/foo.vtt
Normal file
|
@ -0,0 +1,4 @@
|
|||
WEBVTT
|
||||
|
||||
00:00:00.000 --> 00:00:05.000
|
||||
Foo
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -12,5 +12,11 @@ function getAbsoluteURL(url)
|
|||
|
||||
function verifyNumberOfDownloads(url, number)
|
||||
{
|
||||
assert_equals(performance.getEntriesByName(getAbsoluteURL(url)).length, number, url);
|
||||
var numDownloads = 0;
|
||||
performance.getEntriesByName(getAbsoluteURL(url)).forEach(entry => {
|
||||
if (entry.transferSize > 0) {
|
||||
numDownloads++;
|
||||
}
|
||||
});
|
||||
assert_equals(numDownloads, number, url);
|
||||
}
|
||||
|
|
BIN
tests/wpt/web-platform-tests/preload/resources/sound_5.oga
Normal file
BIN
tests/wpt/web-platform-tests/preload/resources/sound_5.oga
Normal file
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
BIN
tests/wpt/web-platform-tests/preload/resources/white.mp4
Normal file
BIN
tests/wpt/web-platform-tests/preload/resources/white.mp4
Normal file
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
Cache-Control: max-age=1000
|
|
@ -5,54 +5,54 @@
|
|||
<script>
|
||||
var t = async_test('Makes sure that preloaded resources are not downloaded again when used');
|
||||
</script>
|
||||
<link rel=preload href="resources/dummy.js" as=script>
|
||||
<link rel=preload href="resources/dummy.css" as=style>
|
||||
<link rel=preload href="resources/square.png" as=image>
|
||||
<link rel=preload href="resources/square.png?background" as=image>
|
||||
<link rel=preload href="/fonts/CanvasTest.ttf" as=font crossorigin>
|
||||
<link rel=preload href="/media/white.mp4" as=video>
|
||||
<link rel=preload href="/media/sound_5.oga" as=audio>
|
||||
<link rel=preload href="/media/foo.vtt" as=track>
|
||||
<link rel=preload href="resources/dummy.js?single-download-preload" as=script>
|
||||
<link rel=preload href="resources/dummy.css?single-download-preload" as=style>
|
||||
<link rel=preload href="resources/square.png?single-download-preload" as=image>
|
||||
<link rel=preload href="resources/square.png?background&single-download-preload" as=image>
|
||||
<link rel=preload href="resources/CanvasTest.ttf?single-download-preload" as=font crossorigin>
|
||||
<link rel=preload href="resources/white.mp4?single-download-preload" as=video>
|
||||
<link rel=preload href="resources/sound_5.oga?single-download-preload" as=audio>
|
||||
<link rel=preload href="resources/foo.vtt?single-download-preload" as=track>
|
||||
<link rel=preload href="resources/dummy.xml?foo=bar" as=foobarxmlthing>
|
||||
<link rel=preload href="resources/dummy.xml">
|
||||
<link rel=preload href="resources/dummy.xml?single-download-preload">
|
||||
<body>
|
||||
<script src="resources/dummy.js?pipe=trickle(d3)"></script>
|
||||
<script src="resources/dummy.js?pipe=trickle(d3)&single-download-preload"></script>
|
||||
<style>
|
||||
#background {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
background-image: url(resources/square.png?background);
|
||||
background-image: url(resources/square.png?backgroundi&single-download-preload);
|
||||
}
|
||||
@font-face {
|
||||
font-family:ahem;
|
||||
src: url(/fonts/CanvasTest.ttf);
|
||||
src: url(resources/CanvasTest.ttf?single-download-preload);
|
||||
}
|
||||
span { font-family: ahem, Arial; }
|
||||
</style>
|
||||
<link rel="stylesheet" href="resources/dummy.css">
|
||||
<script src="resources/dummy.js"></script>
|
||||
<link rel="stylesheet" href="resources/dummy.css?single-download-preload">
|
||||
<script src="resources/dummy.js?single-download-preload"></script>
|
||||
<div id="background"></div>
|
||||
<img src="resources/square.png">
|
||||
<video src="/media/white.mp4">
|
||||
<track kind=subtitles src="/media/foo.vtt" srclang=en>
|
||||
<img src="resources/square.png?single-download-preload">
|
||||
<video src="resources/white.mp4?single-download-preload">
|
||||
<track kind=subtitles src="resources/foo.vtt?single-download-preload" srclang=en>
|
||||
</video>
|
||||
<audio src="/media/sound_5.oga"></audio>
|
||||
<audio src="resources/sound_5.oga?single-download-preload"></audio>
|
||||
<script>
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open("GET", "resources/dummy.xml");
|
||||
xhr.open("GET", "resources/dummy.xml?single-download-preload");
|
||||
xhr.send();
|
||||
|
||||
window.addEventListener("load", t.step_func(function() {
|
||||
verifyPreloadAndRTSupport();
|
||||
setTimeout(t.step_func(function() {
|
||||
verifyNumberOfDownloads("resources/dummy.js", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css", 1);
|
||||
verifyNumberOfDownloads("resources/square.png", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?background", 1);
|
||||
verifyNumberOfDownloads("/fonts/CanvasTest.ttf", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.js?single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.css?single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/square.png?background&single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/CanvasTest.ttf?single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.xml?foobar", 0);
|
||||
verifyNumberOfDownloads("/media/foo.vtt", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.xml", 1);
|
||||
verifyNumberOfDownloads("resources/foo.vtt?single-download-preload", 1);
|
||||
verifyNumberOfDownloads("resources/dummy.xml?single-download-preload", 1);
|
||||
// FIXME: We should verify for video and audio as well, but they seem to (flakily?) trigger multiple partial requests.
|
||||
t.done();
|
||||
}), 0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue