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

Unified Diff: LayoutTests/http/tests/xmlhttprequest/post-blob-content-type-async.html

Issue 57483002: Implement File constructor. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Addressed most feedback. Created 7 years, 1 month 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/post-blob-content-type-async.html
diff --git a/LayoutTests/http/tests/xmlhttprequest/post-blob-content-type-async.html b/LayoutTests/http/tests/xmlhttprequest/post-blob-content-type-async.html
index 1315f3e5a11a958875b88c619aa228c54a66b70d..1dc1fb0513ed747b665b606d24256eb6157e14fa 100644
--- a/LayoutTests/http/tests/xmlhttprequest/post-blob-content-type-async.html
+++ b/LayoutTests/http/tests/xmlhttprequest/post-blob-content-type-async.html
@@ -1,73 +1,78 @@
<!DOCTYPE html>
-<html>
-<head>
- <script src="/js-test-resources/js-test.js"></script>
-</head>
-<body>
- <script src="post-blob-content-type-tests.js"></script>
- <script type="text/javascript">
- description("Test verifies that content MIME type is set correctly " +
- "when Blob is sent using " +
- "<a href='http://www.w3.org/TR/XMLHttpRequest/#the-send-method'>XMLHttpRequest asynchronously.</a>");
- var xhr;
- var expectedMimeType;
- window.jsTestIsAsync = true;
- var asyncTestCase = 0;
+<script src="/js-test-resources/js-test.js"></script>
+<script src="post-blob-content-type-tests.js"></script>
+<script type="text/javascript">
+ description("Test verifies that content MIME type is set correctly " +
+ "when Blob is sent using " +
+ "<a href='http://www.w3.org/TR/XMLHttpRequest/#the-send-method'>XMLHttpRequest asynchronously.</a>");
- function runNextAsyncTest() {
- asyncTestCase++;
- runAsyncTests();
- }
+ var xhr;
+ var expectedMimeType;
+ window.jsTestIsAsync = true;
+ var asyncTestCase = 0;
- function reportResult(e) {
- if (xhr.status === 200) {
- expectedMimeType = JSON.parse(xhr.response)['content-type'] || "";
- shouldBeEqualToString("expectedMimeType", xhrBlobTestCases[asyncTestCase].expectedMime);
- } else if (xhr.status === 0 && xhrBlobTestCases[asyncTestCase].shouldThrow){
- testPassed("Cross-origin request without CORS headers should fail.");
- } else {
- testFailed("Unknown error");
- }
+ function runNextAsyncTest() {
+ asyncTestCase++;
+ runAsyncTests();
+ }
- runNextAsyncTest();
- }
+ function reportResult(e) {
+ var testCase = xhrBlobTestCases[asyncTestCase];
+ if (xhr.status === 200) {
+ postedMimeType = JSON.parse(xhr.response)['content-type'] || "";
+ shouldBeEqualToString("postedMimeType", testCase.expectedMime);
+ } else if (xhr.status === 0 && testCase.shouldThrow){
+ testPassed("Cross-origin request without CORS headers should fail.");
+ } else {
+ testFailed("Unknown error");
+ }
- function runAsyncTests() {
- if (asyncTestCase >= xhrBlobTestCases.length) {
- finishJSTest();
- return;
- } else {
- var mime = xhrBlobTestCases[asyncTestCase].mime;
- var url = xhrBlobTestCases[asyncTestCase].url !== undefined ? xhrBlobTestCases[asyncTestCase].url + xhrBlobTestUrl : xhrBlobTestUrl;
- url += xhrBlobTestCases[asyncTestCase].allowOrigin || "";
- if (xhrBlobTestCases[asyncTestCase].shouldThrow !== undefined) {
- try {
- testBlobContentTypeAsync(url, mime);
- } catch (e) {
- testPassed("Exception should be thrown.")
- runNextAsyncTest();
- }
- } else
- testBlobContentTypeAsync(url, mime);
- }
- }
+ runNextAsyncTest();
+ }
- function testBlobContentTypeAsync(url, mimeType) {
- var blob;
- if (mimeType !== "")
- blob = new Blob(["Test content"], {type: mimeType});
- else
- blob = new Blob(["Test content"]);
+ function runAsyncTests() {
+ if (asyncTestCase >= xhrBlobTestCases.length) {
+ finishJSTest();
+ return;
+ } else {
+ var testCase = xhrBlobTestCases[asyncTestCase];
+ var mime = testCase.mime;
+ var file = testCase.file;
+ var url = testCase.url !== undefined ? testCase.url + xhrBlobTestUrl : xhrBlobTestUrl;
+ url += testCase.allowOrigin || "";
+ if (testCase.shouldThrow !== undefined) {
+ try {
+ testBlobContentTypeAsync(url, mime, file);
+ } catch (e) {
+ testPassed("Exception should be thrown.")
+ runNextAsyncTest();
+ }
+ } else
+ testBlobContentTypeAsync(url, mime);
+ }
+ }
- xhr = new XMLHttpRequest();
- xhr.onloadend = reportResult;
- xhr.open("POST", url, true);
- xhr.send(blob);
- }
+ function testBlobContentTypeAsync(url, mimeType, fileName) {
+ var blob;
+ if (fileName) {
+ if (mimeType !== "")
+ blob = new File(["Test content"], fileName, {type: mimeType});
+ else
+ blob = new File(["Test content"], fileName);
+ } else {
+ if (mimeType !== "")
+ blob = new Blob(["Test content"], {type: mimeType});
+ else
+ blob = new Blob(["Test content"]);
+ }
- runAsyncTests();
+ xhr = new XMLHttpRequest();
+ xhr.onloadend = reportResult;
+ xhr.open("POST", url, true);
+ xhr.send(blob);
+ }
- </script>
-</body>
-</html>
+ runAsyncTests();
+
+</script>

Powered by Google App Engine
This is Rietveld 408576698