| const testURL = "resources/status.py?type=" + encodeURIComponent("text/plain;charset=windows-1252") + "&content=%C2%F0"; |
| |
| async_test(t => { |
| const client = new XMLHttpRequest(); |
| client.onload = t.step_func_done(() => { |
| assert_equals(client.responseText, "\uFFFD\uFFFD"); |
| }); |
| client.overrideMimeType("text/plain;charset=UTF-8"); |
| client.open("GET", testURL); |
| client.send(); |
| }, "overrideMimeType() is not reset by open(), basic"); |
| |
| async_test(t => { |
| const client = new XMLHttpRequest(); |
| let secondTime = false; |
| client.onload = t.step_func(() => { |
| if(!secondTime) { |
| assert_equals(client.responseText, "\uFFFD\uFFFD"); |
| secondTime = true; |
| client.open("GET", testURL); |
| client.send(); |
| } else { |
| assert_equals(client.responseText, "\uFFFD\uFFFD"); |
| t.done(); |
| } |
| }); |
| client.open("GET", testURL); |
| client.overrideMimeType("text/plain;charset=UTF-8") |
| client.send(); |
| }, "overrideMimeType() is not reset by open()"); |
| |
| async_test(t => { |
| const client = new XMLHttpRequest(); |
| client.onload = t.step_func_done(() => { |
| assert_equals(client.responseText, "Âð") |
| }); |
| client.open("GET", testURL); |
| client.overrideMimeType("text/xml"); |
| client.send(); |
| }, "If charset is not overridden by overrideMimeType() the original continues to be used"); |
| |
| async_test(t => { |
| const client = new XMLHttpRequest(); |
| client.onload = t.step_func_done(() => { |
| assert_equals(client.responseText, "\uFFFD\uFFFD") |
| }); |
| client.open("GET", testURL); |
| client.overrideMimeType("text/plain;charset=342"); |
| client.send(); |
| }, "Charset can be overridden by overrideMimeType() with a bogus charset"); |