gecko-dev/dom/xhr/tests/test_html_in_xhr.html
Andrea Marchesini c7264cb3ac Bug 1269162 - part 3 - Move XHR code into dom/xhr, r=smaug
--HG--
rename : dom/workers/XMLHttpRequestUploadWorker.cpp => dom/xhr/XMLHttpRequestUploadWorker.cpp
rename : dom/workers/XMLHttpRequestUploadWorker.h => dom/xhr/XMLHttpRequestUploadWorker.h
rename : dom/workers/XMLHttpRequestWorker.cpp => dom/xhr/XMLHttpRequestWorker.cpp
rename : dom/workers/XMLHttpRequestWorker.h => dom/xhr/XMLHttpRequestWorker.h
rename : dom/base/nsIXMLHttpRequest.idl => dom/xhr/nsIXMLHttpRequest.idl
rename : dom/base/nsXMLHttpRequest.cpp => dom/xhr/nsXMLHttpRequest.cpp
rename : dom/base/nsXMLHttpRequest.h => dom/xhr/nsXMLHttpRequest.h
rename : dom/base/test/echo.sjs => dom/xhr/tests/echo.sjs
rename : dom/base/test/file_XHRDocURI.html => dom/xhr/tests/file_XHRDocURI.html
rename : dom/base/test/file_XHRDocURI.html^headers^ => dom/xhr/tests/file_XHRDocURI.html^headers^
rename : dom/base/test/file_XHRDocURI.sjs => dom/xhr/tests/file_XHRDocURI.sjs
rename : dom/base/test/file_XHRDocURI.text => dom/xhr/tests/file_XHRDocURI.text
rename : dom/base/test/file_XHRDocURI.text^headers^ => dom/xhr/tests/file_XHRDocURI.text^headers^
rename : dom/base/test/file_XHRDocURI.xml => dom/xhr/tests/file_XHRDocURI.xml
rename : dom/base/test/file_XHRDocURI.xml^headers^ => dom/xhr/tests/file_XHRDocURI.xml^headers^
rename : dom/base/test/file_XHRResponseURL.js => dom/xhr/tests/file_XHRResponseURL.js
rename : dom/base/test/file_XHRResponseURL.sjs => dom/xhr/tests/file_XHRResponseURL.sjs
rename : dom/base/test/file_XHRResponseURL.text => dom/xhr/tests/file_XHRResponseURL.text
rename : dom/base/test/file_XHRResponseURL.text^headers^ => dom/xhr/tests/file_XHRResponseURL.text^headers^
rename : dom/base/test/file_XHRResponseURL_nocors.text => dom/xhr/tests/file_XHRResponseURL_nocors.text
rename : dom/base/test/file_XHRSendData.sjs => dom/xhr/tests/file_XHRSendData.sjs
rename : dom/base/test/file_XHRSendData_doc.xml => dom/xhr/tests/file_XHRSendData_doc.xml
rename : dom/base/test/file_XHRSendData_doc.xml^headers^ => dom/xhr/tests/file_XHRSendData_doc.xml^headers^
rename : dom/base/test/file_XHR_anon.sjs => dom/xhr/tests/file_XHR_anon.sjs
rename : dom/base/test/file_XHR_binary1.bin => dom/xhr/tests/file_XHR_binary1.bin
rename : dom/base/test/file_XHR_binary1.bin^headers^ => dom/xhr/tests/file_XHR_binary1.bin^headers^
rename : dom/base/test/file_XHR_binary2.bin => dom/xhr/tests/file_XHR_binary2.bin
rename : dom/base/test/file_XHR_fail1.txt => dom/xhr/tests/file_XHR_fail1.txt
rename : dom/base/test/file_XHR_fail1.txt^headers^ => dom/xhr/tests/file_XHR_fail1.txt^headers^
rename : dom/base/test/file_XHR_fail1b.txt => dom/xhr/tests/file_XHR_fail1b.txt
rename : dom/base/test/file_XHR_header.sjs => dom/xhr/tests/file_XHR_header.sjs
rename : dom/base/test/file_XHR_pass1.xml => dom/xhr/tests/file_XHR_pass1.xml
rename : dom/base/test/file_XHR_pass2.txt => dom/xhr/tests/file_XHR_pass2.txt
rename : dom/base/test/file_XHR_pass3.txt => dom/xhr/tests/file_XHR_pass3.txt
rename : dom/base/test/file_XHR_pass3.txt^headers^ => dom/xhr/tests/file_XHR_pass3.txt^headers^
rename : dom/base/test/file_XHR_system_redirect.html => dom/xhr/tests/file_XHR_system_redirect.html
rename : dom/base/test/file_XHR_system_redirect.html^headers^ => dom/xhr/tests/file_XHR_system_redirect.html^headers^
rename : dom/base/test/file_XHR_timeout.sjs => dom/xhr/tests/file_XHR_timeout.sjs
rename : dom/base/test/file_html_in_xhr.html => dom/xhr/tests/file_html_in_xhr.html
rename : dom/base/test/file_html_in_xhr.sjs => dom/xhr/tests/file_html_in_xhr.sjs
rename : dom/base/test/file_html_in_xhr2.html => dom/xhr/tests/file_html_in_xhr2.html
rename : dom/base/test/file_html_in_xhr3.html => dom/xhr/tests/file_html_in_xhr3.html
rename : dom/base/test/progressserver.sjs => dom/xhr/tests/progressserver.sjs
rename : dom/workers/test/relativeLoad_import.js => dom/xhr/tests/relativeLoad_import.js
rename : dom/workers/test/relativeLoad_worker.js => dom/xhr/tests/relativeLoad_worker.js
rename : dom/workers/test/relativeLoad_worker2.js => dom/xhr/tests/relativeLoad_worker2.js
rename : dom/base/test/responseIdentical.sjs => dom/xhr/tests/responseIdentical.sjs
rename : dom/workers/test/subdir/relativeLoad_sub_import.js => dom/xhr/tests/subdir/relativeLoad_sub_import.js
rename : dom/workers/test/subdir/relativeLoad_sub_worker.js => dom/xhr/tests/subdir/relativeLoad_sub_worker.js
rename : dom/workers/test/subdir/relativeLoad_sub_worker2.js => dom/xhr/tests/subdir/relativeLoad_sub_worker2.js
rename : dom/workers/test/terminateSyncXHR_worker.js => dom/xhr/tests/terminateSyncXHR_worker.js
rename : dom/base/test/test_XHR.html => dom/xhr/tests/test_XHR.html
rename : dom/base/test/test_XHRDocURI.html => dom/xhr/tests/test_XHRDocURI.html
rename : dom/base/test/test_XHRResponseURL.html => dom/xhr/tests/test_XHRResponseURL.html
rename : dom/base/test/test_XHRSendData.html => dom/xhr/tests/test_XHRSendData.html
rename : dom/base/test/test_XHR_anon.html => dom/xhr/tests/test_XHR_anon.html
rename : dom/base/test/test_XHR_header.html => dom/xhr/tests/test_XHR_header.html
rename : dom/base/test/test_XHR_onuploadprogress.html => dom/xhr/tests/test_XHR_onuploadprogress.html
rename : dom/base/test/test_XHR_parameters.html => dom/xhr/tests/test_XHR_parameters.html
rename : dom/base/test/test_XHR_system.html => dom/xhr/tests/test_XHR_system.html
rename : dom/base/test/test_XHR_timeout.html => dom/xhr/tests/test_XHR_timeout.html
rename : dom/base/test/test_XHR_timeout.js => dom/xhr/tests/test_XHR_timeout.js
rename : dom/base/test/test_html_in_xhr.html => dom/xhr/tests/test_html_in_xhr.html
rename : dom/workers/test/test_relativeLoad.html => dom/xhr/tests/test_relativeLoad.html
rename : dom/base/test/test_sync_xhr_timer.xhtml => dom/xhr/tests/test_sync_xhr_timer.xhtml
rename : dom/workers/test/test_terminateSyncXHR.html => dom/xhr/tests/test_worker_terminateSyncXHR.html
rename : dom/workers/test/test_xhr.html => dom/xhr/tests/test_worker_xhr.html
rename : dom/workers/test/test_xhr2.html => dom/xhr/tests/test_worker_xhr2.html
rename : dom/workers/test/test_xhrAbort.html => dom/xhr/tests/test_worker_xhrAbort.html
rename : dom/workers/test/test_xhr_3rdparty.html => dom/xhr/tests/test_worker_xhr_3rdparty.html
rename : dom/workers/test/test_xhr_cors_redirect.html => dom/xhr/tests/test_worker_xhr_cors_redirect.html
rename : dom/workers/test/test_xhr_headers.html => dom/xhr/tests/test_worker_xhr_headers.html
rename : dom/workers/test/test_xhr_implicit_cancel.html => dom/xhr/tests/test_worker_xhr_implicit_cancel.html
rename : dom/workers/test/test_xhr_parameters.html => dom/xhr/tests/test_worker_xhr_parameters.html
rename : dom/workers/test/test_xhr_parameters.js => dom/xhr/tests/test_worker_xhr_parameters.js
rename : dom/workers/test/test_xhr_responseURL.html => dom/xhr/tests/test_worker_xhr_responseURL.html
rename : dom/workers/test/test_xhr_system.html => dom/xhr/tests/test_worker_xhr_system.html
rename : dom/workers/test/test_xhr_system.js => dom/xhr/tests/test_worker_xhr_system.js
rename : dom/workers/test/test_xhr_timeout.html => dom/xhr/tests/test_worker_xhr_timeout.html
rename : dom/base/test/test_xhr_abort_after_load.html => dom/xhr/tests/test_xhr_abort_after_load.html
rename : dom/base/test/test_xhr_forbidden_headers.html => dom/xhr/tests/test_xhr_forbidden_headers.html
rename : dom/base/test/test_xhr_overridemimetype_throws_on_invalid_state.html => dom/xhr/tests/test_xhr_overridemimetype_throws_on_invalid_state.html
rename : dom/base/test/test_xhr_progressevents.html => dom/xhr/tests/test_xhr_progressevents.html
rename : dom/base/test/test_xhr_send.html => dom/xhr/tests/test_xhr_send.html
rename : dom/base/test/test_xhr_send_readystate.html => dom/xhr/tests/test_xhr_send_readystate.html
rename : dom/base/test/test_xhr_withCredentials.html => dom/xhr/tests/test_xhr_withCredentials.html
rename : dom/workers/test/file_getcookie.sjs => dom/xhr/tests/worker_file_getcookie.sjs
rename : dom/workers/test/terminateSyncXHR_frame.html => dom/xhr/tests/worker_terminateSyncXHR_frame.html
rename : dom/workers/test/testXHR.txt => dom/xhr/tests/worker_testXHR.txt
rename : dom/workers/test/xhr_cors_redirect.js => dom/xhr/tests/worker_xhr_cors_redirect.js
rename : dom/workers/test/xhr_cors_redirect.sjs => dom/xhr/tests/worker_xhr_cors_redirect.sjs
rename : dom/workers/test/xhr_headers_server.sjs => dom/xhr/tests/worker_xhr_headers_server.sjs
rename : dom/workers/test/xhr_headers_worker.js => dom/xhr/tests/worker_xhr_headers_worker.js
rename : dom/workers/test/xhr2_worker.js => dom/xhr/tests/xhr2_worker.js
rename : dom/workers/test/xhrAbort_worker.js => dom/xhr/tests/xhrAbort_worker.js
rename : dom/workers/test/xhr_implicit_cancel_worker.js => dom/xhr/tests/xhr_implicit_cancel_worker.js
rename : dom/workers/test/xhr_worker.js => dom/xhr/tests/xhr_worker.js
2016-06-27 19:13:40 +02:00

