Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<meta charset="utf-8">
<meta name="assert" content="@crossorigin values are ASCII case-insensitive">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<img crossorigin="use-credentials">
<img crossorigin="UsE-cReDenTiAlS">
<img crossorigin="uſe-credentialſ">
<img crossorigin="anonymous">
<img crossorigin="AnOnYmOuS">
<img crossorigin="anonymouſ">
<script>
const img = document.querySelectorAll("img");
test(() => {
assert_equals(img[0].crossOrigin, "use-credentials", "lowercase valid");
assert_equals(img[1].crossOrigin, "use-credentials", "mixed case valid");
assert_equals(img[2].crossOrigin, "anonymous", "non-ASCII invalid");
}, "keyword use-credentials");
test(() => {
assert_equals(img[3].crossOrigin, "anonymous", "lowercase valid");
// vacuous: the invalid value default is currently anonymous, so even if the
// UA treats this as invalid, the observable behaviour would still be correct
assert_equals(img[4].crossOrigin, "anonymous", "mixed case valid");
// vacuous: the invalid value default is currently anonymous, so even if the
// UA treats this as valid, the observable behaviour would still be correct
assert_equals(img[5].crossOrigin, "anonymous", "non-ASCII invalid");
}, "keyword anonymous");
</script>