Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test has a WPT meta file that expects 1 subtest issues.
- This WPT test may be referenced by the following Test IDs:
- /html/semantics/scripting-1/the-script-element/text-module/credentials.sub.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<meta charset="utf-8">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
document.cookie = 'milk=1';
const setCookiePromise = fetch(
{
mode: 'no-cors',
credentials: 'include',
});
const windowLoadPromise = new Promise(resolve => {
window.addEventListener('load', () => {
resolve();
});
});
promise_test(t => {
const iframe = document.createElement('iframe');
return Promise.all([setCookiePromise, windowLoadPromise]).then(() => {
const messagePromise = new Promise(resolve => {
window.addEventListener('message', event => {
resolve();
});
});
iframe.src = 'credentials-iframe.sub.html';
document.body.appendChild(iframe);
return messagePromise;
}).then(() => {
const w = iframe.contentWindow;
assert_equals(w.sameOriginNoneDescendant, 'request had cookies',
'Descendant text modules should be loaded with the credentials when the crossOrigin attribute is not specified and the target is same-origin');
assert_equals(w.sameOriginAnonymousDescendant, 'request had cookies',
'Descendant text modules should be loaded with the credentials when the crossOrigin attribute is specified with "anonymous" as its value and the target is same-origin');
assert_equals(w.sameOriginUseCredentialsDescendant, 'request had cookies',
'Descendant text modules should be loaded with the credentials when the crossOrigin attribute is specified with "use-credentials" as its value and the target is same-origin');
assert_equals(w.crossOriginNoneDescendant, 'request did not have cookies',
'Descendant text modules should not be loaded with the credentials when the crossOrigin attribute is not specified and the target is cross-origin');
assert_equals(w.crossOriginAnonymousDescendant, 'request did not have cookies',
'Descendant text modules should not be loaded with the credentials when the crossOrigin attribute is specified with "anonymous" as its value and the target is cross-origin');
assert_equals(w.crossOriginUseCredentialsDescendant, 'request had cookies',
'Descendant text modules should be loaded with the credentials when the crossOrigin attribute is specified with "use-credentials" as its value and the target is cross-origin');
});
}, 'Text Modules should be loaded with or without the credentials based on the same-origin-ness and the crossOrigin attribute');
</script>
<body>
</body>