blob: 8b8e92f459dffdefad25455657c2289780501f76 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script src="/js-test-resources/js-test.js"></script>
<script>
document.cookie = "ModuleSecret=42"
window.jsTestIsAsync = true;
function pass(url, messagePrefix)
{
testPassed(`${messagePrefix} with origin ${url}.`);
debug("");
runNextScriptTest();
}
function fail(url, messagePrefix)
{
testFailed(`${messagePrefix} with origin ${url}.`);
debug("");
runNextScriptTest();
}
function done()
{
finishJSTest();
}
let counter = 0;
function runNextScriptTest()
{
var test = scriptTests.shift();
if (!test) {
done();
return;
}
var script = document.createElement("script");
script.type = "module";
if (test.crossOrigin != null)
script.crossOrigin = test.crossOrigin;
var url = test.src + "?source=module-propagate&testId=" + (counter++);
script.onload = () => test.onload(url);
script.onerror = () => test.onerror(url);
script.src = "./resources/module-nest-import.php?url=" + encodeURIComponent(url);
document.getElementById("test-container").appendChild(script);
}
window.onload = runNextScriptTest;
// Tests
const DidLoadScript = "did load script";
const DidNotLoadScript = "did not load script";
var scriptTests = [
{
src: "./cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
},
{
src: "http://127.0.0.1:8000/security/resources/cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
},
{
src: "https://127.0.0.1:8443/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
},
{
src: "http://localhost:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
},
{
src: "./cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "",
},
{
src: "http://127.0.0.1:8000/security/resources/cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "",
},
{
src: "https://127.0.0.1:8443/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "",
},
{
src: "http://localhost:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "",
},
{
src: "./cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "anonymous",
},
{
src: "http://127.0.0.1:8000/security/resources/cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "anonymous",
},
{
src: "https://127.0.0.1:8443/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "anonymous",
},
{
src: "http://localhost:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "anonymous",
},
{
src: "./cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "omit",
},
{
src: "http://127.0.0.1:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "omit",
},
{
src: "https://127.0.0.1:8443/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "omit",
},
{
src: "http://localhost:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "omit",
},
{
src: "./cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "use-credentials",
},
{
src: "http://127.0.0.1:8000/security/resources/cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "use-credentials",
},
{
src: "https://127.0.0.1:8443/security/resources/cookie-protected-script.php",
onload: (url) => pass(url, DidLoadScript),
onerror: (url) => fail(url, DidNotLoadScript),
crossOrigin: "use-credentials",
},
{
src: "http://localhost:8000/security/resources/cookie-protected-script.php",
onload: (url) => fail(url, DidLoadScript),
onerror: (url) => pass(url, DidNotLoadScript),
crossOrigin: "use-credentials",
},
];
</script>
</head>
<body>
<div id="test-container"></div>
</body>
</html>