<body>
<p>This test passes if the module script loads correctly.</p>
<pre></pre>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

function done(msg) {
    document.querySelector("pre").innerHTML = msg;
    if (window.testRunner)
        testRunner.notifyDone();
}

var script = document.createElement("script");
script.type = "module";
script.crossOrigin = "use-credentials";
script.src = "http://localhost:8000/security/resources/cors-script.py?credentials=true";
script.onload = function() { done("PASS"); }
script.onerror = function() { done("FAIL");}
document.body.appendChild(script);
</script>
