Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /xhr/overridemimetype-invalid-mime-type.htm - WPT Dashboard Interop Dashboard
<!doctype html>
<title>XMLHttpRequest: overrideMimeType() and invalid MIME types</title>
<meta charset="utf-8">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<script>
async_test(t => {
const client = new XMLHttpRequest()
client.onload = t.step_func_done(() => {
assert_equals(client.responseText, "ÿ")
assert_equals(client.getResponseHeader("Content-Type"), "text/html;charset=windows-1252")
})
client.open("GET", "resources/status.py?type=" + encodeURIComponent("text/html;charset=windows-1252") + "&content=%FF")
client.overrideMimeType("bogus")
client.send()
}, "Bogus MIME type does not override encoding")
async_test(t => {
const client = new XMLHttpRequest()
client.onload = t.step_func_done(() => {
assert_equals(client.responseText, "ÿ")
assert_equals(client.getResponseHeader("Content-Type"), "text/html;charset=windows-1252")
})
client.open("GET", "resources/status.py?type=" + encodeURIComponent("text/html;charset=windows-1252") + "&content=%FF")
client.overrideMimeType("bogus;charset=Shift_JIS")
client.send()
}, "Bogus MIME type does not override encoding, 2")
async_test(t => {
const client = new XMLHttpRequest()
client.onload = t.step_func_done(() => {
assert_equals(client.responseXML, null)
assert_equals(client.getResponseHeader("Content-Type"), "text/xml")
})
client.open("GET", "resources/status.py?type=" + encodeURIComponent("text/xml") + "&content=" + encodeURIComponent("<x/>"))
client.overrideMimeType("bogus")
client.send()
}, "Bogus MIME type does override MIME type")
</script>