Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(123)

Unified Diff: LayoutTests/http/tests/xmlhttprequest/response-document.html

Issue 675453002: Add tests to check XHR with responseType set to document (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/http/tests/xmlhttprequest/response-document.html
diff --git a/LayoutTests/http/tests/xmlhttprequest/resources/response-text.js b/LayoutTests/http/tests/xmlhttprequest/response-document.html
similarity index 54%
copy from LayoutTests/http/tests/xmlhttprequest/resources/response-text.js
copy to LayoutTests/http/tests/xmlhttprequest/response-document.html
index 216765a0e5f0e4cff25a95e1bc9168adbd9e29ef..d3f0e3426ec32398dcaa98f2b819c5ae677e15d0 100644
--- a/LayoutTests/http/tests/xmlhttprequest/resources/response-text.js
+++ b/LayoutTests/http/tests/xmlhttprequest/response-document.html
@@ -1,3 +1,10 @@
+<!DOCTYPE html>
+<script src="/js-test-resources/js-test.js"></script>
+<script>
+
+description("Request a file as the document type with asynchronous XMLHttpRequest in a document context.");
+window.jsTestIsAsync = true;
+
var global = window;
function rejectIfThrown(func, reject) {
@@ -12,60 +19,71 @@ function rejectIfThrown(func, reject) {
new Promise(function(resolve, reject) {
global.req = new XMLHttpRequest;
- req.responseType = 'text';
- req.open('GET', 'resources/get.txt', true);
+ req.responseType = 'document';
+ req.open('GET', 'resources/test.html', true);
req.onreadystatechange = rejectIfThrown(function() {
if (req.readyState != req.DONE) {
return;
}
shouldBe('req.status', '200');
- shouldBeEqualToString('req.response', 'PASS');
+ shouldBeNonNull('req.response');
+ global.result = req.response.querySelector('p').innerText;
+ shouldBeEqualToString('result', 'PASS');
+
resolve();
}, reject);
req.send(null);
}).catch(function(r) {
- testFailed('Set responseType before open(): Failed: ' + r);
+ testFailed('Set responseType to document before open(): Failed: ' + r);
}).then(function() {
return new Promise(function(resolve, reject)
{
global.req = new XMLHttpRequest;
req.responseType = 'blob';
- req.open('GET', 'resources/get.txt', true);
+ req.open('GET', 'resources/test.html', true);
req.onreadystatechange = rejectIfThrown(function() {
if (req.readyState != req.DONE) {
return;
}
shouldBe('req.status', '200');
- shouldBeEqualToString('req.response', 'PASS');
+ shouldBeNonNull('req.response');
+ global.result = req.response.querySelector('p').innerText;
+ shouldBeEqualToString('result', 'PASS');
+
resolve();
}, reject);
- req.responseType = 'text';
+ req.responseType = 'document';
req.send(null);
});
}).catch(function(r) {
- testFailed('Change responseType from blob to text between open() and send(): Failed: ' + r);
+ testFailed('Change responseType from blob to document between open() and send(): Failed: ' + r);
}).then(function() {
return new Promise(function(resolve, reject)
{
global.req = new XMLHttpRequest;
req.responseType = 'blob';
- req.open('GET', 'resources/get.txt', true);
+ req.open('GET', 'resources/test.html', true);
req.onreadystatechange = rejectIfThrown(function() {
if (req.readyState == req.HEADERS_RECEIVED) {
- req.responseType = 'text';
+ req.responseType = 'document';
return;
} else if (req.readyState != req.DONE) {
return;
}
shouldBe('req.status', '200');
- shouldBeEqualToString('req.response', 'PASS');
+ shouldBeNonNull('req.response');
+ global.result = req.response.querySelector('p').innerText;
+ shouldBeEqualToString('result', 'PASS');
+
resolve();
}, reject);
req.send(null);
});
}).catch(function(r) {
- testFailed('Change responseType from blob to text in HEADERS_RECEIVED: Failed: ' + r);
+ testFailed('Change responseType from blob to document in HEADERS_RECEIVED: Failed: ' + r);
}).then(finishJSTest, finishJSTest);
+
+</script>

Powered by Google App Engine
This is Rietveld 408576698