diff options
Diffstat (limited to 'tests/wpt/web-platform-tests/mixed-content/generic/common.js')
-rw-r--r-- | tests/wpt/web-platform-tests/mixed-content/generic/common.js | 33 |
1 files changed, 21 insertions, 12 deletions
diff --git a/tests/wpt/web-platform-tests/mixed-content/generic/common.js b/tests/wpt/web-platform-tests/mixed-content/generic/common.js index 36427a4669f..d04aabcfcd2 100644 --- a/tests/wpt/web-platform-tests/mixed-content/generic/common.js +++ b/tests/wpt/web-platform-tests/mixed-content/generic/common.js @@ -50,9 +50,9 @@ function xhrRequest(url, responseType) { xhr.addEventListener("load", function() { if (xhr.status != 200) - return reject(Error(xhr.statusText)); - - resolve(xhr.response); + reject(Error(xhr.statusText)); + else + resolve(xhr.response); }); xhr.send(); @@ -99,7 +99,7 @@ function bindEvents(element, resolveEventName, rejectEventName) { * {@code eventPromise} property. Default value evaluates to false. * @return {DOMElement} The newly created DOM element. */ -function createElement(tagName, attrs, parent, doBindEvents) { +function createElement(tagName, attrs, parentNode, doBindEvents) { var element = document.createElement(tagName); if (doBindEvents) @@ -117,8 +117,8 @@ function createElement(tagName, attrs, parent, doBindEvents) { if (!isImg) setAttributes(element, attrs); - if (parent) - parent.appendChild(element); + if (parentNode) + parentNode.appendChild(element); if (isImg) setAttributes(element, attrs); @@ -126,8 +126,8 @@ function createElement(tagName, attrs, parent, doBindEvents) { return element; } -function createRequestViaElement(tagName, attrs, parent) { - return createElement(tagName, attrs, parent, true).eventPromise; +function createRequestViaElement(tagName, attrs, parentNode) { + return createElement(tagName, attrs, parentNode, true).eventPromise; } /** @@ -189,7 +189,12 @@ function requestViaFetch(url) { * @return {Promise} The promise for success/error events. */ function requestViaWorker(url) { - var worker = new Worker(url); + var worker; + try { + worker = new Worker(url); + } catch (e) { + return Promise.reject(e); + } bindEvents(worker, "message", "error"); worker.postMessage(''); @@ -304,16 +309,20 @@ function requestViaLinkPrefetch(url) { */ function createMediaElement(type, media_attrs, source_attrs) { var mediaElement = createElement(type, {}); - var sourceElement = createElement("source", {}, mediaElement); + + var sourceElement = createElement("source", {}); mediaElement.eventPromise = new Promise(function(resolve, reject) { mediaElement.addEventListener("loadeddata", resolve); + // Notice that the source element will raise the error. sourceElement.addEventListener("error", reject); }); setAttributes(mediaElement, media_attrs); setAttributes(sourceElement, source_attrs); + + mediaElement.appendChild(sourceElement); document.body.appendChild(mediaElement); return mediaElement; @@ -328,7 +337,7 @@ function createMediaElement(type, media_attrs, source_attrs) { function requestViaVideo(url) { return createMediaElement("video", {}, - {type: "video/mp4", src: url}).eventPromise; + {type: "video/ogg", src: url}).eventPromise; } /** @@ -340,7 +349,7 @@ function requestViaVideo(url) { function requestViaAudio(url) { return createMediaElement("audio", {}, - {type: "audio/mpeg", src: url}).eventPromise; + {type: "audio/wav", src: url}).eventPromise; } /** |