Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /cors/script-304.html - WPT Dashboard Interop Dashboard
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/common/get-host-info.sub.js"></script>
<script src="/common/utils.js"></script>
</head>
<body>
<div id="testDiv"></div>
<script>
const scriptURL = get_host_info().HTTP_REMOTE_ORIGIN + "/cors/resources/cache-304.py?" + token();
function loadScript(test)
{
const script = document.createElement("script");
script.crossOrigin = "anonymous";
script.src = scriptURL;
return new Promise((resolve, reject) => {
// Let's add a small timeout so that the script is fully loaded in memory cache before reloading it.
script.onload = test.step_timeout(resolve, 50);
script.onerror = reject;
testDiv.appendChild(script);
});
}
promise_test((test) => {
return loadScript(test);
}, "Load a fresh cross-origin script");
promise_test((test) => {
return loadScript(test);
}, "Reload same cross-origin script from the memory cache after revalidation");
</script>
</body>
</html>