114 lines
3.6 KiB
HTML

<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=651072
-->
<head>
<title>Test for Bug 651072</title>
<script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body onload=runTest();>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=651072">Mozilla Bug 651072</a>
<p id="display"></p>
<div id="content" style="display: none">
</div>
<pre id="test">
<script class="testbody" type="text/javascript">
/** Test for Bug 651072 **/
SimpleTest.waitForExplicitFinish();
var xhr = new XMLHttpRequest();
function runTest() {
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
ok(this.responseXML, "Should have gotten responseXML");
is(this.responseXML.characterSet, "windows-1251", "Wrong character encoding");
is(this.responseXML.documentElement.firstChild.data, " \u042E ", "Decoded using the wrong encoding.");
try {
this.responseText;
ok(false, "responseText access should have thrown.");
} catch (e) {
is(e.name, "InvalidStateError", "Should have thrown InvalidStateError.");
is(e.code, 11, "Should have thrown INVALID_STATE_ERR.");
}
is(this.responseXML.getElementsByTagName("div").length, 1, "There should be one div.");
ok(!this.responseXML.documentElement.hasAttribute("data-fail"), "Should not have a data-fail attribute.");
var scripts = this.responseXML.getElementsByTagName("script");
is(scripts.length, 4, "Unexpected number of scripts.");
while (scripts.length) {
// These should not run when moved to another doc
document.body.appendChild(scripts[0]);
}
var s = document.createElement("script");
s.src = "file_html_in_xhr.sjs?report=1";
document.body.appendChild(s);
}
}
xhr.open("GET", "file_html_in_xhr.html", true);
xhr.responseType = "document";
xhr.send();
}
function continueAfterReport() {
xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
is(this.responseText.indexOf("\u042E"), -1, "Honored meta in default mode.");
is(this.responseText.indexOf("\uFFFD"), 29, "Honored meta in default mode 2.");
is(this.responseXML, null, "responseXML should be null for HTML in the default mode");
testNonParsingText();
}
}
xhr.open("GET", "file_html_in_xhr2.html");
xhr.send();
}
function testNonParsingText() {
xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
is(this.responseText.indexOf("\u042E"), -1, "Honored meta in text mode.");
is(this.responseText.indexOf("\uFFFD"), 29, "Honored meta in text mode 2.");
testChunkedText();
}
}
xhr.open("GET", "file_html_in_xhr2.html");
xhr.responseType = "text";
xhr.send();
}
function testChunkedText() {
xhr = new XMLHttpRequest();
xhr.onprogress = function() {
is(this.responseText.indexOf("\u042E"), -1, "Honored meta in chunked text mode.");
}
xhr.onreadystatechange = function() {
if (this.readyState == 4) {
testSyncXHR();
}
}
xhr.open("GET", "file_html_in_xhr2.html");
xhr.responseType = "moz-chunked-text";
xhr.send();
}
function testSyncXHR() {
xhr = new XMLHttpRequest();
xhr.open("GET", "file_html_in_xhr3.html", false);
xhr.send();
is(xhr.responseText, "SUCCESS\n", "responseText should be ready by now");
is(xhr.responseXML, null, "responseXML should be null in the sync case");
SimpleTest.finish();
}
</script>
</pre>
</body>
</html>