diff options
234 files changed, 4371 insertions, 970 deletions
diff --git a/tests/wpt/metadata/FileAPI/blob/Blob-constructor.html.ini b/tests/wpt/metadata/FileAPI/blob/Blob-constructor.html.ini index 86ba08df8f3..3b34e8de52e 100644 --- a/tests/wpt/metadata/FileAPI/blob/Blob-constructor.html.ini +++ b/tests/wpt/metadata/FileAPI/blob/Blob-constructor.html.ini @@ -72,3 +72,9 @@ [no-argument Blob constructor without 'new'] expected: FAIL + [A plain object with @@iterator should be treated as a sequence for the blobParts argument.] + expected: FAIL + + [A plain object with @@iterator and a length property should be treated as a sequence for the blobParts argument.] + expected: FAIL + diff --git a/tests/wpt/metadata/FileAPI/file/Worker-read-file-constructor.worker.js.ini b/tests/wpt/metadata/FileAPI/file/Worker-read-file-constructor.worker.js.ini new file mode 100644 index 00000000000..0a9b6879919 --- /dev/null +++ b/tests/wpt/metadata/FileAPI/file/Worker-read-file-constructor.worker.js.ini @@ -0,0 +1,5 @@ +[Worker-read-file-constructor.worker] + type: testharness + [FileReader in Worker] + expected: FAIL + diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 1c1e6a7bd36..996d1204996 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -3246,6 +3246,10 @@ "url": "/uievents/order-of-events/mouse-events/mouseevents-mousemove-manual.htm" }, { + "path": "uievents/order-of-events/mouse-events/mouseover-out-manual.html", + "url": "/uievents/order-of-events/mouse-events/mouseover-out-manual.html" + }, + { "path": "vibration/cancel-when-hidden-manual.html", "url": "/vibration/cancel-when-hidden-manual.html" }, @@ -4906,6 +4910,16 @@ "url": "/html/rendering/non-replaced-elements/tables/table-border-2.html" }, { + "path": "html/rendering/non-replaced-elements/tables/table-cell-width-s.html", + "references": [ + [ + "/html/rendering/non-replaced-elements/tables/table-cell-width-ref.html", + "==" + ] + ], + "url": "/html/rendering/non-replaced-elements/tables/table-cell-width-s.html" + }, + { "path": "html/rendering/non-replaced-elements/tables/table-cell-width.html", "references": [ [ @@ -4936,6 +4950,16 @@ "url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html" }, { + "path": "html/rendering/non-replaced-elements/tables/table-width-s.html", + "references": [ + [ + "/html/rendering/non-replaced-elements/tables/table-width-ref.html", + "==" + ] + ], + "url": "/html/rendering/non-replaced-elements/tables/table-width-s.html" + }, + { "path": "html/rendering/non-replaced-elements/tables/table-width.html", "references": [ [ @@ -11074,6 +11098,14 @@ "url": "/FileAPI/blob/Blob-constructor.html" }, { + "path": "FileAPI/blob/Blob-in-worker.worker.js", + "url": "/FileAPI/blob/Blob-in-worker.worker" + }, + { + "path": "FileAPI/blob/Blob-slice-overflow.html", + "url": "/FileAPI/blob/Blob-slice-overflow.html" + }, + { "path": "FileAPI/blob/Blob-slice.html", "url": "/FileAPI/blob/Blob-slice.html" }, @@ -11082,6 +11114,10 @@ "url": "/FileAPI/file/File-constructor.html" }, { + "path": "FileAPI/file/Worker-read-file-constructor.worker.js", + "url": "/FileAPI/file/Worker-read-file-constructor.worker" + }, + { "path": "FileAPI/fileReader.html", "url": "/FileAPI/fileReader.html" }, @@ -11742,6 +11778,10 @@ "url": "/IndexedDB/idbindex_openKeyCursor4.htm" }, { + "path": "IndexedDB/idbkeyrange-includes.htm", + "url": "/IndexedDB/idbkeyrange-includes.htm" + }, + { "path": "IndexedDB/idbkeyrange.htm", "url": "/IndexedDB/idbkeyrange.htm" }, @@ -12218,6 +12258,10 @@ "url": "/XMLHttpRequest/abort-during-open.htm" }, { + "path": "XMLHttpRequest/abort-during-open.worker.js", + "url": "/XMLHttpRequest/abort-during-open.worker" + }, + { "path": "XMLHttpRequest/abort-during-unsent.htm", "url": "/XMLHttpRequest/abort-during-unsent.htm" }, @@ -12614,6 +12658,10 @@ "url": "/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm" }, { + "path": "XMLHttpRequest/send-authentication-basic-setrequestheader-and-arguments.htm", + "url": "/XMLHttpRequest/send-authentication-basic-setrequestheader-and-arguments.htm" + }, + { "path": "XMLHttpRequest/send-authentication-basic-setrequestheader-existing-session.htm", "url": "/XMLHttpRequest/send-authentication-basic-setrequestheader-existing-session.htm" }, @@ -12634,6 +12682,10 @@ "url": "/XMLHttpRequest/send-authentication-cors-basic-setrequestheader.htm" }, { + "path": "XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm", + "url": "/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm" + }, + { "path": "XMLHttpRequest/send-conditional.htm", "url": "/XMLHttpRequest/send-conditional.htm" }, @@ -12770,6 +12822,10 @@ "url": "/XMLHttpRequest/send-send.htm" }, { + "path": "XMLHttpRequest/send-send.worker.js", + "url": "/XMLHttpRequest/send-send.worker" + }, + { "path": "XMLHttpRequest/send-sync-blocks-async.htm", "url": "/XMLHttpRequest/send-sync-blocks-async.htm" }, @@ -13998,6 +14054,10 @@ "url": "/dom/lists/DOMTokenList-stringifier.html" }, { + "path": "dom/lists/DOMTokenList-value.html", + "url": "/dom/lists/DOMTokenList-value.html" + }, + { "path": "dom/nodes/CharacterData-appendData.html", "url": "/dom/nodes/CharacterData-appendData.html" }, @@ -14702,6 +14762,10 @@ "url": "/dom/ranges/Range-constructor.html" }, { + "path": "dom/ranges/Range-stringifier.html", + "url": "/dom/ranges/Range-stringifier.html" + }, + { "path": "dom/traversal/NodeFilter-constants.html", "url": "/dom/traversal/NodeFilter-constants.html" }, @@ -15502,6 +15566,10 @@ "url": "/fetch/api/request/request-clone.sub.html" }, { + "path": "fetch/api/request/request-consume-empty.html", + "url": "/fetch/api/request/request-consume-empty.html" + }, + { "path": "fetch/api/request/request-consume.html", "url": "/fetch/api/request/request-consume.html" }, @@ -15542,6 +15610,10 @@ "url": "/fetch/api/response/response-clone.html" }, { + "path": "fetch/api/response/response-consume-empty.html", + "url": "/fetch/api/response/response-consume-empty.html" + }, + { "path": "fetch/api/response/response-consume.html", "url": "/fetch/api/response/response-consume.html" }, @@ -16266,6 +16338,14 @@ "url": "/html/browsers/origin/relaxing-the-same-origin-restriction/document_domain.html" }, { + "path": "html/browsers/the-window-object/Document-defaultView.html", + "url": "/html/browsers/the-window-object/Document-defaultView.html" + }, + { + "path": "html/browsers/the-window-object/Window-document.html", + "url": "/html/browsers/the-window-object/Window-document.html" + }, + { "path": "html/browsers/the-window-object/accessing-other-browsing-contexts/indexed-browsing-contexts-01.html", "url": "/html/browsers/the-window-object/accessing-other-browsing-contexts/indexed-browsing-contexts-01.html" }, @@ -16278,6 +16358,10 @@ "url": "/html/browsers/the-window-object/accessing-other-browsing-contexts/indexed-browsing-contexts-03.html" }, { + "path": "html/browsers/the-window-object/accessing-other-browsing-contexts/iterator.html", + "url": "/html/browsers/the-window-object/accessing-other-browsing-contexts/iterator.html" + }, + { "path": "html/browsers/the-window-object/accessing-other-browsing-contexts/window_length.html", "url": "/html/browsers/the-window-object/accessing-other-browsing-contexts/window_length.html" }, @@ -18714,6 +18798,10 @@ "url": "/html/semantics/forms/form-control-infrastructure/form.html" }, { + "path": "html/semantics/forms/form-submission-0/getactionurl.html", + "url": "/html/semantics/forms/form-submission-0/getactionurl.html" + }, + { "path": "html/semantics/forms/form-submission-0/url-encoded.html", "url": "/html/semantics/forms/form-submission-0/url-encoded.html" }, @@ -18842,10 +18930,6 @@ "url": "/html/semantics/forms/the-input-element/hidden.html" }, { - "path": "html/semantics/forms/the-input-element/input-textselection-01.html", - "url": "/html/semantics/forms/the-input-element/input-textselection-01.html" - }, - { "path": "html/semantics/forms/the-input-element/input-type-button.html", "url": "/html/semantics/forms/the-input-element/input-type-button.html" }, @@ -18902,6 +18986,10 @@ "url": "/html/semantics/forms/the-input-element/search_input.html" }, { + "path": "html/semantics/forms/the-input-element/selection.html", + "url": "/html/semantics/forms/the-input-element/selection.html" + }, + { "path": "html/semantics/forms/the-input-element/telephone.html", "url": "/html/semantics/forms/the-input-element/telephone.html" }, @@ -19290,6 +19378,10 @@ "url": "/html/semantics/selectors/pseudo-classes/enabled.html" }, { + "path": "html/semantics/selectors/pseudo-classes/focus-autofocus.html", + "url": "/html/semantics/selectors/pseudo-classes/focus-autofocus.html" + }, + { "path": "html/semantics/selectors/pseudo-classes/focus.html", "url": "/html/semantics/selectors/pseudo-classes/focus.html" }, @@ -19634,6 +19726,10 @@ "url": "/html/webappapis/scripting/events/event-handler-onresize.html" }, { + "path": "html/webappapis/scripting/events/event-handler-processing-algorithm.html", + "url": "/html/webappapis/scripting/events/event-handler-processing-algorithm.html" + }, + { "path": "html/webappapis/scripting/events/event-handler-spec-example.html", "url": "/html/webappapis/scripting/events/event-handler-spec-example.html" }, @@ -20134,10 +20230,6 @@ "url": "/mediacapture-streams/stream-api/mediastream/mediastream-removetrack.html" }, { - "path": "mediacapture-streams/stream-api/mediastream/stream-ended.html", - "url": "/mediacapture-streams/stream-api/mediastream/stream-ended.html" - }, - { "path": "mediacapture-streams/stream-api/mediastream/video.html", "url": "/mediacapture-streams/stream-api/mediastream/video.html" }, @@ -21338,6 +21430,150 @@ "url": "/notifications/permission.html" }, { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/form_action.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/form_action.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/form_length.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/form_length.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_height.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_height.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_width.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_width.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html" + }, + { + "path": "old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html", + "url": "/old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html" + }, + { "path": "old-tests/submission/Microsoft/dragdrop/dragdrop_004.htm", "url": "/old-tests/submission/Microsoft/dragdrop/dragdrop_004.htm" }, @@ -27986,6 +28222,14 @@ "url": "/touch-events/create-touch-touchlist.html" }, { + "path": "touch-events/touch-globaleventhandler-interface.html", + "url": "/touch-events/touch-globaleventhandler-interface.html" + }, + { + "path": "touch-events/touch-touchevent-constructor.html", + "url": "/touch-events/touch-touchevent-constructor.html" + }, + { "path": "typedarrays/ArrayBuffer_constructor.html", "url": "/typedarrays/ArrayBuffer_constructor.html" }, @@ -28138,6 +28382,18 @@ "url": "/web-animations/animatable/animate.html" }, { + "path": "web-animations/animation-effect-timing/duration.html", + "url": "/web-animations/animation-effect-timing/duration.html" + }, + { + "path": "web-animations/animation-effect-timing/getAnimations.html", + "url": "/web-animations/animation-effect-timing/getAnimations.html" + }, + { + "path": "web-animations/animation-effect-timing/getComputedStyle.html", + "url": "/web-animations/animation-effect-timing/getComputedStyle.html" + }, + { "path": "web-animations/animation-node/animation-node-after.html", "url": "/web-animations/animation-node/animation-node-after.html" }, @@ -28190,6 +28446,14 @@ "url": "/web-animations/keyframe-effect/effect-easing.html" }, { + "path": "web-animations/keyframe-effect/getComputedTiming-currentIteration.html", + "url": "/web-animations/keyframe-effect/getComputedTiming-currentIteration.html" + }, + { + "path": "web-animations/keyframe-effect/getComputedTiming-progress.html", + "url": "/web-animations/keyframe-effect/getComputedTiming-progress.html" + }, + { "path": "web-animations/keyframe-effect/getComputedTiming.html", "url": "/web-animations/keyframe-effect/getComputedTiming.html" }, @@ -30990,6 +31254,10 @@ "url": "/webmessaging/Channel_postMessage_target_source.htm" }, { + "path": "webmessaging/MessageEvent.html", + "url": "/webmessaging/MessageEvent.html" + }, + { "path": "webmessaging/MessageEvent_properties.htm", "url": "/webmessaging/MessageEvent_properties.htm" }, @@ -34516,42 +34784,7 @@ }, "local_changes": { "deleted": [], - "items": { - "manual": { - "uievents/order-of-events/mouse-events/mouseover-out-manual.html": [ - { - "path": "uievents/order-of-events/mouse-events/mouseover-out-manual.html", - "url": "/uievents/order-of-events/mouse-events/mouseover-out-manual.html" - } - ] - }, - "testharness": { - "dom/lists/DOMTokenList-value.html": [ - { - "path": "dom/lists/DOMTokenList-value.html", - "url": "/dom/lists/DOMTokenList-value.html" - } - ], - "dom/ranges/Range-stringifier.html": [ - { - "path": "dom/ranges/Range-stringifier.html", - "url": "/dom/ranges/Range-stringifier.html" - } - ], - "html/semantics/forms/form-submission-0/getactionurl.html": [ - { - "path": "html/semantics/forms/form-submission-0/getactionurl.html", - "url": "/html/semantics/forms/form-submission-0/getactionurl.html" - } - ], - "html/webappapis/scripting/events/event-handler-processing-algorithm.html": [ - { - "path": "html/webappapis/scripting/events/event-handler-processing-algorithm.html", - "url": "/html/webappapis/scripting/events/event-handler-processing-algorithm.html" - } - ] - } - }, + "items": {}, "reftest_nodes": {} }, "reftest_nodes": { @@ -37039,6 +37272,18 @@ "url": "/html/rendering/non-replaced-elements/tables/table-border-2.html" } ], + "html/rendering/non-replaced-elements/tables/table-cell-width-s.html": [ + { + "path": "html/rendering/non-replaced-elements/tables/table-cell-width-s.html", + "references": [ + [ + "/html/rendering/non-replaced-elements/tables/table-cell-width-ref.html", + "==" + ] + ], + "url": "/html/rendering/non-replaced-elements/tables/table-cell-width-s.html" + } + ], "html/rendering/non-replaced-elements/tables/table-cell-width.html": [ { "path": "html/rendering/non-replaced-elements/tables/table-cell-width.html", @@ -37075,6 +37320,18 @@ "url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html" } ], + "html/rendering/non-replaced-elements/tables/table-width-s.html": [ + { + "path": "html/rendering/non-replaced-elements/tables/table-width-s.html", + "references": [ + [ + "/html/rendering/non-replaced-elements/tables/table-width-ref.html", + "==" + ] + ], + "url": "/html/rendering/non-replaced-elements/tables/table-width-s.html" + } + ], "html/rendering/non-replaced-elements/tables/table-width.html": [ { "path": "html/rendering/non-replaced-elements/tables/table-width.html", @@ -40676,7 +40933,7 @@ } ] }, - "rev": "efa05bfb3b338ef988f3ebf4523198512a248a99", + "rev": "66c4613f823c4384c78ada77346eda17bb128947", "url_base": "/", "version": 2 } diff --git a/tests/wpt/metadata/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm.ini b/tests/wpt/metadata/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm.ini new file mode 100644 index 00000000000..ae2e5433056 --- /dev/null +++ b/tests/wpt/metadata/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm.ini @@ -0,0 +1,5 @@ +[send-authentication-cors-setrequestheader-no-cred.htm] + type: testharness + [CORS request with setRequestHeader auth to URL accepting Authorization header] + expected: FAIL + diff --git a/tests/wpt/metadata/dom/nodes/Document-createAttribute.html.ini b/tests/wpt/metadata/dom/nodes/Document-createAttribute.html.ini new file mode 100644 index 00000000000..8a9eb43431a --- /dev/null +++ b/tests/wpt/metadata/dom/nodes/Document-createAttribute.html.ini @@ -0,0 +1,26 @@ +[Document-createAttribute.html] + type: testharness + [HTML document.createAttribute("title")] + expected: FAIL + + [XML document.createAttribute("title")] + expected: FAIL + + [HTML document.createAttribute("TITLE")] + expected: FAIL + + [XML document.createAttribute("TITLE")] + expected: FAIL + + [HTML document.createAttribute(null)] + expected: FAIL + + [XML document.createAttribute(null)] + expected: FAIL + + [HTML document.createAttribute(undefined)] + expected: FAIL + + [XML document.createAttribute(undefined)] + expected: FAIL + diff --git a/tests/wpt/metadata/dom/nodes/Document-createEvent.html.ini b/tests/wpt/metadata/dom/nodes/Document-createEvent.html.ini new file mode 100644 index 00000000000..04346bd9ee7 --- /dev/null +++ b/tests/wpt/metadata/dom/nodes/Document-createEvent.html.ini @@ -0,0 +1,5 @@ +[Document-createEvent.html] + type: testharness + [Should throw NOT_SUPPORTED_ERR for pluralized non-legacy event interface "KeyEvent"] + expected: FAIL + diff --git a/tests/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini b/tests/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini new file mode 100644 index 00000000000..ed13e73097b --- /dev/null +++ b/tests/wpt/metadata/dom/nodes/Element-removeAttributeNS.html.ini @@ -0,0 +1,5 @@ +[Element-removeAttributeNS.html] + type: testharness + [removeAttributeNS should take a local name.] + expected: FAIL + diff --git a/tests/wpt/metadata/dom/nodes/attributes.html.ini b/tests/wpt/metadata/dom/nodes/attributes.html.ini new file mode 100644 index 00000000000..b1c954cb2cf --- /dev/null +++ b/tests/wpt/metadata/dom/nodes/attributes.html.ini @@ -0,0 +1,41 @@ +[attributes.html] + type: testharness + [setAttribute should not change the order of previously set attributes.] + expected: FAIL + + [setAttribute should set the first attribute with the given name] + expected: FAIL + + [setAttribute should set the attribute with the given qualified name] + expected: FAIL + + [null and the empty string should result in a null namespace.] + expected: FAIL + + [XML-namespaced attributes don't need an xml prefix] + expected: FAIL + + [xmlns should be allowed as local name] + expected: FAIL + + [xmlns should be allowed as prefix in the XMLNS namespace] + expected: FAIL + + [xmlns should be allowed as qualified name in the XMLNS namespace] + expected: FAIL + + [Setting the same attribute with another prefix should not change the prefix] + expected: FAIL + + [Attributes should work in document fragments.] + expected: FAIL + + [Attribute values should not be parsed.] + expected: FAIL + + [Specified attributes should be accessible.] + expected: FAIL + + [Entities in attributes should have been expanded while parsing.] + expected: FAIL + diff --git a/tests/wpt/metadata/encoding/textdecoder-labels.html.ini b/tests/wpt/metadata/encoding/textdecoder-labels.html.ini new file mode 100644 index 00000000000..749b68cc6f8 --- /dev/null +++ b/tests/wpt/metadata/encoding/textdecoder-labels.html.ini @@ -0,0 +1,50 @@ +[textdecoder-labels.html] + type: testharness + ["ms932" => "shift_jis"] + expected: FAIL + + [" ms932" => "shift_jis"] + expected: FAIL + + ["ms932 " => "shift_jis"] + expected: FAIL + + [" ms932 " => "shift_jis"] + expected: FAIL + + ["\\tms932" => "shift_jis"] + expected: FAIL + + ["ms932\\t" => "shift_jis"] + expected: FAIL + + ["\\tms932\\t" => "shift_jis"] + expected: FAIL + + ["\\nms932" => "shift_jis"] + expected: FAIL + + ["ms932\\n" => "shift_jis"] + expected: FAIL + + ["\\nms932\\n" => "shift_jis"] + expected: FAIL + + ["\\fms932" => "shift_jis"] + expected: FAIL + + ["ms932\\f" => "shift_jis"] + expected: FAIL + + ["\\fms932\\f" => "shift_jis"] + expected: FAIL + + ["\\rms932" => "shift_jis"] + expected: FAIL + + ["ms932\\r" => "shift_jis"] + expected: FAIL + + ["\\rms932\\r" => "shift_jis"] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/history/the-location-interface/location_assign.html.ini b/tests/wpt/metadata/html/browsers/history/the-location-interface/location_assign.html.ini index c9e2281c872..f3e2538746c 100644 --- a/tests/wpt/metadata/html/browsers/history/the-location-interface/location_assign.html.ini +++ b/tests/wpt/metadata/html/browsers/history/the-location-interface/location_assign.html.ini @@ -3,3 +3,6 @@ [location assign] expected: FAIL + [URL that fails to parse] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/the-window-object/Document-defaultView.html.ini b/tests/wpt/metadata/html/browsers/the-window-object/Document-defaultView.html.ini new file mode 100644 index 00000000000..9ba1c81088c --- /dev/null +++ b/tests/wpt/metadata/html/browsers/the-window-object/Document-defaultView.html.ini @@ -0,0 +1,15 @@ +[Document-defaultView.html] + type: testharness + expected: TIMEOUT + [Document created with the Document constructor] + expected: FAIL + + [Document created with createDocument] + expected: FAIL + + [Document created with createHTMLDocument] + expected: FAIL + + [Document created with XML DOMParser] + expected: TIMEOUT + diff --git a/tests/wpt/metadata/html/browsers/the-window-object/Window-document.html.ini b/tests/wpt/metadata/html/browsers/the-window-object/Window-document.html.ini new file mode 100644 index 00000000000..382f076961f --- /dev/null +++ b/tests/wpt/metadata/html/browsers/the-window-object/Window-document.html.ini @@ -0,0 +1,5 @@ +[Window-document.html] + type: testharness + [Document in a browsing context] + expected: FAIL + diff --git a/tests/wpt/metadata/html/dom/elements/global-attributes/custom-attrs.html.ini b/tests/wpt/metadata/html/dom/elements/global-attributes/custom-attrs.html.ini new file mode 100644 index 00000000000..1081dd9595a --- /dev/null +++ b/tests/wpt/metadata/html/dom/elements/global-attributes/custom-attrs.html.ini @@ -0,0 +1,5 @@ +[custom-attrs.html] + type: testharness + [Setting an Element's dataset property should not interfere with namespaced attributes with same name] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/forms/constraints/form-validation-validity-badInput.html.ini b/tests/wpt/metadata/html/semantics/forms/constraints/form-validation-validity-badInput.html.ini index 29321ef63c6..3e69f28748e 100644 --- a/tests/wpt/metadata/html/semantics/forms/constraints/form-validation-validity-badInput.html.ini +++ b/tests/wpt/metadata/html/semantics/forms/constraints/form-validation-validity-badInput.html.ini @@ -33,3 +33,12 @@ [[INPUT in COLOR status\] The value attribute cannot convert to a valid sample color] expected: FAIL + [[INPUT in DATETIME-LOCAL status\] The value attribute is empty] + expected: FAIL + + [[INPUT in DATETIME-LOCAL status\] The value attribute is a valid date and time string] + expected: FAIL + + [[INPUT in DATETIME-LOCAL status\] The value attribute cannot convert to a valid normalized forced-UTC global date and time string] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html.ini b/tests/wpt/metadata/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html.ini index b181665f0ef..b800a621e4b 100644 --- a/tests/wpt/metadata/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html.ini +++ b/tests/wpt/metadata/html/semantics/forms/textfieldselection/textfieldselection-setSelectionRange.html.ini @@ -1,6 +1,5 @@ [textfieldselection-setSelectionRange.html] type: testharness - [textarea typeof(input.setSelectionRange)'] expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/forms/the-input-element/input-textselection-01.html.ini b/tests/wpt/metadata/html/semantics/forms/the-input-element/input-textselection-01.html.ini deleted file mode 100644 index 8688e717a48..00000000000 --- a/tests/wpt/metadata/html/semantics/forms/the-input-element/input-textselection-01.html.ini +++ /dev/null @@ -1,71 +0,0 @@ -[input-textselection-01.html] - type: testharness - [Selection attributes should apply to type text] - expected: FAIL - - [Selection attributes should apply to type search] - expected: FAIL - - [Selection attributes should apply to type url] - expected: FAIL - - [Selection attributes should apply to type tel] - expected: FAIL - - [Selection attributes should apply to type email] - expected: FAIL - - [Selection attributes should apply to type password] - expected: FAIL - - [Selection attributes should not apply to type hidden] - expected: FAIL - - [Selection attributes should not apply to type datetime] - expected: FAIL - - [Selection attributes should not apply to type date] - expected: FAIL - - [Selection attributes should not apply to type month] - expected: FAIL - - [Selection attributes should not apply to type week] - expected: FAIL - - [Selection attributes should not apply to type datetime-local] - expected: FAIL - - [Selection attributes should not apply to type number] - expected: FAIL - - [Selection attributes should not apply to type range] - expected: FAIL - - [Selection attributes should not apply to type color] - expected: FAIL - - [Selection attributes should not apply to type checkbox] - expected: FAIL - - [Selection attributes should not apply to type radio] - expected: FAIL - - [Selection attributes should not apply to type button] - expected: FAIL - - [Selection attributes should not apply to type file] - expected: FAIL - - [Selection attributes should not apply to type submit] - expected: FAIL - - [Selection attributes should not apply to type image] - expected: FAIL - - [Selection attributes should not apply to type reset] - expected: FAIL - - [Selection attributes should not apply to type email] - expected: FAIL - diff --git a/tests/wpt/metadata/html/semantics/forms/the-input-element/selection.html.ini b/tests/wpt/metadata/html/semantics/forms/the-input-element/selection.html.ini new file mode 100644 index 00000000000..a2ac07f8cdf --- /dev/null +++ b/tests/wpt/metadata/html/semantics/forms/the-input-element/selection.html.ini @@ -0,0 +1,134 @@ +[selection.html] + type: testharness + [input type text should support the select() method] + expected: FAIL + + [input type search should support the select() method] + expected: FAIL + + [input type url should support the select() method] + expected: FAIL + + [input type tel should support the select() method] + expected: FAIL + + [input type email should support the select() method] + expected: FAIL + + [input type password should support the select() method] + expected: FAIL + + [input type date should support the select() method] + expected: FAIL + + [input type month should support the select() method] + expected: FAIL + + [input type week should support the select() method] + expected: FAIL + + [input type time should support the select() method] + expected: FAIL + + [input type datetime-local should support the select() method] + expected: FAIL + + [input type number should support the select() method] + expected: FAIL + + [input type color should support the select() method] + expected: FAIL + + [input type file should support the select() method] + expected: FAIL + + [input type hidden should not support the select() method] + expected: FAIL + + [input type range should not support the select() method] + expected: FAIL + + [input type checkbox should not support the select() method] + expected: FAIL + + [input type radio should not support the select() method] + expected: FAIL + + [input type submit should not support the select() method] + expected: FAIL + + [input type image should not support the select() method] + expected: FAIL + + [input type reset should not support the select() method] + expected: FAIL + + [input type button should not support the select() method] + expected: FAIL + + [input type text should support all selection attributes and methods] + expected: FAIL + + [input type search should support all selection attributes and methods] + expected: FAIL + + [input type url should support all selection attributes and methods] + expected: FAIL + + [input type tel should support all selection attributes and methods] + expected: FAIL + + [input type password should support all selection attributes and methods] + expected: FAIL + + [input type hidden should not support variable-length selections] + expected: FAIL + + [input type email should not support variable-length selections] + expected: FAIL + + [input type date should not support variable-length selections] + expected: FAIL + + [input type month should not support variable-length selections] + expected: FAIL + + [input type week should not support variable-length selections] + expected: FAIL + + [input type time should not support variable-length selections] + expected: FAIL + + [input type datetime-local should not support variable-length selections] + expected: FAIL + + [input type number should not support variable-length selections] + expected: FAIL + + [input type range should not support variable-length selections] + expected: FAIL + + [input type color should not support variable-length selections] + expected: FAIL + + [input type checkbox should not support variable-length selections] + expected: FAIL + + [input type radio should not support variable-length selections] + expected: FAIL + + [input type file should not support variable-length selections] + expected: FAIL + + [input type submit should not support variable-length selections] + expected: FAIL + + [input type image should not support variable-length selections] + expected: FAIL + + [input type reset should not support variable-length selections] + expected: FAIL + + [input type button should not support variable-length selections] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html.ini b/tests/wpt/metadata/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html.ini index 9a43e6289ce..fa35ef9c41f 100644 --- a/tests/wpt/metadata/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html.ini +++ b/tests/wpt/metadata/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html.ini @@ -1,8 +1,5 @@ [template-as-a-descendant.html] type: testharness - [Template element as a descendant of the FRAMESET element. Template element is created by innerHTML] - expected: FAIL - [Template element as an indirect descendant of the FRAMESET element. Template element is created by innerHTML] expected: FAIL diff --git a/tests/wpt/metadata/html/semantics/selectors/pseudo-classes/focus-autofocus.html.ini b/tests/wpt/metadata/html/semantics/selectors/pseudo-classes/focus-autofocus.html.ini new file mode 100644 index 00000000000..a513ec1c976 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/selectors/pseudo-classes/focus-autofocus.html.ini @@ -0,0 +1,6 @@ +[focus-autofocus.html] + type: testharness + expected: TIMEOUT + [:focus selector should work with an autofocused element.] + expected: NOTRUN + diff --git a/tests/wpt/metadata/html/webappapis/scripting/events/event-handler-processing-algorithm.html.ini b/tests/wpt/metadata/html/webappapis/scripting/events/event-handler-processing-algorithm.html.ini index 5a1fe9cac37..d0ea8e8024f 100644 --- a/tests/wpt/metadata/html/webappapis/scripting/events/event-handler-processing-algorithm.html.ini +++ b/tests/wpt/metadata/html/webappapis/scripting/events/event-handler-processing-algorithm.html.ini @@ -2,3 +2,4 @@ type: testharness [beforeunload listener returning null cancels event] expected: FAIL + diff --git a/tests/wpt/metadata/mozilla-sync b/tests/wpt/metadata/mozilla-sync index 801aa5ef1fa..59c2f10161e 100644 --- a/tests/wpt/metadata/mozilla-sync +++ b/tests/wpt/metadata/mozilla-sync @@ -1 +1 @@ -26b40afe237f97ebd81d537e8ed1201c7c1e4011
\ No newline at end of file +183772583fcbb1f8103e8d6542a620134ba9182e
\ No newline at end of file diff --git a/tests/wpt/metadata/touch-events/create-touch-touchlist.html.ini b/tests/wpt/metadata/touch-events/create-touch-touchlist.html.ini new file mode 100644 index 00000000000..a1f18edc547 --- /dev/null +++ b/tests/wpt/metadata/touch-events/create-touch-touchlist.html.ini @@ -0,0 +1,8 @@ +[create-touch-touchlist.html] + type: testharness + [document.createTouchList exists and correctly creates a TouchList from a single Touch] + expected: FAIL + + [document.createTouchList exists and correctly creates a TouchList from two Touch objects] + expected: FAIL + diff --git a/tests/wpt/metadata/touch-events/touch-globaleventhandler-interface.html.ini b/tests/wpt/metadata/touch-events/touch-globaleventhandler-interface.html.ini new file mode 100644 index 00000000000..71a8db90c6f --- /dev/null +++ b/tests/wpt/metadata/touch-events/touch-globaleventhandler-interface.html.ini @@ -0,0 +1,8 @@ +[touch-globaleventhandler-interface.html] + type: testharness + [Touch events in GlobalEventHandlers] + expected: FAIL + + [Touch events are GlobalEventHandlers' own property] + expected: FAIL + diff --git a/tests/wpt/metadata/touch-events/touch-touchevent-constructor.html.ini b/tests/wpt/metadata/touch-events/touch-touchevent-constructor.html.ini new file mode 100644 index 00000000000..f094e4f1a98 --- /dev/null +++ b/tests/wpt/metadata/touch-events/touch-touchevent-constructor.html.ini @@ -0,0 +1,11 @@ +[touch-touchevent-constructor.html] + type: testharness + [Touch constructor exists and creates a Touch object with minimum properties] + expected: FAIL + + [Touch constructor exists and creates a Touch object with requested properties] + expected: FAIL + + [TouchEvent constructor exists and creates a TouchEvent object with requested properties] + expected: FAIL + diff --git a/tests/wpt/metadata/url/a-element-xhtml.xhtml.ini b/tests/wpt/metadata/url/a-element-xhtml.xhtml.ini index f9e1731d2db..77935345d98 100644 --- a/tests/wpt/metadata/url/a-element-xhtml.xhtml.ini +++ b/tests/wpt/metadata/url/a-element-xhtml.xhtml.ini @@ -1,3 +1,947 @@ [a-element-xhtml.xhtml] type: testharness - expected: TIMEOUT + [Parsing: <http://example\t.\norg> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://user:pass@foo:21/bar;par?b#c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:foo.com> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <\t :foo.com \n> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: < foo.com > against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <a:\t foo.com> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:21/ b ? d # e > against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:0/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:00000000000000/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:00000000000000000000080/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:b/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f: /c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:\n/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:fifty-two/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f:999999/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://f: 21 / b ? d # e > against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: < \t> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:foo.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:foo.com\\> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:a> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:\\> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:#> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <#> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <#/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <#\\> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <#;?> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <?> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <:23> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </:23> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <::> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <::23> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo://> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://a:b@c:29/d> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http::@c:29> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://&a:foo(b\]c@d:2/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://::@c@d:2> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://foo.com:b@d/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://foo.com/\\@> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:\\\\foo.com\\> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:\\\\a\\b:c\\d@foo.com\\> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo:/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo:/bar.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo://///////> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo://///////bar.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <foo:////://///> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <c:/foo> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <//foo/bar> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://foo/path;a??e#f#g> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://foo/abcd?efgh?ijkl> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://foo/abcd#foo?bar> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <[61:24:74\]:98> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:[61:27\]/:foo> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://[1::2\]:3:4> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://2001::1> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://2001::1\]> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://2001::1\]:80> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://[2001::1\]> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http://[2001::1\]:80> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ftp:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <https:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <madeupscheme:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <file:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ftps:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <gopher:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ws:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <wss:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <data:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <javascript:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <mailto:/example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <http:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ftp:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <https:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <madeupscheme:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ftps:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <gopher:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <ws:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <wss:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <data:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <javascript:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <mailto:example.com/> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </a/b/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </a/ /c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </a%2fc> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: </a/%2f/c> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <#β> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <data:text/html,test#test> against <http://example.org/foo/bar>] + expected: FAIL + + [Parsing: <file:c:\\foo\\bar.html> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: < File:c|////foo\\bar.html> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <C|/foo/bar> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: </C|\\foo\\bar> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <//C|/foo/bar> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <//server/file> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <\\\\server\\file> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: </\\server/file> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file:///foo/bar.txt> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file:///home/me> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <//> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <///> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <///test> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file://test> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file://localhost> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file://localhost/> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file://localhost/test> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <test> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <file:test> against <file:///tmp/mock/path>] + expected: FAIL + + [Parsing: <http://example.com/././foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/./.foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/.> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/./> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar/..> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar/../> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/..bar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar/../ton> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar/../ton/../../a> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/../../..> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/../../../ton> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/%2e> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/%2e%2> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/%2e./%2e%2e/.%2e/%2e.bar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com////../..> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar//../..> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo/bar//..> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/%20foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%2> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%2zbar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%2©zbar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%41%7a> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo\t%91> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo%00%51> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/(%28:%3A%29)> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/%3A%3a%3C%3c> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/foo\tbar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com\\\\foo\\\\bar> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/%7Ffp3%3Eju%3Dduvgw%3Dd> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/@asdf%40> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/你好你好> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com/‥/foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com//foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://example.com//foo//bar> against <about:blank>] + expected: FAIL + + [Parsing: <http://www.google.com/foo?bar=baz#> against <about:blank>] + expected: FAIL + + [Parsing: <http://www.google.com/foo?bar=baz# »> against <about:blank>] + expected: FAIL + + [Parsing: <data:test# »> against <about:blank>] + expected: FAIL + + [Parsing: <http://[www.google.com\]/> against <about:blank>] + expected: FAIL + + [Parsing: <http://www.google.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://192.0x00A80001> against <about:blank>] + expected: FAIL + + [Parsing: <http://www/foo%2Ehtml> against <about:blank>] + expected: FAIL + + [Parsing: <http://www/foo/%2E/html> against <about:blank>] + expected: FAIL + + [Parsing: <http://user:pass@/> against <about:blank>] + expected: FAIL + + [Parsing: <http://%25DOMAIN:foobar@foodomain.com/> against <about:blank>] + expected: FAIL + + [Parsing: <http:\\\\www.google.com\\foo> against <about:blank>] + expected: FAIL + + [Parsing: <http://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <http://foo:81/> against <about:blank>] + expected: FAIL + + [Parsing: <httpa://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <http://foo:-80/> against <about:blank>] + expected: FAIL + + [Parsing: <https://foo:443/> against <about:blank>] + expected: FAIL + + [Parsing: <https://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <ftp://foo:21/> against <about:blank>] + expected: FAIL + + [Parsing: <ftp://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <gopher://foo:70/> against <about:blank>] + expected: FAIL + + [Parsing: <gopher://foo:443/> against <about:blank>] + expected: FAIL + + [Parsing: <ws://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <ws://foo:81/> against <about:blank>] + expected: FAIL + + [Parsing: <ws://foo:443/> against <about:blank>] + expected: FAIL + + [Parsing: <ws://foo:815/> against <about:blank>] + expected: FAIL + + [Parsing: <wss://foo:80/> against <about:blank>] + expected: FAIL + + [Parsing: <wss://foo:81/> against <about:blank>] + expected: FAIL + + [Parsing: <wss://foo:443/> against <about:blank>] + expected: FAIL + + [Parsing: <wss://foo:815/> against <about:blank>] + expected: FAIL + + [Parsing: <http:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ftp:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <https:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <madeupscheme:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <file:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ftps:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <gopher:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ws:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <wss:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <data:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <javascript:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <mailto:/example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <http:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ftp:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <https:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <madeupscheme:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ftps:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <gopher:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <ws:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <wss:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <data:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <javascript:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <mailto:example.com/> against <about:blank>] + expected: FAIL + + [Parsing: <http:@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:a:b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/a:b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://a:b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://@pple.com> against <about:blank>] + expected: FAIL + + [Parsing: <http::b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/:b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://:b@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/:@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://user@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <https:@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:a:b@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/a:b@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://a:b@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http::@/www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:a:@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/a:@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://a:@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://www.@pple.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:@:www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http:/@:www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://@:www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: <http://:@www.example.com> against <about:blank>] + expected: FAIL + + [Parsing: </> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: </test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <.> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <..> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <./test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <../test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <../aaa/test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <../../test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <中/test.txt> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <http://www.example2.com> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <//www.example2.com> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <file:...> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <file:..> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <file:a> against <http://www.example.com/test>] + expected: FAIL + + [Parsing: <http://ExAmPlE.CoM> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://example example.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://Goo%20 goo%7C|.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://[\]> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://[:\]> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://GOO goo.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://GOOgoo.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://www.foo。bar.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://zyx.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%ef%b7%90zyx.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://Go.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%41.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%ef%bc%85%ef%bc%94%ef%bc%91.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%00.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%ef%bc%85%ef%bc%90%ef%bc%90.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://你好你好> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%zz%66%a.com> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%25> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://hello%00> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%30%78%63%30%2e%30%32%35%30.01> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%30%78%63%30%2e%30%32%35%30.01%2e> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://192.168.0.257> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://%3g%78%63%30%2e%30%32%35%30%2E.01> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://192.168.0.1 hello> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://0Xc0.0250.01> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://[google.com\]> against <http://other.com/>] + expected: FAIL + + [Parsing: <http://foo:💩@example.com/bar> against <http://other.com/>] + expected: FAIL + + [Parsing: <#> against <test:test>] + expected: FAIL + + [Parsing: <#x> against <mailto:x@x.com>] + expected: FAIL + + [Parsing: <#x> against <data:,>] + expected: FAIL + + [Parsing: <#x> against <about:blank>] + expected: FAIL + + [Parsing: <#> against <test:test?test>] + expected: FAIL + + [Parsing: <https://@test@test@example:800/> against <http://doesnotmatter/>] + expected: FAIL + + [Parsing: <https://@@@example> against <http://doesnotmatter/>] + expected: FAIL + + [Parsing: <http://`{}:`{}@h/`{}?`{}> against <http://doesnotmatter/>] + expected: FAIL + + [Parsing: </some/path> against <http://user@example.org/smth>] + expected: FAIL + + [Parsing: <> against <http://user:pass@example.org:21/smth>] + expected: FAIL + + [Parsing: </some/path> against <http://user:pass@example.org:21/smth>] + expected: FAIL + + [Parsing: <i> against <sc:sd>] + expected: FAIL + + [Parsing: <i> against <sc:sd/sd>] + expected: FAIL + + [Parsing: <i> against <sc:/pa/pa>] + expected: FAIL + + [Parsing: <i> against <sc://ho/pa>] + expected: FAIL + + [Parsing: <i> against <sc:///pa/pa>] + expected: FAIL + + [Parsing: <../i> against <sc:sd>] + expected: FAIL + + [Parsing: <../i> against <sc:sd/sd>] + expected: FAIL + + [Parsing: <../i> against <sc:/pa/pa>] + expected: FAIL + + [Parsing: <../i> against <sc://ho/pa>] + expected: FAIL + + [Parsing: <../i> against <sc:///pa/pa>] + expected: FAIL + + [Parsing: </i> against <sc:sd>] + expected: FAIL + + [Parsing: </i> against <sc:sd/sd>] + expected: FAIL + + [Parsing: </i> against <sc:/pa/pa>] + expected: FAIL + + [Parsing: </i> against <sc://ho/pa>] + expected: FAIL + + [Parsing: </i> against <sc:///pa/pa>] + expected: FAIL + + [Parsing: <?i> against <sc:sd>] + expected: FAIL + + [Parsing: <?i> against <sc:sd/sd>] + expected: FAIL + + [Parsing: <?i> against <sc:/pa/pa>] + expected: FAIL + + [Parsing: <?i> against <sc://ho/pa>] + expected: FAIL + + [Parsing: <?i> against <sc:///pa/pa>] + expected: FAIL + + [Parsing: <#i> against <sc:sd>] + expected: FAIL + + [Parsing: <#i> against <sc:sd/sd>] + expected: FAIL + + [Parsing: <#i> against <sc:/pa/pa>] + expected: FAIL + + [Parsing: <#i> against <sc://ho/pa>] + expected: FAIL + + [Parsing: <#i> against <sc:///pa/pa>] + expected: FAIL + + [Parsing: <about:/../> against <about:blank>] + expected: FAIL + + [Parsing: <data:/../> against <about:blank>] + expected: FAIL + + [Parsing: <javascript:/../> against <about:blank>] + expected: FAIL + + [Parsing: <mailto:/../> against <about:blank>] + expected: FAIL + + [Parsing: <sc://ñ.test/> against <about:blank>] + expected: FAIL + + [Parsing: <sc:\\../> against <about:blank>] + expected: FAIL + + [Parsing: <http://127.0.0.1:10100/relative_import.html> against <about:blank>] + expected: FAIL + + [Parsing: <http://facebook.com/?foo=%7B%22abc%22> against <about:blank>] + expected: FAIL + + [Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank>] + expected: FAIL + + [Parsing: <h\tt\nt\rp://h\to\ns\rt:9\t0\n0\r0/p\ta\nt\rh?q\tu\ne\rry#f\tr\na\rg> against <about:blank>] + expected: FAIL + diff --git a/tests/wpt/metadata/url/a-element.html.ini b/tests/wpt/metadata/url/a-element.html.ini index 648141e3b84..0059f291093 100644 --- a/tests/wpt/metadata/url/a-element.html.ini +++ b/tests/wpt/metadata/url/a-element.html.ini @@ -942,3 +942,6 @@ [Parsing: <https://localhost:3000/jqueryui@1.2.3> against <about:blank>] expected: FAIL + [Parsing: <h\tt\nt\rp://h\to\ns\rt:9\t0\n0\r0/p\ta\nt\rh?q\tu\ne\rry#f\tr\na\rg> against <about:blank>] + expected: FAIL + diff --git a/tests/wpt/metadata/url/url-constructor.html.ini b/tests/wpt/metadata/url/url-constructor.html.ini index fb8ac6d4bbb..e9f116005c1 100644 --- a/tests/wpt/metadata/url/url-constructor.html.ini +++ b/tests/wpt/metadata/url/url-constructor.html.ini @@ -195,3 +195,6 @@ [Parsing: <http://www/foo%2Ehtml> against <about:blank>] expected: FAIL + [Parsing: <h\tt\nt\rp://h\to\ns\rt:9\t0\n0\r0/p\ta\nt\rh?q\tu\ne\rry#f\tr\na\rg> against <about:blank>] + expected: FAIL + diff --git a/tests/wpt/web-platform-tests/FileAPI/blob/Blob-constructor.html b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-constructor.html index dced17de0a5..799091d55ac 100644 --- a/tests/wpt/web-platform-tests/FileAPI/blob/Blob-constructor.html +++ b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-constructor.html @@ -8,11 +8,7 @@ <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src="../support/Blob.js"></script> -<p><strong><a href="https://www.w3.org/Bugs/Public/show_bug.cgi?id=23683">Discussion</a> -is ongoing that will affect a number of the following tests.</strong> <div id="log"></div> -<!-- used by "platform object that supports indexed properties" tests --> -<iframe style="display:none"></iframe> <script> test(function() { assert_true("Blob" in window, "window should have a Blob property."); @@ -51,6 +47,10 @@ test(function() { "FAIL", new Date(), new RegExp(), + {}, + { 0: "FAIL", length: 1 }, + document.createElement("div"), + window, ]; args.forEach(function(arg) { assert_throws(new TypeError(), function() { @@ -60,18 +60,24 @@ test(function() { }, "Passing non-objects, Dates and RegExps for blobParts should throw a TypeError."); test_blob(function() { - return new Blob({}); + return new Blob({ + [Symbol.iterator]: Array.prototype[Symbol.iterator], + }); }, { expected: "", type: "", - desc: "A plain object should be treated as a sequence for the blobParts argument." + desc: "A plain object with @@iterator should be treated as a sequence for the blobParts argument." }); test_blob(function() { - return new Blob({ 0: "PASS", length: 1 }); + return new Blob({ + [Symbol.iterator]: Array.prototype[Symbol.iterator], + 0: "PASS", + length: 1 + }); }, { expected: "PASS", type: "", - desc: "A plain object with a length property should be treated as a sequence for the blobParts argument." + desc: "A plain object with @@iterator and a length property should be treated as a sequence for the blobParts argument." }); test_blob(function() { return new Blob(new String("xyz")); @@ -88,10 +94,14 @@ test_blob(function() { desc: "A Uint8Array object should be treated as a sequence for the blobParts argument." }); -var test_error = { name: "test" }; +var test_error = { + name: "test", + message: "test error", +}; test(function() { var obj = { + [Symbol.iterator]: Array.prototype[Symbol.iterator], get length() { throw test_error; } }; assert_throws(test_error, function() { @@ -99,7 +109,7 @@ test(function() { }); }, "The length getter should be invoked and any exceptions should be propagated."); -test_blob(function() { +test(function() { var element = document.createElement("div"); element.appendChild(document.createElement("div")); element.appendChild(document.createElement("p")); @@ -107,16 +117,15 @@ test_blob(function() { Object.defineProperty(list, "length", { get: function() { throw test_error; } }); - return new Blob(list); -}, { - expected: "[object HTMLDivElement][object HTMLParagraphElement]", - type: "", - desc: "A platform object that supports indexed properties should be treated as a sequence for the blobParts argument (overwritten 'length'.)" -}); + assert_throws(test_error, function() { + new Blob(list); + }); +}, "A platform object that supports indexed properties should be treated as a sequence for the blobParts argument (overwritten 'length'.)"); test(function() { assert_throws(test_error, function() { var obj = { + [Symbol.iterator]: Array.prototype[Symbol.iterator], length: { valueOf: null, toString: function() { throw test_error; } @@ -126,6 +135,7 @@ test(function() { }); assert_throws(test_error, function() { var obj = { + [Symbol.iterator]: Array.prototype[Symbol.iterator], length: { valueOf: function() { throw test_error; } } }; new Blob(obj); @@ -135,6 +145,10 @@ test(function() { test(function() { var received = []; var obj = { + get [Symbol.iterator]() { + received.push("Symbol.iterator"); + return Array.prototype[Symbol.iterator]; + }, get length() { received.push("length getter"); return { @@ -166,15 +180,18 @@ test(function() { new Blob(obj); }); assert_array_equals(received, [ + "Symbol.iterator", "length getter", "length valueOf", "0 getter", "0 toString", - "1 getter" + "length getter", + "length valueOf", + "1 getter", ]); }, "Getters and value conversions should happen in order until an exception is thrown."); -// XXX should add tests edge cases of ToUint32(length) +// XXX should add tests edge cases of ToLength(length) test(function() { assert_throws(test_error, function() { @@ -201,7 +218,7 @@ test_blob(function() { ]; return new Blob(arr); }, { - expected: "PASSundefined", + expected: "PASS", type: "", desc: "Changes to the blobParts array should be reflected in the returned Blob (pop)." }); @@ -211,19 +228,19 @@ test_blob(function() { { toString: function() { if (arr.length === 3) { - return "SS"; + return "A"; } arr.unshift({ toString: function() { assert_unreached("Should only access index 0 once."); } }); - return "PA"; + return "P"; } }, { toString: function() { - assert_unreached("Should not access the final element."); + return "SS"; } } ]; @@ -298,29 +315,6 @@ test_blob(function() { }); test_blob(function() { - return new Blob(document.createElement("div")); -}, { - expected: "", - type: "", - desc: "Passing an element as the blobParts array should work." -}); - -test_blob(function() { - return new Blob(window); -}, { - expected: "[object Window]", - type: "", - desc: "Passing an platform object that supports indexed properties as the blobParts array should work (window)." -}); -test_blob(function() { - window[0].toString = function() { return "foo"; }; - return new Blob(window); -}, { - expected: "foo", - type: "", - desc: "Passing an platform object that supports indexed properties as the blobParts array should work (window with custom toString)." -}); -test_blob(function() { var select = document.createElement("select"); select.appendChild(document.createElement("option")); return new Blob(select); diff --git a/tests/wpt/web-platform-tests/FileAPI/blob/Blob-in-worker.worker.js b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-in-worker.worker.js new file mode 100644 index 00000000000..a67060e7b85 --- /dev/null +++ b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-in-worker.worker.js @@ -0,0 +1,14 @@ +importScripts("/resources/testharness.js"); + +async_test(function() { + var data = "TEST"; + var blob = new Blob([data], {type: "text/plain"}); + var reader = new FileReader(); + reader.onload = this.step_func_done(function() { + assert_equals(reader.result, data); + }); + reader.onerror = this.unreached_func("Unexpected error event"); + reader.readAsText(blob); +}, "Create Blob in Worker"); + +done(); diff --git a/tests/wpt/web-platform-tests/FileAPI/blob/Blob-slice-overflow.html b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-slice-overflow.html new file mode 100644 index 00000000000..56891af5f17 --- /dev/null +++ b/tests/wpt/web-platform-tests/FileAPI/blob/Blob-slice-overflow.html @@ -0,0 +1,42 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Blob slice overflow</title> +<link rel="author" title="Intel" href="http://www.intel.com"> +<link rel="help" href="https://w3c.github.io/FileAPI/#dfn-slice"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> + +var text = ''; + +for (var i = 0; i < 2000; ++i) { + text += 'A'; +} + +test(function() { + var blob = new Blob([text]); + var sliceBlob = blob.slice(-1, 2000); + assert_equals(sliceBlob.size, 2000-(2000-1), "Bolb slice size"); +}, "slice start is negative, relativeStart will be max((size + start), 0)"); + +test(function() { + var blob = new Blob([text]); + var sliceBlob = blob.slice(2001, 2000); + assert_equals(sliceBlob.size, 0, "Bolb slice size"); +}, "slice start is greater than blob size, relativeStart will be min(start, size)"); + +test(function() { + var blob = new Blob([text]); + var sliceBlob = blob.slice(1998, -1); + assert_equals(sliceBlob.size, (2000-1)-1998, "Bolb slice size"); +}, "slice end is negative, relativeEnd will be max((size + end), 0)"); + +test(function() { + var blob = new Blob([text]); + var sliceBlob = blob.slice(1998, 2999); + assert_equals(sliceBlob.size, 2000-1998, "Bolb slice size"); +}, "slice end is greater than blob size, relativeEnd will be min(end, size)"); + +</script> + diff --git a/tests/wpt/web-platform-tests/FileAPI/file/Worker-read-file-constructor.worker.js b/tests/wpt/web-platform-tests/FileAPI/file/Worker-read-file-constructor.worker.js new file mode 100644 index 00000000000..4e003b3c958 --- /dev/null +++ b/tests/wpt/web-platform-tests/FileAPI/file/Worker-read-file-constructor.worker.js @@ -0,0 +1,15 @@ +importScripts("/resources/testharness.js"); + +async_test(function() { + var file = new File(["bits"], "dummy", { 'type': 'text/plain', lastModified: 42 }); + var reader = new FileReader(); + reader.onload = this.step_func_done(function() { + assert_equals(file.name, "dummy", "file name"); + assert_equals(reader.result, "bits", "file content"); + assert_equals(file.lastModified, 42, "file lastModified"); + }); + reader.onerror = this.unreached_func("Unexpected error event"); + reader.readAsText(file); +}, "FileReader in Worker"); + +done(); diff --git a/tests/wpt/web-platform-tests/IndexedDB/OWNERS b/tests/wpt/web-platform-tests/IndexedDB/OWNERS index 711894a54b3..bd8dca9f6ad 100644 --- a/tests/wpt/web-platform-tests/IndexedDB/OWNERS +++ b/tests/wpt/web-platform-tests/IndexedDB/OWNERS @@ -5,4 +5,3 @@ @zqzhang @yunxiaoxie @zhaozihao -@foolip diff --git a/tests/wpt/web-platform-tests/IndexedDB/idbkeyrange-includes.htm b/tests/wpt/web-platform-tests/IndexedDB/idbkeyrange-includes.htm new file mode 100644 index 00000000000..bfe9d2c482d --- /dev/null +++ b/tests/wpt/web-platform-tests/IndexedDB/idbkeyrange-includes.htm @@ -0,0 +1,33 @@ +<!doctype html> +<meta charset=utf-8> +<title></title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<script> + + test( function() { + var closedRange = IDBKeyRange.bound(5, 20); + assert_true(!!closedRange.includes, "IDBKeyRange has a .includes"); + assert_true(closedRange.includes(7), "in range"); + assert_false(closedRange.includes(1), "below range"); + assert_false(closedRange.includes(42), "above range"); + assert_true(closedRange.includes(5) && closedRange.includes(20), + "boundary points"); + assert_throws("DataError", function() { closedRange.includes({}) }, + "invalid key"); + }, "IDBKeyRange.includes() with a closed range"); + + test( function() { + var openRange = IDBKeyRange.bound(5, 20, true, true); + assert_false(openRange.includes(5) || openRange.includes(20), + "boundary points"); + }, "IDBKeyRange.includes() with an open range"); + + test( function() { + var range = IDBKeyRange.only(42); + assert_true(range.includes(42), "in range"); + assert_false(range.includes(1), "below range"); + assert_false(range.includes(9000), "above range"); + }, "IDBKeyRange.includes() with an only range"); + +</script> diff --git a/tests/wpt/web-platform-tests/README.md b/tests/wpt/web-platform-tests/README.md index cac36bc2f37..d207a8bd15c 100644 --- a/tests/wpt/web-platform-tests/README.md +++ b/tests/wpt/web-platform-tests/README.md @@ -137,14 +137,6 @@ they will be under `html/browsers/history/the-history-interface/`. Various resources that tests depend on are in `common`, `images`, and `fonts`. - -If you're looking at a section of the specification and can't figure -out where the directory is for it in the tree, just run: - -``` -node tools/scripts/id2path.js your-id -``` - Branches ======== diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.htm b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.htm index 60a6eeecd83..dde94f23986 100644 --- a/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.htm +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.htm @@ -9,21 +9,6 @@ </head> <body> <div id="log"></div> - <script> - var test = async_test() - test.step(function() { - var client = new XMLHttpRequest() - client.open("GET", "...") - client.onreadystatechange = function() { - test.step(function() { - assert_unreached() - }) - } - client.abort() - assert_equals(client.readyState, 0) - assert_throws("InvalidStateError", function() { client.send("test") }, "calling send() after abort()") - }) - test.done() - </script> + <script src="abort-during-open.js"></script> </body> </html> diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.js b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.js new file mode 100644 index 00000000000..4ddb84fe8b7 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.js @@ -0,0 +1,14 @@ +var test = async_test() +test.step(function() { + var client = new XMLHttpRequest() + client.open("GET", "...") + client.onreadystatechange = function() { + test.step(function() { + assert_unreached() + }) + } + client.abort() + assert_equals(client.readyState, 0) + assert_throws("InvalidStateError", function() { client.send("test") }, "calling send() after abort()") +}) +test.done() diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.worker.js b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.worker.js new file mode 100644 index 00000000000..ffb687d0c87 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/abort-during-open.worker.js @@ -0,0 +1,3 @@ +importScripts("/resources/testharness.js"); +importScripts("abort-during-open.js"); +done(); diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth7/corsenabled.py b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth7/corsenabled.py new file mode 100644 index 00000000000..ce22697390d --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth7/corsenabled.py @@ -0,0 +1,20 @@ +import imp +import os + +def main(request, response): + response.headers.set('Access-Control-Allow-Origin', request.headers.get("origin")); + response.headers.set('Access-Control-Allow-Credentials', 'true'); + response.headers.set('Access-Control-Allow-Methods', 'GET'); + response.headers.set('Access-Control-Allow-Headers', 'authorization, x-user, x-pass'); + response.headers.set('Access-Control-Expose-Headers', 'x-challenge, xhr-user, ses-user'); + auth = imp.load_source("", os.path.join(os.path.abspath(os.curdir), + "XMLHttpRequest", + "resources", + "authentication.py")) + if request.method == "OPTIONS": + return "" + else: + return auth.main(request, response) + + + diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth8/corsenabled-no-authorize.py b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth8/corsenabled-no-authorize.py new file mode 100644 index 00000000000..cb40efb081b --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth8/corsenabled-no-authorize.py @@ -0,0 +1,20 @@ +import imp +import os + +def main(request, response): + response.headers.set('Access-Control-Allow-Origin', request.headers.get("origin")); + response.headers.set('Access-Control-Allow-Credentials', 'true'); + response.headers.set('Access-Control-Allow-Methods', 'GET'); + response.headers.set('Access-Control-Allow-Headers', 'x-user, x-pass'); + response.headers.set('Access-Control-Expose-Headers', 'x-challenge, xhr-user, ses-user'); + auth = imp.load_source("", os.path.join(os.path.abspath(os.curdir), + "XMLHttpRequest", + "resources", + "authentication.py")) + if request.method == "OPTIONS": + return "" + else: + return auth.main(request, response) + + + diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth9/auth.py b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth9/auth.py new file mode 100644 index 00000000000..8b6682686c8 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/resources/auth9/auth.py @@ -0,0 +1,10 @@ +import imp +import os + +here = os.path.split(os.path.abspath(__file__))[0] + +def main(request, response): + auth = imp.load_source("", os.path.join(here, + "..", + "authentication.py")) + return auth.main(request, response) diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader-and-arguments.htm b/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader-and-arguments.htm new file mode 100644 index 00000000000..9915e8821c9 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader-and-arguments.htm @@ -0,0 +1,36 @@ +<!doctype html> +<html> + <head> + <title>XMLHttpRequest: send() - "Basic" authenticated request using setRequestHeader() and open() arguments (asserts header wins)</title> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script src="/common/utils.js"></script> + <!-- These spec references do not make much sense simply because the spec doesn't say very much about this.. --> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method" data-tested-assertations="following::ol[1]/li[6]" /> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following::code[contains(@title,'http-authorization')]/.." /> + </head> + <body> + <div id="log"></div> + <script> + var test = async_test() + test.step(function() { + var client = new XMLHttpRequest(), + urlstart = location.host + location.pathname.replace(/\/[^\/]*$/, '/'), + user = token() + client.open("GET", location.protocol+'//'+urlstart + "resources/auth9/auth.py", false, 'open-' + user, 'open-pass') + client.setRequestHeader("x-user", user) + client.setRequestHeader('Authorization', 'Basic ' + btoa(user + ":pass")) + client.onreadystatechange = function () { + if (client.readyState < 4) {return} + test.step( function () { + assert_equals(client.responseText, user + '\npass') + assert_equals(client.status, 200) + assert_equals(client.getResponseHeader('x-challenge'), 'DID-NOT') + test.done() + }) + } + client.send(null) + }) + </script> + </body> +</html> diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm b/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm new file mode 100644 index 00000000000..14edf5bd778 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/send-authentication-cors-setrequestheader-no-cred.htm @@ -0,0 +1,61 @@ +<!doctype html> +<html> + <head> + <title>XMLHttpRequest: send() - "Basic" authenticated CORS request using setRequestHeader() but not setting withCredentials (expects to succeed)</title> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + <script src="/common/utils.js"></script> + <!-- These spec references do not make much sense simply because the spec doesn't say very much about this.. --> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-setrequestheader()-method" data-tested-assertations="following::ol[1]/li[6]" /> + <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following::code[contains(@title,'http-authorization')]/.." /> + </head> + <body> + <div id="log"></div> + <script> + function doTest(desc, pathsuffix, conditionsFunc, errorFunc, endFunc) { + var test = async_test(desc) + test.step(function() { + var client = new XMLHttpRequest(), + urlstart = location.host + location.pathname.replace(/\/[^\/]*$/, '/'), + user = token() + client.open("GET", location.protocol + "//www1." + urlstart + "resources/" + pathsuffix, false) + client.setRequestHeader("x-user", user) + client.setRequestHeader("x-pass", 'pass') + client.setRequestHeader("Authorization", "Basic " + btoa(user + ":pass")) + client.onerror = test.step_func(errorFunc) + client.onreadystatechange = test.step_func(function () { + if(client.readyState < 4) {return} + conditionsFunc(client, test, user) + }) + if(endFunc) { + client.onloadend = test.step_func(endFunc) + } + client.send(null) + }) + } + + doTest("CORS request with setRequestHeader auth to URL accepting Authorization header", "auth7/corsenabled.py", function (client, test, user) { + assert_true(client.responseText == (user + "\npass"), "responseText should contain the right user and password") + assert_equals(client.status, 200) + assert_equals(client.getResponseHeader("x-challenge"), "DID-NOT") + test.done() + }, function(){ + assert_unreached("Cross-domain request is permitted and should not cause an error") + this.done() + }) + + var errorFired = false; + doTest("CORS request with setRequestHeader auth to URL NOT accepting Authorization header", "auth8/corsenabled-no-authorize.py", function (client, test, user) { + assert_equals(client.responseText, '') + assert_equals(client.status, 0) + }, function(e){ + errorFired = true + assert_equals(e.type, 'error', 'Error event fires when Authorize is a user-set header but not allowed by the CORS endpoint') + }, function() { + assert_true(errorFired, 'The error event should fire') + this.done() + }) + + </script> + </body> +</html> diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.htm b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.htm index 5b22a3da871..cbcbdb44e00 100644 --- a/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.htm +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.htm @@ -8,14 +8,6 @@ </head> <body> <div id="log"></div> - <script> - test(function() { - var client = new XMLHttpRequest() - client.open("GET", "resources/well-formed.xml") - client.send(null) - assert_throws("InvalidStateError", function() { client.send(null) }) - client.abort() - }) - </script> + <script src="send-send.js"></script> </body> </html> diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.js b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.js new file mode 100644 index 00000000000..2e7fe865f3b --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.js @@ -0,0 +1,7 @@ +test(function() { + var client = new XMLHttpRequest() + client.open("GET", "resources/well-formed.xml") + client.send(null) + assert_throws("InvalidStateError", function() { client.send(null) }) + client.abort() +}) diff --git a/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.worker.js b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.worker.js new file mode 100644 index 00000000000..9d34ce63df2 --- /dev/null +++ b/tests/wpt/web-platform-tests/XMLHttpRequest/send-send.worker.js @@ -0,0 +1,3 @@ +importScripts("/resources/testharness.js"); +importScripts("send-send.js"); +done(); diff --git a/tests/wpt/web-platform-tests/conformance-checkers/messages.json b/tests/wpt/web-platform-tests/conformance-checkers/messages.json index 8f3417246d5..4873521b09e 100644 --- a/tests/wpt/web-platform-tests/conformance-checkers/messages.json +++ b/tests/wpt/web-platform-tests/conformance-checkers/messages.json @@ -2384,7 +2384,7 @@ "xhtml/elements/keygen/360-novalid.xhtml": "The \u201clabel\u201d element may contain at most one \u201cbutton\u201d, \u201cinput\u201d, \u201ckeygen\u201d, \u201cmeter\u201d, \u201coutput\u201d, \u201cprogress\u201d, \u201cselect\u201d, or \u201ctextarea\u201d descendant.", "xhtml/elements/keygen/361-novalid.xhtml": "The element \u201ckeygen\u201d must not appear as a descendant of the \u201ca\u201d element.", "xhtml/elements/link/001-novalid.xhtml": "Element \u201clink\u201d is missing required attribute \u201chref\u201d.", - "xhtml/elements/menu/001-haswarn.xhtml": "The \u201cmenu\u201d element is not supported by browsers yet. It would probably be better to wait for implementations.", + "xhtml/elements/menu/001-haswarn.xhtml": "The \u201cmenu\u201d element is not supported in all browsers. Please be sure to test, and consider using a polyfill.", "xhtml/elements/menu/001-novalid.xhtml": "The \u201ccontextmenu\u201d attribute must refer to a \u201cmenu\u201d element.", "xhtml/elements/meter/010-novalid.xhtml": "The value of the \u201cmin\u201d attribute must be less than or equal to the value of the \u201cvalue\u201d attribute.", "xhtml/elements/meter/011-novalid.xhtml": "Element \u201cmeter\u201d is missing required attribute \u201cvalue\u201d.", diff --git a/tests/wpt/web-platform-tests/docs/test-format-guidelines.md b/tests/wpt/web-platform-tests/docs/test-format-guidelines.md index 70511804e0e..430702ba769 100644 --- a/tests/wpt/web-platform-tests/docs/test-format-guidelines.md +++ b/tests/wpt/web-platform-tests/docs/test-format-guidelines.md @@ -224,33 +224,25 @@ information in one of two ways: In order for the latter to work, a file must either have a name of the form `{name}.sub.{ext}` e.g. `example-test.sub.html` or be referenced through a URL containing `pipe=sub` in the query string -e.g. `example-test.html?pipe=sub`. The substitution syntax uses {% raw %} `{{ -}}` {% endraw %} to delimit items for substitution. For example to substitute in +e.g. `example-test.html?pipe=sub`. The substitution syntax uses `{{ }}` +to delimit items for substitution. For example to substitute in the host name on which the tests are running, one would write: -{% raw %} {{host}} -{% endraw %} As well as the host, one can get full domains, including subdomains using the `domains` dictionary. For example: -{% raw %} {{domains[www]}} -{% endraw %} would be replaced by the fully qualified domain name of the `www` subdomain. Ports are also available on a per-protocol basis e.g. -{% raw %} {{ports[ws][0]}} -{% endraw %} is replaced with the first (and only) websockets port, whilst -{% raw %} {{ports[http][1]}} -{% endraw %} is replaced with the second HTTP port. @@ -258,9 +250,7 @@ The request URL itself can be used as part of the substitution using the `location` dictionary, which has entries matching the `window.location` API. For example -{% raw %} {{location[host]}} -{% endraw %} is replaced by `hostname:port` for the current request. diff --git a/tests/wpt/web-platform-tests/dom/OWNERS b/tests/wpt/web-platform-tests/dom/OWNERS index fad498154e4..6e450949e11 100644 --- a/tests/wpt/web-platform-tests/dom/OWNERS +++ b/tests/wpt/web-platform-tests/dom/OWNERS @@ -1,4 +1,5 @@ @ayg +@foolip @jdm @Ms2ger @plehegar diff --git a/tests/wpt/web-platform-tests/dom/nodes/Document-characterSet-normalization.html b/tests/wpt/web-platform-tests/dom/nodes/Document-characterSet-normalization.html index e7a4ab5f838..48300589b85 100644 --- a/tests/wpt/web-platform-tests/dom/nodes/Document-characterSet-normalization.html +++ b/tests/wpt/web-platform-tests/dom/nodes/Document-characterSet-normalization.html @@ -282,6 +282,7 @@ var encodingMap = { ], "shift_jis": [ "csshiftjis", + "ms932", "ms_kanji", "shift-jis", "shift_jis", diff --git a/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.html b/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.html index 38b9d1f55c5..37e05808e43 100644 --- a/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.html +++ b/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.html @@ -33,11 +33,23 @@ function testAlias(arg, iface) { "isTrusted should be initialized to false"); }, "createEvent('" + arg + "') should be initialized correctly."); } -aliases.forEach(function(alias) { - testAlias(alias[0], alias[1]); - testAlias(alias[0].toLowerCase(), alias[1]); - testAlias(alias[0].toUpperCase(), alias[1]); -}); +for (var alias in aliases) { + var iface = aliases[alias]; + testAlias(alias, iface); + testAlias(alias.toLowerCase(), iface); + testAlias(alias.toUpperCase(), iface); + + if (!alias.endsWith("s")) { + var plural = alias + "s"; + if (!(plural in aliases)) { + test(function () { + assert_throws("NOT_SUPPORTED_ERR", function () { + var evt = document.createEvent(plural); + }); + }, 'Should throw NOT_SUPPORTED_ERR for pluralized legacy event interface "' + plural + '"'); + } + } +} test(function() { assert_throws("NOT_SUPPORTED_ERR", function() { @@ -61,11 +73,73 @@ This list is not exhaustive. */ var someNonCreateableEvents = [ "AnimationEvent", + "AnimationPlayerEvent", + "ApplicationCacheErrorEvent", + "AudioProcessingEvent", + "AutocompleteErrorEvent", + "BeforeInstallPromptEvent", + "BeforeUnloadEvent", + "BlobEvent", + "ClipboardEvent", + "CloseEvent", + "CompositionEvent", + "DeviceLightEvent", + "DeviceMotionEvent", + "DeviceOrientationEvent", "DragEvent", "ErrorEvent", + "ExtendableEvent", + "ExtendableMessageEvent", + "FetchEvent", "FocusEvent", + "FontFaceSetLoadEvent", + "GamepadEvent", + "GeofencingEvent", + "HashChangeEvent", + "IDBVersionChangeEvent", + "InstallEvent", + "KeyEvent", + "MIDIConnectionEvent", + "MIDIMessageEvent", + "MediaEncryptedEvent", + "MediaKeyEvent", + "MediaKeyMessageEvent", + "MediaQueryListEvent", + "MediaStreamEvent", + "MediaStreamTrackEvent", + "MutationEvent", + "NotificationEvent", + "OfflineAudioCompletionEvent", + "OrientationEvent", + "PageTransitionEvent", "PointerEvent", + "PopStateEvent", + "PresentationConnectionAvailableEvent", + "PresentationConnectionCloseEvent", + "ProgressEvent", + "PromiseRejectionEvent", + "PushEvent", + "RTCDTMFToneChangeEvent", + "RTCDataChannelEvent", + "RTCIceCandidateEvent", + "RelatedEvent", + "ResourceProgressEvent", + "SVGEvent", + "SVGZoomEvent", + "SecurityPolicyViolationEvent", + "ServicePortConnectEvent", + "ServiceWorkerMessageEvent", + "SpeechRecognitionError", + "SpeechRecognitionEvent", + "SpeechSynthesisEvent", + "StorageEvent", + "SyncEvent", + "TextEvent", + "TrackEvent", "TransitionEvent", + "WebGLContextEvent", + "WebKitAnimationEvent", + "WebKitTransitionEvent", "WheelEvent" ]; someNonCreateableEvents.forEach(function (eventInterface) { diff --git a/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.js b/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.js index 90cc73c08cd..86b4b678ccb 100644 --- a/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.js +++ b/tests/wpt/web-platform-tests/dom/nodes/Document-createEvent.js @@ -1,14 +1,13 @@ -var aliases = [ - ["CustomEvent", "CustomEvent"], - ["Event", "Event"], - ["Events", "Event"], - ["HTMLEvents", "Event"], - ["KeyboardEvent", "KeyboardEvent"], - ["KeyEvents", "KeyboardEvent"], - ["MessageEvent", "MessageEvent"], - ["MouseEvent", "MouseEvent"], - ["MouseEvents", "MouseEvent"], - ["TouchEvent", "TouchEvent"], - ["UIEvent", "UIEvent"], - ["UIEvents", "UIEvent"] -]; +var aliases = { + "CustomEvent": "CustomEvent", + "Event": "Event", + "Events": "Event", + "HTMLEvents": "Event", + "KeyboardEvent": "KeyboardEvent", + "MessageEvent": "MessageEvent", + "MouseEvent": "MouseEvent", + "MouseEvents": "MouseEvent", + "TouchEvent": "TouchEvent", + "UIEvent": "UIEvent", + "UIEvents": "UIEvent" +}; diff --git a/tests/wpt/web-platform-tests/dom/nodes/attributes.js b/tests/wpt/web-platform-tests/dom/nodes/attributes.js index 096dd5fd7a3..ef32bf6a677 100644 --- a/tests/wpt/web-platform-tests/dom/nodes/attributes.js +++ b/tests/wpt/web-platform-tests/dom/nodes/attributes.js @@ -6,6 +6,7 @@ function attr_is(attr, v, ln, ns, p, n) { assert_equals(attr.namespaceURI, ns) assert_equals(attr.prefix, p) assert_equals(attr.name, n) + assert_equals(attr.nodeName, n); assert_equals(attr.specified, true) } diff --git a/tests/wpt/web-platform-tests/encoding/OWNERS b/tests/wpt/web-platform-tests/encoding/OWNERS index 4917e26650a..9467eae8ec5 100644 --- a/tests/wpt/web-platform-tests/encoding/OWNERS +++ b/tests/wpt/web-platform-tests/encoding/OWNERS @@ -1,2 +1,3 @@ +@foolip @inexorabletash @sideshowbarker diff --git a/tests/wpt/web-platform-tests/encoding/resources/encodings.js b/tests/wpt/web-platform-tests/encoding/resources/encodings.js index 6771a44967a..1cdf585eecc 100644 --- a/tests/wpt/web-platform-tests/encoding/resources/encodings.js +++ b/tests/wpt/web-platform-tests/encoding/resources/encodings.js @@ -419,6 +419,7 @@ var encodings_table = { "labels": [ "csshiftjis", + "ms932", "ms_kanji", "shift-jis", "shift_jis", diff --git a/tests/wpt/web-platform-tests/fetch/api/basic/stream-response.js b/tests/wpt/web-platform-tests/fetch/api/basic/stream-response.js index ea370bc7cdf..322b164557d 100644 --- a/tests/wpt/web-platform-tests/fetch/api/basic/stream-response.js +++ b/tests/wpt/web-platform-tests/fetch/api/basic/stream-response.js @@ -11,8 +11,6 @@ function streamBody(reader, test, count) { } else { test.step(function() { assert_true(count >= 2, "Retrieve body progressively"); - test.done(); - return; }); } }); @@ -20,16 +18,14 @@ function streamBody(reader, test, count) { //simulate streaming: //count is large enough to let the UA deliver the body before it is completely retrieved -async_test(function(test) { - fetch(RESOURCES_DIR + "trickle.py?ms=30&count=100").then(function(resp) { +promise_test(function(test) { + return fetch(RESOURCES_DIR + "trickle.py?ms=30&count=100").then(function(resp) { var count = 0; if (resp.body) return streamBody(resp.body.getReader(), test, count); else test.step(function() { assert_unreached( "Body does not exist in response"); - test.done(); - return; }); }); }, "Stream response's body"); diff --git a/tests/wpt/web-platform-tests/fetch/api/headers/headers-basic.html b/tests/wpt/web-platform-tests/fetch/api/headers/headers-basic.html index ddbb9a74b7d..5c374ed1faf 100644 --- a/tests/wpt/web-platform-tests/fetch/api/headers/headers-basic.html +++ b/tests/wpt/web-platform-tests/fetch/api/headers/headers-basic.html @@ -25,7 +25,7 @@ var parameters = [null, 1]; parameters.forEach(function(parameter) { test(function() { - assert_throws(new TypeError(), () => new Headers(parameter)); + assert_throws(new TypeError(), function() { new Headers(parameter) }); }, "Create headers with " + parameter + " should throw"); }); diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-consume-empty.html b/tests/wpt/web-platform-tests/fetch/api/request/request-consume-empty.html new file mode 100644 index 00000000000..a2bb3e2a9bd --- /dev/null +++ b/tests/wpt/web-platform-tests/fetch/api/request/request-consume-empty.html @@ -0,0 +1,103 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <title>Request consume empty bodies</title> + <meta name="help" href="https://fetch.spec.whatwg.org/#request"> + <meta name="help" href="https://fetch.spec.whatwg.org/#body-mixin"> + <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + </head> + <body> + <script> + function checkBodyText(request) { + return request.text().then(function(bodyAsText) { + assert_equals(bodyAsText, "", "Resolved value should be empty"); + assert_false(request.bodyUsed); + }); + } + + function checkBodyBlob(request) { + return request.blob().then(function(bodyAsBlob) { + var promise = new Promise(function(resolve, reject) { + var reader = new FileReader(); + reader.onload = function(evt) { + resolve(reader.result) + }; + reader.onerror = function() { + reject("Blob's reader failed"); + }; + reader.readAsText(bodyAsBlob); + }); + return promise.then(function(body) { + assert_equals(body, "", "Resolved value should be empty"); + assert_false(request.bodyUsed); + }); + }); + } + + function checkBodyArrayBuffer(request) { + return request.arrayBuffer().then(function(bodyAsArrayBuffer) { + assert_equals(bodyAsArrayBuffer.byteLength, 0, "Resolved value should be empty"); + assert_false(request.bodyUsed); + }); + } + + function checkBodyJSON(request) { + return request.json().then( + function(bodyAsJSON) { + assert_unreached("JSON parsing should fail"); + }, + function() { + assert_false(request.bodyUsed); + }); + } + + function checkBodyFormData(request) { + return request.formData().then(function(bodyAsFormData) { + assert_true(bodyAsFormData instanceof FormData, "Should receive a FormData"); + assert_false(request.bodyUsed); + }); + } + + function checkRequestWithNoBody(bodyType, checkFunction) { + promise_test(function(test) { + var request = new Request("", {"method": "POST"}); + assert_false(request.bodyUsed); + return checkFunction(request); + }, "Consume request's body as " + bodyType); + } + + var formData = new FormData(); + checkRequestWithNoBody("text", checkBodyText); + checkRequestWithNoBody("blob", checkBodyBlob); + checkRequestWithNoBody("arrayBuffer", checkBodyArrayBuffer); + checkRequestWithNoBody("json", checkBodyJSON); + checkRequestWithNoBody("formData", checkBodyFormData); + + function checkRequestWithEmptyBody(bodyType, body, asText) { + promise_test(function(test) { + var request = new Request("", {"method": "POST", "body": body}); + assert_false(request.bodyUsed, "bodyUsed is false at init"); + if (asText) { + return request.text().then(function(bodyAsString) { + assert_equals(bodyAsString.length, 0, "Resolved value should be empty"); + assert_true(request.bodyUsed, "bodyUsed is true after being consumed"); + }); + } + return request.arrayBuffer().then(function(bodyAsArrayBuffer) { + assert_equals(bodyAsArrayBuffer.byteLength, 0, "Resolved value should be empty"); + assert_true(request.bodyUsed, "bodyUsed is true after being consumed"); + }); + }, "Consume empty " + bodyType + " request body as " + (asText ? "text" : "arrayBuffer")); + } + + // FIXME: Add BufferSource, FormData and URLSearchParams. + checkRequestWithEmptyBody("blob", new Blob([], { "type" : "text/plain" }), false); + checkRequestWithEmptyBody("text", "", false); + checkRequestWithEmptyBody("blob", new Blob([], { "type" : "text/plain" }), true); + checkRequestWithEmptyBody("text", "", true); + </script> + </body> +</html> diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-consume.html b/tests/wpt/web-platform-tests/fetch/api/request/request-consume.html index 3c45ee6a288..2b12b63ef15 100644 --- a/tests/wpt/web-platform-tests/fetch/api/request/request-consume.html +++ b/tests/wpt/web-platform-tests/fetch/api/request/request-consume.html @@ -8,6 +8,7 @@ <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> + <script src="../resources/utils.js"></script> </head> <body> <script> @@ -37,19 +38,9 @@ }); } - <!-- Taken from https://developers.google.com --> - function str2ab(str) { - var buf = new ArrayBuffer(str.length*2); // 2 bytes for each char - var bufView = new Uint16Array(buf); - for (var i=0, strLen=str.length; i < strLen; i++) { - bufView[i] = str.charCodeAt(i); - } - return buf; - } - function checkBodyArrayBuffer(request, expectedBody) { - return request.arrayBuffer().then( function(bodyAsArrayBuffer) { - assert_array_equals(bodyAsArrayBuffer, str2ab(expectedBody), "Retrieve and verify request's body"); + return request.arrayBuffer().then(function(bodyAsArrayBuffer) { + validateBufferFromString(bodyAsArrayBuffer, expectedBody, "Retrieve and verify request's body"); assert_true(request.bodyUsed, "body as arrayBuffer: bodyUsed turned true"); }); } @@ -79,12 +70,28 @@ var formData = new FormData(); formData.append("name", "value") - checkRequestBody("This is request's body", "text", checkBodyText); - checkRequestBody("This is request's body", "blob", checkBodyBlob); - checkRequestBody("This is request's body", "arrayBuffer", checkBodyArrayBuffer); - checkRequestBody(JSON.stringify("This is request's body"), "json", checkBodyJSON); + var textData = JSON.stringify("This is response's body"); + var blob = new Blob([textData], { "type" : "text/plain" }); + + checkRequestBody(textData, "text", checkBodyText); + checkRequestBody(textData, "blob", checkBodyBlob); + checkRequestBody(textData, "arrayBuffer", checkBodyArrayBuffer); + checkRequestBody(textData, "json", checkBodyJSON); checkRequestBody(formData, "formData", checkBodyFormData); + function checkBlobResponseBody(blobBody, blobData, bodyType, checkFunction) { + promise_test(function(test) { + var response = new Response(blobBody); + assert_false(response.bodyUsed, "bodyUsed is false at init"); + return checkFunction(response, blobData); + }, "Consume blob response's body as " + bodyType); + } + + checkBlobResponseBody(blob, textData, "blob", checkBodyBlob); + checkBlobResponseBody(blob, textData, "text", checkBodyText); + checkBlobResponseBody(blob, textData, "json", checkBodyJSON); + checkBlobResponseBody(blob, textData, "arrayBuffer", checkBodyArrayBuffer); + var goodJSONValues = ["null", "1", "true", "\"string\""]; goodJSONValues.forEach(function(value) { promise_test(function(test) { diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-init-002.html b/tests/wpt/web-platform-tests/fetch/api/request/request-init-002.html index baacc67e430..fa2fe18eac5 100644 --- a/tests/wpt/web-platform-tests/fetch/api/request/request-init-002.html +++ b/tests/wpt/web-platform-tests/fetch/api/request/request-init-002.html @@ -23,18 +23,23 @@ } }, "Initialize Request with headers values"); + function makeRequestInit(body, method) { + return {"method": method, "body": body}; + } + function checkRequestInit(body, bodyType, expectedTextBody) { promise_test(function(test) { - var request = new Request("", {"method": "POST", "body": body}); - assert_throws(new TypeError(), - function() { new Request("", {"method": "GET", "body": body}); } - ); - assert_throws(new TypeError(), - function() { new Request("", {"method": "HEAD", "body": body}); } - ); + var request = new Request("", makeRequestInit(body, "POST")); + if (body) { + assert_throws(new TypeError(), + function() { new Request("", makeRequestInit(body, "GET")); } + ); + } else { + new Request("", makeRequestInit(body, "GET")); // should not throw + } var reqHeaders = request.headers; var mime = reqHeaders.get("Content-Type"); - assert_true(mime && mime.search(bodyType) > -1, "Content-Type header should be \"" + bodyType + "\", not \"" + mime + "\""); + assert_true(!body || (mime && mime.search(bodyType) > -1), "Content-Type header should be \"" + bodyType + "\", not \"" + mime + "\""); return request.text().then(function(bodyAsText) { //not equals: cannot guess formData exact value assert_true( bodyAsText.search(expectedTextBody) > -1, "Retrieve and verify request body"); @@ -47,6 +52,8 @@ formaData.append("name", "value"); var usvString = "This is a USVString" + checkRequestInit(undefined, undefined, ""); + checkRequestInit(null, null, ""); checkRequestInit(blob, "application/octet-binary", "This is a blob"); checkRequestInit(formaData, "multipart/form-data", "name=\"name\"\r\n\r\nvalue"); checkRequestInit(usvString, "text/plain;charset=UTF-8", "This is a USVString"); diff --git a/tests/wpt/web-platform-tests/fetch/api/resources/utils.js b/tests/wpt/web-platform-tests/fetch/api/resources/utils.js index f9436649403..f97050dc879 100644 --- a/tests/wpt/web-platform-tests/fetch/api/resources/utils.js +++ b/tests/wpt/web-platform-tests/fetch/api/resources/utils.js @@ -44,25 +44,31 @@ function checkRequest(request, ExpectedValuesDict) { } } -//check reader's text content in an asyncronous test -function readTextStream(reader, asyncTest, expectedValue, retrievedText) { - if (!retrievedText) - retrievedText = ""; - reader.read().then(function(data) { +function stringToArray(str) { + var array = new Uint8Array(str.length); + for (var i=0, strLen = str.length; i < strLen; i++) + array[i] = str.charCodeAt(i); + return array; +} + +function validateBufferFromString(buffer, expectedValue, message) +{ + return assert_array_equals(new Uint8Array(buffer), stringToArray(expectedValue), message); +} + +function validateStreamFromString(reader, expectedValue, retrievedArrayBuffer) { + return reader.read().then(function(data) { if (!data.done) { - var decoder = new TextDecoder(); - retrievedText += decoder.decode(data.value); - readTextStream(reader, asyncTest, expectedValue, retrievedText); - return; + var newBuffer; + if (retrievedArrayBuffer) { + newBuffer = new ArrayBuffer(data.value.length + retrievedArrayBuffer.length); + newBuffer.set(retrievedArrayBuffer, 0); + newBuffer.set(data.value, retrievedArrayBuffer.length); + } else { + newBuffer = data.value; + } + return validateStreamFromString(reader, expectedValue, newBuffer); } - asyncTest.step(function() { - assert_equals(retrievedText, expectedValue, "Retrieve and verify stream"); - asyncTest.done(); - }); - }).catch(function(e) { - asyncTest.step(function() { - assert_unreached("Cannot read stream " + e); - asyncTest.done(); - }); + validateBufferFromString(retrievedArrayBuffer, expectedValue, "Retrieve and verify stream"); }); } diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-clone.html b/tests/wpt/web-platform-tests/fetch/api/response/response-clone.html index 8afcf36d831..2d36d97685d 100644 --- a/tests/wpt/web-platform-tests/fetch/api/response/response-clone.html +++ b/tests/wpt/web-platform-tests/fetch/api/response/response-clone.html @@ -45,12 +45,12 @@ "Expect response.headers has name:value header"); }, "Check Response's clone has the expected attribute values"); - async_test(function(test) { - readTextStream(response.body.getReader(), test, body); + promise_test(function(test) { + return validateStreamFromString(response.body.getReader(), body); }, "Check orginal response's body after cloning"); - async_test(function(test) { - readTextStream(clonedResponse.body.getReader(), test, body); + promise_test(function(test) { + return validateStreamFromString(clonedResponse.body.getReader(), body); }, "Check cloned response's body"); promise_test(function(test) { @@ -63,4 +63,4 @@ }, "Cannot clone a disturbed response"); </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-consume-empty.html b/tests/wpt/web-platform-tests/fetch/api/response/response-consume-empty.html new file mode 100644 index 00000000000..78838469933 --- /dev/null +++ b/tests/wpt/web-platform-tests/fetch/api/response/response-consume-empty.html @@ -0,0 +1,103 @@ +<!doctype html> +<html> + <head> + <meta charset="utf-8"> + <title>Response consume empty bodies</title> + <meta name="help" href="https://fetch.spec.whatwg.org/#response"> + <meta name="help" href="https://fetch.spec.whatwg.org/#body-mixin"> + <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> + </head> + <body> + <script> + function checkBodyText(response) { + return response.text().then(function(bodyAsText) { + assert_equals(bodyAsText, "", "Resolved value should be empty"); + assert_false(response.bodyUsed); + }); + } + + function checkBodyBlob(response) { + return response.blob().then(function(bodyAsBlob) { + var promise = new Promise(function(resolve, reject) { + var reader = new FileReader(); + reader.onload = function(evt) { + resolve(reader.result) + }; + reader.onerror = function() { + reject("Blob's reader failed"); + }; + reader.readAsText(bodyAsBlob); + }); + return promise.then(function(body) { + assert_equals(body, "", "Resolved value should be empty"); + assert_false(response.bodyUsed); + }); + }); + } + + function checkBodyArrayBuffer(response) { + return response.arrayBuffer().then(function(bodyAsArrayBuffer) { + assert_equals(bodyAsArrayBuffer.byteLength, 0, "Resolved value should be empty"); + assert_false(response.bodyUsed); + }); + } + + function checkBodyJSON(response) { + return response.json().then( + function(bodyAsJSON) { + assert_unreached("JSON parsing should fail"); + }, + function() { + assert_false(response.bodyUsed); + }); + } + + function checkBodyFormData(response) { + return response.formData().then(function(bodyAsFormData) { + assert_true(bodyAsFormData instanceof FormData, "Should receive a FormData"); + assert_false(response.bodyUsed); + }); + } + + function checkResponseWithNoBody(bodyType, checkFunction) { + promise_test(function(test) { + var response = new Response(); + assert_false(response.bodyUsed); + return checkFunction(response); + }, "Consume response's body as " + bodyType); + } + + var formData = new FormData(); + checkResponseWithNoBody("text", checkBodyText); + checkResponseWithNoBody("blob", checkBodyBlob); + checkResponseWithNoBody("arrayBuffer", checkBodyArrayBuffer); + checkResponseWithNoBody("json", checkBodyJSON); + checkResponseWithNoBody("formData", checkBodyFormData); + + function checkResponseWithEmptyBody(bodyType, body, asText) { + promise_test(function(test) { + var response = new Response(body); + assert_false(response.bodyUsed, "bodyUsed is false at init"); + if (asText) { + return response.text().then(function(bodyAsString) { + assert_equals(bodyAsString.length, 0, "Resolved value should be empty"); + assert_true(response.bodyUsed, "bodyUsed is true after being consumed"); + }); + } + return response.arrayBuffer().then(function(bodyAsArrayBuffer) { + assert_equals(bodyAsArrayBuffer.byteLength, 0, "Resolved value should be empty"); + assert_true(response.bodyUsed, "bodyUsed is true after being consumed"); + }); + }, "Consume empty " + bodyType + " response body as " + (asText ? "text" : "arrayBuffer")); + } + + // FIXME: Add BufferSource, FormData and URLSearchParams. + checkResponseWithEmptyBody("blob", new Blob([], { "type" : "text/plain" }), false); + checkResponseWithEmptyBody("text", "", false); + checkResponseWithEmptyBody("blob", new Blob([], { "type" : "text/plain" }), true); + checkResponseWithEmptyBody("text", "", true); + </script> + </body> +</html> diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html b/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html index 14dcad795c2..02814ff5be9 100644 --- a/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html +++ b/tests/wpt/web-platform-tests/fetch/api/response/response-consume.html @@ -8,6 +8,7 @@ <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> + <script src="../resources/utils.js"></script> </head> <body> <script> @@ -39,16 +40,14 @@ function checkBodyArrayBuffer(response, expectedBody) { return response.arrayBuffer().then( function(bodyAsArrayBuffer) { - var decoder = new TextDecoder("utf-8"); - var strBody = decoder.decode(bodyAsArrayBuffer); - assert_equals(strBody, expectedBody, "Retrieve and verify response's body"); + validateBufferFromString(bodyAsArrayBuffer, expectedBody, "Retrieve and verify response's body"); assert_true(response.bodyUsed, "body as arrayBuffer: bodyUsed turned true"); }); } - function checkBodyJson(response, expectedBody) { - return response.json().then(function(bodyAsJson) { - var strBody = JSON.stringify(bodyAsJson) + function checkBodyJSON(response, expectedBody) { + return response.json().then(function(bodyAsJSON) { + var strBody = JSON.stringify(bodyAsJSON) assert_equals(strBody, expectedBody, "Retrieve and verify response's body"); assert_true(response.bodyUsed, "body as json: bodyUsed turned true"); }); @@ -70,12 +69,29 @@ } var formData = new FormData(); - formData.append("name", "value") - checkResponseBody("This is response's body", "text", checkBodyText); - checkResponseBody("This is response's body", "blob", checkBodyBlob); - checkResponseBody("This is response's body", "arrayBuffer", checkBodyArrayBuffer); - checkResponseBody(JSON.stringify("This is response's body"), "json", checkBodyJson); + formData.append("name", "value"); + var textData = JSON.stringify("This is response's body"); + var blob = new Blob([textData], { "type" : "text/plain" }); + + checkResponseBody(textData, "text", checkBodyText); + checkResponseBody(textData, "blob", checkBodyBlob); + checkResponseBody(textData, "arrayBuffer", checkBodyArrayBuffer); + checkResponseBody(textData, "json", checkBodyJSON); checkResponseBody(formData, "formData", checkBodyFormData); + + function checkBlobResponseBody(blobBody, blobData, bodyType, checkFunction) { + promise_test(function(test) { + var response = new Response(blobBody); + assert_false(response.bodyUsed, "bodyUsed is false at init"); + return checkFunction(response, blobData); + }, "Consume blob response's body as " + bodyType); + } + + checkBlobResponseBody(blob, textData, "blob", checkBodyBlob); + checkBlobResponseBody(blob, textData, "text", checkBodyText); + checkBlobResponseBody(blob, textData, "json", checkBodyJSON); + checkBlobResponseBody(blob, textData, "arrayBuffer", checkBodyArrayBuffer); + </script> </body> </html> diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-init-002.html b/tests/wpt/web-platform-tests/fetch/api/response/response-init-002.html index 29008584a85..37fcb6d2e3d 100644 --- a/tests/wpt/web-platform-tests/fetch/api/response/response-init-002.html +++ b/tests/wpt/web-platform-tests/fetch/api/response/response-init-002.html @@ -52,10 +52,10 @@ checkResponseInit(urlSearchParams, "application/x-www-form-urlencoded;charset=UTF-8", "name=value"); checkResponseInit(usvString, "text/plain;charset=UTF-8", "This is a USVString"); - async_test(function(test) { + promise_test(function(test) { var body = "This is response body"; var response = new Response(body); - readTextStream(response.body.getReader(), test, body); + return validateStreamFromString(response.body.getReader(), body); }, "Read Response's body as readableStream"); </script> </body> diff --git a/tests/wpt/web-platform-tests/hr-time/OWNERS b/tests/wpt/web-platform-tests/hr-time/OWNERS index ffa09d9ade9..5a05f35799c 100644 --- a/tests/wpt/web-platform-tests/hr-time/OWNERS +++ b/tests/wpt/web-platform-tests/hr-time/OWNERS @@ -1,2 +1 @@ @plehegar -@foolip diff --git a/tests/wpt/web-platform-tests/html-media-capture/OWNERS b/tests/wpt/web-platform-tests/html-media-capture/OWNERS index b45f53558b6..29bb4ff0811 100644 --- a/tests/wpt/web-platform-tests/html-media-capture/OWNERS +++ b/tests/wpt/web-platform-tests/html-media-capture/OWNERS @@ -1,2 +1,3 @@ +@foolip @haoxli @zqzhang diff --git a/tests/wpt/web-platform-tests/html/OWNERS b/tests/wpt/web-platform-tests/html/OWNERS index ef22027135b..1419ab7b547 100644 --- a/tests/wpt/web-platform-tests/html/OWNERS +++ b/tests/wpt/web-platform-tests/html/OWNERS @@ -1,4 +1,5 @@ @Ms2ger +@foolip @gsnedders @jdm @jgraham diff --git a/tests/wpt/web-platform-tests/html/browsers/history/the-location-interface/location_assign.html b/tests/wpt/web-platform-tests/html/browsers/history/the-location-interface/location_assign.html index a2d6e0fb820..7e18804c283 100644 --- a/tests/wpt/web-platform-tests/html/browsers/history/the-location-interface/location_assign.html +++ b/tests/wpt/web-platform-tests/html/browsers/history/the-location-interface/location_assign.html @@ -18,7 +18,7 @@ test(function () { var href = location.href; - location.assign("http://:"); + assert_throws('SYNTAX_ERR', function() { location.assign("http://:"); }); assert_equals(location.href, href); }, "URL that fails to parse"); </script> diff --git a/tests/wpt/web-platform-tests/html/browsers/the-window-object/Document-defaultView.html b/tests/wpt/web-platform-tests/html/browsers/the-window-object/Document-defaultView.html new file mode 100644 index 00000000000..dbc75d30b21 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/browsers/the-window-object/Document-defaultView.html @@ -0,0 +1,38 @@ +<!doctype html> +<meta charset=utf-8> +<title>Document#defaultView</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<div id=log></div> +<script> +test(function() { + assert_equals(document.defaultView, window); +}, "Document in a browsing context"); + +test(function() { + var d = new Document(); + assert_equals(d.defaultView, null); +}, "Document created with the Document constructor"); + +test(function() { + var d = document.implementation.createDocument(null, null); + assert_equals(d.defaultView, null); +}, "Document created with createDocument"); + +test(function() { + var d = document.implementation.createHTMLDocument(); + assert_equals(d.defaultView, null); +}, "Document created with createHTMLDocument"); + +test(function() { + var parser = new DOMParser(); + var d = parser.parseFromString("<foo\/\>", "application/xml"); + assert_equals(d.defaultView, null); +}, "Document created with XML DOMParser"); + +test(function() { + var parser = new DOMParser(); + var d = parser.parseFromString("bar", "text/html"); + assert_equals(d.defaultView, null); +}, "Document created with HTML DOMParser"); +</script> diff --git a/tests/wpt/web-platform-tests/html/browsers/the-window-object/Window-document.html b/tests/wpt/web-platform-tests/html/browsers/the-window-object/Window-document.html new file mode 100644 index 00000000000..9b27f5f7c79 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/browsers/the-window-object/Window-document.html @@ -0,0 +1,25 @@ +<!doctype html> +<meta charset=utf-8> +<title>Window#document</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<div id=log></div> +<script> +async_test(function() { + var URL = "/common/blank.html"; + + var iframe = document.createElement("iframe"); + document.body.appendChild(iframe); + var initialWindow = iframe.contentWindow; + var initialDocument = initialWindow.document; + assert_equals(initialDocument.URL, "about:blank"); + iframe.src = URL; + iframe.onload = this.step_func_done(function() { + assert_equals(iframe.contentWindow, initialWindow); + assert_equals(initialDocument.URL, "about:blank"); + var loadedDocument = initialWindow.document; + assert_equals(loadedDocument.URL, location.href.replace(location.pathname, URL)); + assert_not_equals(initialDocument, loadedDocument); + }); +}, "Document in a browsing context"); +</script> diff --git a/tests/wpt/web-platform-tests/html/browsers/the-window-object/accessing-other-browsing-contexts/iterator.html b/tests/wpt/web-platform-tests/html/browsers/the-window-object/accessing-other-browsing-contexts/iterator.html new file mode 100644 index 00000000000..76dc7dbae6c --- /dev/null +++ b/tests/wpt/web-platform-tests/html/browsers/the-window-object/accessing-other-browsing-contexts/iterator.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>window[@@iterator]</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> +test(function() { + assert_false(Symbol.iterator in window); +}); +</script> diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-cell-width-s.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-cell-width-s.html new file mode 100644 index 00000000000..0fe0e2c25ae --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-cell-width-s.html @@ -0,0 +1,55 @@ +<!doctype html> +<link rel="match" href="table-cell-width-ref.html"> +<style> +body { + margin: 0; +} + +table { + width: 400px; + border-collapse: collapse; +} + +th { + font-weight: normal; + text-align: left; +} + +td, th { + padding: 0; +} + +td:first-child, th:first-child { + background-color: red; +} +</style> + +<!-- width=0 should be treated as 'auto' --> +<table> + <tr> + <th width=0>a</th> + <th>a</th> + </tr> +</table> + +<table> + <tr> + <td width=0>a</td> + <td>a</td> + </tr> +</table> + +<!-- test valid width attribute value--> +<table> + <tr> + <th width=100>a</th> + <th>a</th> + </tr> +</table> + +<table> + <tr> + <td width=100>a</td> + <td>a</td> + </tr> +</table> diff --git a/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-width-s.html b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-width-s.html new file mode 100644 index 00000000000..5b987e79193 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/tables/table-width-s.html @@ -0,0 +1,31 @@ +<!doctype html> +<link rel="match" href="table-width-ref.html"> + +<style> +table { + border-collapse: collapse; +} + +td { + padding: 0; +} +</style> + +<!-- width=0 should be treated as 'auto' --> +<table width=0> + <tr> + <td> + a b + </td> + </tr> +</table> + +<hr> + +<table width=1> + <tr> + <td> + a b + </td> + </tr> +</table> diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput.html b/tests/wpt/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput.html index 8c4958a4000..8f6153b923e 100644 --- a/tests/wpt/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput.html +++ b/tests/wpt/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput.html @@ -24,21 +24,21 @@ var testElements = [ }, { tag: "input", - types: ["datetime"], + types: ["datetime-local"], testData: [ {conditions: {value: ""}, expected: false, name: "[target] The value attribute is empty"}, - {conditions: {value: "2000-01-01T12:00:00Z"}, expected: false, name: "[target] The value attribute is a valid date and time string"}, - {conditions: {value: "abc"}, expected: true, name: "[target] The value attribute cannot convert to a valid normalized forced-UTC global date and time string"} + {conditions: {value: "2000-01-01T12:00:00"}, expected: false, name: "[target] The value attribute is a valid date and time string"}, + {conditions: {value: "abc"}, expected: false, name: "[target] The value attribute cannot convert to a valid normalized forced-UTC global date and time string"} ] }, { tag: "input", types: ["color"], testData: [ - {conditions: {value: ""}, expected: true, name: "[target] The value attribute is empty"}, + {conditions: {value: ""}, expected: false, name: "[target] The value attribute is empty"}, {conditions: {value: "#000000"}, expected: false, name: "[target] The value attribute is a valid sample color"}, {conditions: {value: "#FFFFFF"}, expected: false, name: "[target] The value attribute is not a valid lowercase sample color"}, - {conditions: {value: "abc"}, expected: true, name: "[target] The value attribute cannot convert to a valid sample color"} + {conditions: {value: "abc"}, expected: false, name: "[target] The value attribute cannot convert to a valid sample color"} ] }, ]; diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01.html b/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01.html deleted file mode 100644 index f4a71612e4a..00000000000 --- a/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/input-textselection-01.html +++ /dev/null @@ -1,42 +0,0 @@ -<!DOCTYPE HTML> -<title>The selection interface members</title> -<link rel="author" title="Ms2ger" href="mailto:ms2ger@gmail.com"> -<link rel="help" href="https://html.spec.whatwg.org/multipage/#textFieldSelection"> -<script src="/resources/testharness.js"></script> -<script src="/resources/testharnessreport.js"></script> -<div id="log"></div> -<script> -test(function() { - var valid = ["text", "search", "url", "tel", "password"]; - var invalid = ["hidden", "datetime", "date", "month", "week", "datetime-local", - "number", "range", "color", "checkbox", "radio", "button", - "file", "email", "submit", "image", "reset"]; - valid.forEach(function(aType) { - test(function() { - var input = document.createElement("input"); - input.type = aType; - assert_equals(input.type, aType, "Input type unsupported") - input.select(); - var a = input.selectionStart; - input.selectionStart = 0; - a = input.selectionEnd; - input.selectionEnd = 0; - input.setSelectionRange(0, 0); - }, "Selection attributes should apply to type " + aType) - }) - - invalid.forEach(function(aType) { - test(function() { - var input = document.createElement("input"); - input.type = aType; - assert_equals(input.type, aType, "Input type unsupported") - assert_throws("INVALID_STATE_ERR", function() { input.select(); }, "Should throw with type " + aType); - assert_throws("INVALID_STATE_ERR", function() { var a = input.selectionStart; }); - assert_throws("INVALID_STATE_ERR", function() { input.selectionStart = 0; }); - assert_throws("INVALID_STATE_ERR", function() { var a = input.selectionEnd; }); - assert_throws("INVALID_STATE_ERR", function() { input.selectionEnd = 0; }); - assert_throws("INVALID_STATE_ERR", function() { input.setSelectionRange(0, 0); }); - }, "Selection attributes should not apply to type " + aType) - }) -}); -</script> diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/selection.html b/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/selection.html new file mode 100644 index 00000000000..694051dbf29 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/forms/the-input-element/selection.html @@ -0,0 +1,131 @@ +<!DOCTYPE HTML> +<title>Input element programmatic selection support</title> +<link rel="author" title="yaycmyk" href="mailto:evan@yaycmyk.com"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/forms.html#dom-textarea/input-select"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> + +/* all textual, non-hidden inputs support .select() */ +test(function() { + var valid = [ + "text", + "search", + "url", + "tel", + "email", + "password", + "date", + "month", + "week", + "time", + "datetime-local", + "number", + "color", + "file", + ]; + + var invalid = [ + "hidden", + "range", + "checkbox", + "radio", + "submit", + "image", + "reset", + "button" + ]; + + valid.forEach(function(type) { + test(function() { + var input = document.createElement("input"); + var a; + + input.type = type; + assert_equals(input.type, type, "the given input type is not supported"); + + input.select(); + + }, "input type " + type + " should support the select() method"); + }); + + invalid.forEach(function(type) { + test(function() { + var input = document.createElement("input"); + + input.type = type; + assert_equals(input.type, type, "the given input type is not supported"); + + assert_throws("INVALID_STATE_ERR", function() { input.select(); }); + + }, "input type " + type + " should not support the select() method"); + }); +}); + +/* only certain input types are allowed to have a variable-length selection */ +test(function() { + var valid = [ + "text", + "search", + "url", + "tel", + "password" + ]; + + var invalid = [ + "hidden", + "email", + "date", + "month", + "week", + "time", + "datetime-local", + "number", + "range", + "color", + "checkbox", + "radio", + "file", + "submit", + "image", + "reset", + "button" + ]; + + valid.forEach(function(type) { + test(function() { + var input = document.createElement("input"); + var a; + + input.type = type; + assert_equals(input.type, type, "the given input type is not supported"); + + a = input.selectionStart; + input.selectionStart = 0; + a = input.selectionEnd; + input.selectionEnd = 0; + input.setSelectionRange(0, 0); + input.setRangeText('', 0, 0); + + }, "input type " + type + " should support all selection attributes and methods"); + }); + + invalid.forEach(function(type) { + test(function() { + var input = document.createElement("input"); + + input.type = type; + assert_equals(input.type, type, "the given input type is not supported"); + + assert_throws("INVALID_STATE_ERR", function() { var a = input.selectionStart; }); + assert_throws("INVALID_STATE_ERR", function() { input.selectionStart = 0; }); + assert_throws("INVALID_STATE_ERR", function() { var a = input.selectionEnd; }); + assert_throws("INVALID_STATE_ERR", function() { input.selectionEnd = 0; }); + assert_throws("INVALID_STATE_ERR", function() { input.setSelectionRange(0, 0); }); + assert_throws("INVALID_STATE_ERR", function() { input.setRangeText('', 0, 0); }); + + }, "input type " + type + " should not support variable-length selections"); + }); +}); +</script> diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html index 88d3b22d3e1..6e179c1cb5c 100644 --- a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/additions-to-parsing-xhtml-documents/node-document.html @@ -32,8 +32,11 @@ test(function() { assert_equals(template.ownerDocument, doc.body.ownerDocument, 'Wrong template node owner document'); - assert_equals(template.content.ownerDocument, doc, - 'Wrong template content owner document'); + var ownerDoc = template.content.ownerDocument; + assert_not_equals(ownerDoc, doc, 'Wrong template content owner document'); + assert_not_equals(ownerDoc, document, 'Wrong template content owner document'); + assert_equals(ownerDoc.defaultView, null, + 'Template content owner document should not have a browsing context'); }, 'Parsing XHTML: Node\'s node document must be set to that of the element ' + 'to which it will be appended. Test empty template'); diff --git a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html index f540450efc5..fcdb883f5c0 100644 --- a/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html +++ b/tests/wpt/web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/template-as-a-descendant.html @@ -22,6 +22,13 @@ function templateIsAChild(element) { 'Template element should be a descendant of the ' + element.tagName + ' element'); } +function templateIsDisallowedAsAChild(element) { + element.innerHTML = '<template>some text</template>'; + + assert_equals(element.querySelector('template'), null, + 'Template element should not be allowed as a descendant of the ' + element.tagName + ' element'); +} + function templateIsAnIndirectChild(element) { element.innerHTML = '<div><template>some text</template></div>'; @@ -29,6 +36,13 @@ function templateIsAnIndirectChild(element) { 'Template element should be a descendant of the ' + element.tagName + ' element'); } +function templateIsDisallowedAsAnIndirectChild(element) { + element.innerHTML = '<div><template>some text</template></div>'; + + assert_equals(element.querySelector('template'), null, + 'Template element should not be allowed as indirect descendant of the ' + element.tagName + ' element'); +} + function templateIsAnAppendedChild(doc, element) { var template = doc.createElement('template'); @@ -58,13 +72,16 @@ var parameters = [['Template element as a descendant of the BODY element. ' + ['Template element as a descendant of the HEAD element. ' + 'Template element is created by innerHTML', doc.head], - ['Template element as a descendant of the FRAMESET element. ' + - 'Template element is created by innerHTML', - frameset] ]; generate_tests(templateIsAChild, parameters, - 'Template element as a descendant of the HEAD, BODY and FRAMESET elements'); + 'Template element as a descendant of the HEAD and BODY elements'); +parameters = [['Template element as a descendant of the FRAMESET element. ' + + 'Template element is created by innerHTML', + frameset], + ]; +generate_tests(templateIsDisallowedAsAChild, parameters, + 'Template element should be disallowed as a descendant of the FRAMESET elements'); parameters = [['Template element as an indirect descendant of the BODY element. ' + @@ -73,13 +90,17 @@ parameters = [['Template element as an indirect descendant of the BODY element. ['Template element as an indirect descendant of the HEAD element. ' + 'Template element is created by innerHTML', doc.head], - ['Template element as an indirect descendant of the FRAMESET element. ' + - 'Template element is created by innerHTML', - frameset] ]; generate_tests(templateIsAnIndirectChild, parameters, 'Template element as an indirect descendant of the HEAD, BODY and FRAMESET elements'); +parameters = [['Template element as a descendant of the FRAMESET element. ' + + 'Template element is created by innerHTML', + frameset], + ]; +generate_tests(templateIsDisallowedAsAnIndirectChild, parameters, + 'Template element should be disallowed as an indirect descendant of the FRAMESET elements'); + parameters = [['Template element as a descendant of the BODY element. ' + diff --git a/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html b/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html new file mode 100644 index 00000000000..80a75bb99e0 --- /dev/null +++ b/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus-autofocus.html @@ -0,0 +1,24 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>Selector: pseudo-classes (:focus for autofocus)</title> +<link rel="author" title="Kent Tamura" href="mailto:tkent@chromium.org"> +<link rel=help href="https://html.spec.whatwg.org/multipage/#pseudo-classes"> +<link rel=help href="https://html.spec.whatwg.org/multipage/forms.html#autofocusing-a-form-control:-the-autofocus-attribute"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<body> +<script> +// This test can't be merged to focus.html because element.focus() may affect +// autofocus behavior. +var autofocusTest = async_test(":focus selector should work with an autofocused element."); +var input = document.createElement("input"); +input.autofocus = true; +input.addEventListener("focus", function() { + autofocusTest.step(function() { + assert_array_equals(document.querySelectorAll(":focus"), [input]) + autofocusTest.done(); + }); +}, false); +document.body.appendChild(input); +</script> +</body> diff --git a/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html b/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html index 69f8b2afcf7..22d6d8fffda 100644 --- a/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html +++ b/tests/wpt/web-platform-tests/html/semantics/selectors/pseudo-classes/focus.html @@ -11,7 +11,6 @@ <button id=button1 type=submit>button1</button> <input id=input1> <input id=input2 disabled> - <input id=input3 autofocus> <textarea id=textarea1>textarea1</textarea> <input type=checkbox id=checkbox1 checked> <input type=radio id=radio1 checked> @@ -20,8 +19,6 @@ <iframe src="focus-iframe.html" id=iframe onload="load()"></iframe> <script> - testSelector(":focus", ["input3"], "input3 has the attribute autofocus"); - document.getElementById("input1").focus(); // set the focus on input1 testSelector(":focus", ["input1"], "input1 has the focus"); diff --git a/tests/wpt/web-platform-tests/html/syntax/parsing/template/additions-to-the-in-frameset-insertion-mode/end-tag-frameset.html b/tests/wpt/web-platform-tests/html/syntax/parsing/template/additions-to-the-in-frameset-insertion-mode/end-tag-frameset.html index 98e701e8d54..e4f7b0b5468 100644 --- a/tests/wpt/web-platform-tests/html/syntax/parsing/template/additions-to-the-in-frameset-insertion-mode/end-tag-frameset.html +++ b/tests/wpt/web-platform-tests/html/syntax/parsing/template/additions-to-the-in-frameset-insertion-mode/end-tag-frameset.html @@ -3,8 +3,8 @@ <head> <title>HTML Templates: additions to 'in frameset' insertion mode</title> <meta name="author" title="Sergey G. Grekhov" href="mailto:sgrekhov@unipro.ru"> -<meta name="assert" content="If parser is in 'in frameset' insertion mode and meets frameset end tag then if the stack of open elements has a template element in html scope then this is a parse error; ignore the token"> -<link rel="help" href="http://www.w3.org/TR/2013/WD-html-templates-20130214/#in-head-addition"> +<meta name="assert" content="If parser is in 'in frameset' insertion mode then a start tag or an end tag whose name is 'template' is a parsing error"> +<link rel="help" href="https://www.w3.org/TR/2015/WD-html51-20151008/syntax.html#parsing-main-inframeset"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <script src="/html/resources/common.js"></script> @@ -18,15 +18,9 @@ testInIFrame('/html/semantics/scripting-1/the-template-element/resources/framese var doc = context.iframes[0].contentDocument; var frameset = doc.querySelector('frameset'); - assert_equals(frameset.children.length, 1, 'Wrong number of frameset children elements'); + assert_equals(frameset.children.length, 0, 'Wrong number of frameset children elements'); - var template = frameset.querySelector('template'); - assert_equals(template.tagName, 'TEMPLATE', 'FRAMESET should contain template element'); - assert_equals(template.content.childNodes.length, 0, - 'Template content should be empty'); - -}, '</frameset> tag should be ignored if there\'s TEMPLATE element in ' - + 'the stack of open elements'); +}, '<template> tag should be ignored in "in frameset" insertion mode'); </script> </body> diff --git a/tests/wpt/web-platform-tests/html/syntax/parsing/template/creating-an-element-for-the-token/template-owner-document.html b/tests/wpt/web-platform-tests/html/syntax/parsing/template/creating-an-element-for-the-token/template-owner-document.html index ce435fdc4fc..d4abb2693c3 100644 --- a/tests/wpt/web-platform-tests/html/syntax/parsing/template/creating-an-element-for-the-token/template-owner-document.html +++ b/tests/wpt/web-platform-tests/html/syntax/parsing/template/creating-an-element-for-the-token/template-owner-document.html @@ -68,26 +68,6 @@ test(function () { test(function () { var doc = newHTMLDocument(); - - doc.open(); - doc.write('<frameset><template id="tmpl1"><div id="div">DIV</div></template></frameset>'); - doc.close(); - - var template = doc.querySelector('#tmpl1'); - - var div = template.content.querySelector('#div'); - - assert_equals(div.ownerDocument, template.content.ownerDocument, - 'Wrong ownerDocument of the element in template'); - -}, 'Test ownerDocument property of the element in a template. ' - + 'Current DOCUMENT has no browsing context. Test template element ' - + 'in the root of the frameset'); - - - -test(function () { - var doc = newHTMLDocument(); doc.body.innerHTML = '<template id="tmpl1">' + '<template id="tmpl2"><div id="div">DIV</div></template></template>'; diff --git a/tests/wpt/web-platform-tests/media-source/OWNERS b/tests/wpt/web-platform-tests/media-source/OWNERS index 3b36dfa39a2..fa70c6cc1d2 100644 --- a/tests/wpt/web-platform-tests/media-source/OWNERS +++ b/tests/wpt/web-platform-tests/media-source/OWNERS @@ -1,4 +1,5 @@ @bit @acolwell +@foolip @shishimaru @sideshowbarker diff --git a/tests/wpt/web-platform-tests/mediacapture-streams/OWNERS b/tests/wpt/web-platform-tests/mediacapture-streams/OWNERS index 03ff57c28fd..98fcd252b27 100644 --- a/tests/wpt/web-platform-tests/mediacapture-streams/OWNERS +++ b/tests/wpt/web-platform-tests/mediacapture-streams/OWNERS @@ -1,3 +1,3 @@ -@dontcallmedom @alvestrand - +@dontcallmedom +@foolip diff --git a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-finished-add.html b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-finished-add.html index 21d61194fff..a0c4b28b1e7 100644 --- a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-finished-add.html +++ b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-finished-add.html @@ -1,25 +1,24 @@ <!doctype html> <html> <head> -<title>Adding a track to a finished MediaStream</title> +<title>Adding a track to an inactive MediaStream</title> <link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrackList-add-void-MediaStreamTrack-track"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-stop-void"> -<link rel='stylesheet' href='/resources/testharness.css' media='all'/> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStream-addTrack-void-MediaStreamTrack-track"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-stop-void"> </head> <body> <p class="instructions">When prompted, accept to share your audio stream, then your video stream.</p> <h1 class="instructions">Description</h1> -<p class="instructions">This test checks that adding a track to a finished -MediaStream raises an INVALID_STATE_ERR exception.</p> +<p class="instructions">This test checks that adding a track to an inactive +MediaStream is allowed.</p> <div id='log'></div> <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script> <script> -var t = async_test("Tests that an addition to a finished MediaStream raises an exception", {timeout:20000}); +var t = async_test("Tests that adding a track to an inactive MediaStream is allowed", {timeout:20000}); t.step(function () { var audio, video; @@ -33,13 +32,10 @@ t.step(function () { video = stream; t.step(function () { audio.getAudioTracks()[0].stop(); - assert_true(audio.ended, "Audio stream is ended after stopping its only audio track"); - assert_throws("INVALID_STATE_ERR", function () { - video.addTrack(audio.getAudioTracks()[0]); - }, "Adding a track from a finished stream raises an INVALID_STATE_ERR exception"); - assert_throws("INVALID_STATE_ERR", function () { - audio.removeTrack(audio.getAudioTracks()[0]); - }, "Removing a track from a finished stream raises an INVALID_STATE_ERR exception"); + assert_false(audio.active, "audio stream is inactive after stopping its only audio track"); + assert_true(video.active, "video stream is active"); + audio.addTrack(video.getVideoTracks()[0]); + audio.removeTrack(audio.getAudioTracks()[0]); }); t.done(); } diff --git a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html index 57ef7daa292..81cce51c1ed 100644 --- a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html +++ b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/mediastream-idl.html @@ -3,13 +3,12 @@ <head> <title>MediaStream constructor algorithm</title> <link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#idl-def-MediaStream"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStream-id"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastream"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#event-mediastream-ended"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-stop-void"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStreamTrack-clone-MediaStreamTrack"> -<link rel='stylesheet' href='/resources/testharness.css' media='all'/> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#idl-def-MediaStream"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStream-id"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#mediastream"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#event-mediastreamtrack-ended"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-stop-void"> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#widl-MediaStreamTrack-clone-MediaStreamTrack"> </head> <body> <p class="instructions">When prompted, accept to share your video and audio stream.</p> @@ -42,7 +41,7 @@ t.step(function() { assert_equals(stream3.getTrackById(audioTrack2.id), null, "an ended track doesn't get added via the MediaStream constructor"); assert_equals(stream3.getTrackById(videoTrack.id), videoTrack, "a non-ended track gets added via the MediaStream constructor even if the previous track was ended"); var stream5 = new MediaStream([audioTrack2]); - assert_true(stream5.ended, "a MediaStream created using the MediaStream() constructor whose arguments are lists of MediaStreamTrack objects that are all ended, the MediaStream object MUST be created with its ended attribute set to true"); + assert_false(stream5.active, "a MediaStream created using the MediaStream() constructor whose arguments are lists of MediaStreamTrack objects that are all ended, the MediaStream object MUST be created with its active attribute set to false"); t.done(); }), false); audioTrack2.stop(); diff --git a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/stream-ended.html b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/stream-ended.html deleted file mode 100644 index 4d537ca25a1..00000000000 --- a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastream/stream-ended.html +++ /dev/null @@ -1,37 +0,0 @@ -<!doctype html> -<html> -<head> -<title>getUserMedia({video:true}) creates a stream with ended set to false</title> -<link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#widl-MediaStream-ended"> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#event-mediastream-ended"> -<link rel='stylesheet' href='/resources/testharness.css' media='all'/> -</head> -<body> -<p class="instructions">When prompted, accept to share your video stream.</p> -<h1 class="instructions">Description</h1> -<p class="instructions">This test checks that the MediaStream object returned by -the success callback in getUserMedia has a ended set to false at start, and -triggers "onended" when it is set to true.</p> - -<div id='log'></div> -<script src=/resources/testharness.js></script> -<script src=/resources/testharnessreport.js></script> -<script src="/common/vendor-prefix.js" data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'></script> -<script> -var t = async_test("Tests that a MediaStream handles ended correctly", {timeout:10000}); -t.step(function () { - navigator.getUserMedia({video:true}, t.step_func(function (stream) { - assert_true(!stream.ended, "the media stream starts with ended set to false"); - stream.addEventListener("ended", t.step_func(function() { - assert_true(stream.ended, "stream.ended now set to true"); - t.done(); - }), false); - stream.ended = true; - assert_true(!stream.ended, "stream.ended should remain false"); - stream.getVideoTracks()[0].stop(); - }), function (error) {}); -}); -</script> -</body> -</html> diff --git a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastreamtrack/mediastreamtrack-end.html b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastreamtrack/mediastreamtrack-end.html index 988f1ee3551..6b6b72fc0c1 100644 --- a/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastreamtrack/mediastreamtrack-end.html +++ b/tests/wpt/web-platform-tests/mediacapture-streams/stream-api/mediastreamtrack/mediastreamtrack-end.html @@ -3,8 +3,7 @@ <head> <title>Test that mediastreamtrack are properly ended</title> <link rel="author" title="Dominique Hazael-Massieux" href="mailto:dom@w3.org"/> -<link rel="help" href="http://dev.w3.org/2011/webrtc/editor/getusermedia.html#mediastreamtrack"> -<link rel='stylesheet' href='/resources/testharness.css' media='all'/> +<link rel="help" href="http://w3c.github.io/mediacapture-main/getusermedia.html#mediastreamtrack"> </head> <body> <p class="instructions">When prompted, accept to share your video and audio @@ -12,7 +11,7 @@ stream, and then revoke that permission.</p> <h1 class="instructions">Description</h1> <p class="instructions">This test checks that the video and audio tracks of MediaStream object returned by the success callback in getUserMedia are -correctly set into ended state when permission is revoked.</p> +correctly set into inactive state when permission is revoked.</p> <div id='log'></div> <script src=/resources/testharness.js></script> @@ -29,7 +28,7 @@ t.step(function () { vidTrack.onended = t.step_func(function () { assert_equals(vidTrack.readyState, "ended", "Video track has been ended as expected"); assert_equals(audTrack.readyState, "ended", "Audio track has been ended as expected"); - assert_true(stream.ended, "MediaStream has been ended as expected"); + assert_false(stream.active, "MediaStream has been inactive as expected"); t.done(); }); }), function (error) {} diff --git a/tests/wpt/web-platform-tests/navigation-timing/OWNERS b/tests/wpt/web-platform-tests/navigation-timing/OWNERS index ffa09d9ade9..5a05f35799c 100644 --- a/tests/wpt/web-platform-tests/navigation-timing/OWNERS +++ b/tests/wpt/web-platform-tests/navigation-timing/OWNERS @@ -1,2 +1 @@ @plehegar -@foolip diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html index 7cff30f333b..531cb374f3f 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_autocomplete.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -44,4 +44,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html index b76d5f90735..0056839db9c 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_list.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -44,4 +44,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html index 5a09ee08bf8..c9002f042b9 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasdate.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -49,4 +49,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html index 9e4286b3400..6c24f1e4a97 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/input_valueasnumber.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html index 8e7e6ed7755..6c0864a0868 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_length.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -53,4 +53,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html index e6d69017987..99fb65a3c2c 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/Not_Use/select_selectedindex.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -47,4 +47,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html index 7e906875674..0d15e1083be 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_checkvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html index 81076d78048..312fb7e8189 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_labels.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -45,4 +45,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html index f617e5bf2b7..6f012335f73 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_setcustomvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -40,4 +40,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html index 00dc287e41b..44364aec5ef 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validationmessage.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html index 184f187462a..00d022119a3 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_validity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html index 36166611f47..067b38f8981 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/button_willvalidate.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html index 4989b2ad82d..ab4d9601fbd 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_checkvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -42,4 +42,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html index 48e3839e6e7..bca7d6f9700 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_setcustomvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html index 2b8d00f978a..8c3457d426c 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validationmessage.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -38,4 +38,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html index 3474275640e..e0622bf38a7 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_validity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -38,4 +38,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html index c7e5853f4fd..802968cd79f 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/fieldset_willvalidate.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -38,4 +38,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_action.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_action.html index d8e2703f8a5..f925a62ff11 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_action.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_action.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -40,4 +40,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html index 931843d0d57..83d53da0dca 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_checkvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -44,4 +44,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_length.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_length.html index cf7da08a75f..2fae73be1ae 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_length.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_length.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -35,4 +35,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html index a6acd08335f..788769049bb 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/form_submit.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -48,4 +48,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html index 1e239b3f294..c4649963874 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_checkvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_height.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_height.html index 72455038894..edf3624907e 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_height.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_height.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -39,4 +39,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html index ef8f3de1df4..b37b719e1df 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_labels.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -46,4 +46,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html index d0f6315fe2c..455dce2f024 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_setcustomvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -40,4 +40,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html index cddd9dc687e..abe31f595e0 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepdown.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html index 789eb005efa..39474b93d29 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_stepup.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -42,4 +42,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html index c19d3e74a67..785b4e79ba4 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validationmessage.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html index 32ff63c0839..f46bd0b4c93 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_validity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html index ed7ae334ced..9ddf62acfc7 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_value_invalidstateerr.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -38,4 +38,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html index 1e1533a9b38..6df4f74c5ac 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasdate_invalidstateerr.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -38,4 +38,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html index 2450db2c831..8444d3fdceb 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_valueasnumber_invalidstateerr.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -36,4 +36,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_width.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_width.html index db168147bc7..7cbda113a63 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_width.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_width.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -39,4 +39,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html index 04d360e12f1..612fd004ac3 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/input_willvalidate.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -37,4 +37,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html index 7ea35881273..d7dcd13b37b 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_checkvalidity.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -41,4 +41,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html index 381f221e431..ca960093388 100644 --- a/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html +++ b/tests/wpt/web-platform-tests/old-tests/submission/Infraware/Forms/contents/Forms/keygen_labels.html @@ -2,8 +2,8 @@ <html> <head> <title>Forms</title> - <script src="../../resources/testharness.js"></script> - <script src="../../resources/testharnessreport.js"></script> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> </head> <body> <p> @@ -45,4 +45,4 @@ </script> </body> -</html>
\ No newline at end of file +</html> diff --git a/tests/wpt/web-platform-tests/page-visibility/OWNERS b/tests/wpt/web-platform-tests/page-visibility/OWNERS index ffa09d9ade9..5a05f35799c 100644 --- a/tests/wpt/web-platform-tests/page-visibility/OWNERS +++ b/tests/wpt/web-platform-tests/page-visibility/OWNERS @@ -1,2 +1 @@ @plehegar -@foolip diff --git a/tests/wpt/web-platform-tests/touch-events/create-touch-touchlist.html b/tests/wpt/web-platform-tests/touch-events/create-touch-touchlist.html index 502090c9671..abd0f4835c5 100644 --- a/tests/wpt/web-platform-tests/touch-events/create-touch-touchlist.html +++ b/tests/wpt/web-platform-tests/touch-events/create-touch-touchlist.html @@ -1,185 +1,50 @@ <!DOCTYPE HTML> <html> -<!-- - Test cases for Touch Events v1 Recommendation - http://www.w3.org/TR/touch-events/ - - These tests are based on Mozilla-Nokia-Google's single-touch tests. - - The primary purpose of the tests in this document is checking that the createTouch and - createTouchList interfaces of the Touch Events APIs are correctly implemented. - Other interactions are covered in other test files. - - This document references Test Assertions (abbrev TA below) written by Cathy Chan - http://www.w3.org/2010/webevents/wiki/TestAssertions ---> - <head> -<title>Touch Events createTouch and createTouchList Interface Tests</title> -<meta name="viewport" content="width=device-width"> +<title>document.createTouch and document.createTouchList Tests</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> +<script src="touch-support.js"></script> +<body> +<div id="target0"></div> <script> - setup({explicit_done: true}); - - // Check a Touch object's atttributes for existence and correct type - // TA: 1.1.2, 1.1.3 - function check_Touch_object (t) { - test(function() { - assert_equals(Object.prototype.toString.call(t), "[object Touch]", "touch is of type Touch"); - }, "touch point is a Touch object"); - [ - ["long", "identifier"], - ["EventTarget", "target"], - ["long", "screenX"], - ["long", "screenY"], - ["long", "clientX"], - ["long", "clientY"], - ["long", "pageX"], - ["long", "pageY"], - ].forEach(function(attr) { - var type = attr[0]; - var name = attr[1]; - - // existence check - test(function() { - assert_true(name in t, name + " attribute in Touch object"); - }, "Touch." + name + " attribute exists"); - - // type check - switch(type) { - case "long": - test(function() { - assert_equals(typeof t[name], "number", name + " attribute of type long"); - }, "Touch." + name + " attribute is of type number (long)"); - break; - case "EventTarget": - // An event target is some type of Element - test(function() { - assert_true(t[name] instanceof Element, "EventTarget must be an Element."); - }, "Touch." + name + " attribute is of type Element"); - break; - default: - break; - } - }); - } - - // Check a TouchList object's attributes and methods for existence and proper type - // Also make sure all of the members of the list are Touch objects - // TA: 1.2.1, 1.2.2, 1.2.5, 1.2.6 - function check_TouchList_object (tl) { - test(function() { - assert_equals(Object.prototype.toString.call(tl), "[object TouchList]", "touch list is of type TouchList"); - }, "touch list is a TouchList object"); - [ - ["unsigned long", "length"], - ["function", "item"], - ].forEach(function(attr) { - var type = attr[0]; - var name = attr[1]; - - // existence check - test(function() { - assert_true(name in tl, name + " attribute in TouchList"); - }, "TouchList." + name + " attribute exists"); - - // type check - switch(type) { - case "unsigned long": - test(function() { - assert_equals(typeof tl[name], "number", name + " attribute of type long"); - }, "TouchList." + name + " attribute is of type number (unsigned long)"); - break; - case "function": - test(function() { - assert_equals(typeof tl[name], "function", name + " attribute of type function"); - }, "TouchList." + name + " attribute is of type function"); - break; - default: - break; - } - }); - // Each member of tl should be a proper Touch object - for (var i=0; i < tl.length; i++) { - check_Touch_object(tl.item(i)); - } - // TouchList.item(x) should return null if x is >= TouchList.length - test(function() { - var t = tl.item(tl.length); - assert_equals(t, null, "TouchList.item(TouchList.length) must return null"); - }, "TouchList.item returns null if the index is >= the length of the list"); - } - - function check_touch_clientXY(touch) { - assert_equals(touch.clientX, touch.pageX - window.pageXOffset, "touch.clientX is touch.pageX - window.pageXOffset."); - assert_equals(touch.clientY, touch.pageY - window.pageYOffset, "touch.clientY is touch.pageY - window.pageYOffset."); - } - - function run() { - var target0 = document.getElementById("target0"); - var touch1, touch2; - - test(function() { - touch1 = document.createTouch(window, target0, 42, 15, 20, 35, 40); - assert_equals(touch1.target, target0, "touch.target is target0"); - assert_equals(touch1.identifier, 42, "touch.identifier is requested value"); - assert_equals(touch1.pageX, 15, "touch.pageX is requested value"); - assert_equals(touch1.pageY, 20, "touch.pageY is requested value"); - check_touch_clientXY(touch1); - assert_equals(touch1.screenX, 35, "touch.screenX is requested value"); - assert_equals(touch1.screenY, 40, "touch.screenY is requested value"); - }, "document.createTouch exists and creates a Touch object with requested properties"); - - touch2 = document.createTouch(window, target0, 44, 25, 30, 45, 50); - - var touchList; - - test(function() { - touchList = document.createTouchList(); - assert_equals(touchList.length, 0, "touchList.length is 0"); - }, "document.createTouchList exists and correctly creates a TouchList from zero Touch objects"); - - if (touchList) - check_TouchList_object(touchList); - - test(function() { - touchList = document.createTouchList(touch1); - assert_equals(touchList.length, 1, "touchList.length is 1"); - assert_equals(touchList.item(0), touch1, "touchList.item(0) is input touch1"); - }, "document.createTouchList exists and correctly creates a TouchList from a single Touch"); - - if (touchList) - check_TouchList_object(touchList); - - test(function() { - touchList = document.createTouchList(touch1, touch2); - assert_equals(touchList.length, 2, "touchList.length is 2"); - assert_equals(touchList.item(0), touch1, "touchList.item(0) is input touch1"); - assert_equals(touchList.item(1), touch2, "touchList.item(1) is input touch2"); - }, "document.createTouchList exists and correctly creates a TouchList from two Touch objects"); - - if (touchList) - check_TouchList_object(touchList); - - target0.innerHTML = "Test complete." - done(); - } +test(function() { + var testTarget = document.getElementById('target0'); + var touch1 = document.createTouch(window, testTarget, 42, 15, 20, 35, 40); + assert_equals(touch1.target, testTarget, "touch.target is target0"); + assert_equals(touch1.identifier, 42, "touch.identifier is requested value"); + assert_equals(touch1.pageX, 15, "touch.pageX is requested value"); + assert_equals(touch1.pageY, 20, "touch.pageY is requested value"); + assert_equals(touch1.screenX, 35, "touch.screenX is requested value"); + assert_equals(touch1.screenY, 40, "touch.screenY is requested value"); +}, "document.createTouch exists and creates a Touch object with requested properties"); + +test(function() { + var touchList = document.createTouchList(); + assert_equals(touchList.length, 0, "touchList.length is 0"); + check_TouchList_object(touchList); +}, "document.createTouchList exists and correctly creates a TouchList from zero Touch objects"); + +test(function() { + var testTarget = document.getElementById('target0'); + var touch1 = document.createTouch(window, testTarget, 42, 15, 20, 35, 40); + var touchList = document.createTouchList(touch1); + assert_equals(touchList.length, 1, "touchList.length is 1"); + assert_equals(touchList.item(0), touch1, "touchList.item(0) is touch1"); + check_TouchList_object(touchList); +}, "document.createTouchList exists and correctly creates a TouchList from a single Touch"); + +test(function() { + var testTarget = document.getElementById('target0'); + var touch1 = document.createTouch(window, testTarget, 42, 15, 20, 35, 40); + var touch2 = document.createTouch(window, target0, 44, 25, 30, 45, 50); + var touchList = document.createTouchList(touch1, touch2); + assert_equals(touchList.length, 2, "touchList.length is 2"); + assert_equals(touchList.item(0), touch1, "touchList.item(0) is touch1"); + assert_equals(touchList.item(1), touch2, "touchList.item(1) is touch2"); + check_TouchList_object(touchList); +}, "document.createTouchList exists and correctly creates a TouchList from two Touch objects"); </script> -<style> - div { - margin: 0em; - padding: 2em; - } - #target0 { - background: yellow; - border: 1px solid orange; - } -</style> </head> -<body onload="run()"> - <h1>Touch Events: createTouch and createTouchList tests</h1> - <div id="target0">Please wait for test to complete...</div> - <div id="log"></div> </body> </html> diff --git a/tests/wpt/web-platform-tests/touch-events/single-touch-manual.html b/tests/wpt/web-platform-tests/touch-events/single-touch-manual.html index 5f76e61b419..f1f643cb55e 100644 --- a/tests/wpt/web-platform-tests/touch-events/single-touch-manual.html +++ b/tests/wpt/web-platform-tests/touch-events/single-touch-manual.html @@ -236,7 +236,7 @@ }, "touchstart: touch screenX/screenY pageX/pageY and clientX/clientY values are no less than 0"); }); - on_event(target0, "touchmove", function onTouchMove(ev) { + target0.ontouchmove = function (ev) { ev.preventDefault(); if (touchmove_received) @@ -283,13 +283,13 @@ check_screenXY_clientXY_pageXY(tt); }, "touchmove: touch screenX/screenY pageX/pageY and clientX/clientY values are no less than 0"); - }); + }; on_event(target1, "touchmove", function onTouchMove(ev) { invalid_touchmove_received = true; }); - on_event(window, "touchend", function onTouchEnd(ev) { + window.ontouchend = function(ev) { touchend_received = true; test_touchend.step(function() { @@ -329,7 +329,7 @@ }, "touchend: touch screenX/screenY pageX/pageY and clientX/clientY values are no less than 0"); done(); - }); + }; on_event(target0, "mousedown", function onMouseDown(ev) { test_mousedown.step(function() { diff --git a/tests/wpt/web-platform-tests/touch-events/touch-globaleventhandler-interface.html b/tests/wpt/web-platform-tests/touch-events/touch-globaleventhandler-interface.html new file mode 100644 index 00000000000..cb640444fa0 --- /dev/null +++ b/tests/wpt/web-platform-tests/touch-events/touch-globaleventhandler-interface.html @@ -0,0 +1,35 @@ +<!DOCTYPE HTML> +<title>GlobalEventHandlers Touch Interface Tests</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +test(function() { + var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel']; + var global_event_handlers = [window, HTMLElement.prototype, SVGElement.prototype, Document.prototype]; + for (var i in touch_event_list) { + for (var j in global_event_handlers) { + assert_true(touch_event_list[i] in global_event_handlers[j], "Touch event " + touch_event_list[i] + " in " + global_event_handlers[j].constructor.name); + } + } +}, "Touch events in GlobalEventHandlers"); + +test(function() { + var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel']; + var global_event_handlers = [window, HTMLElement.prototype, SVGElement.prototype, Document.prototype]; + for (var i in touch_event_list) { + for (var j in global_event_handlers) { + assert_true(global_event_handlers[j].hasOwnProperty(touch_event_list[i]), "GlobalEventHandler " + global_event_handlers[j].constructor.name + " hasOwnProperty " + touch_event_list[i]); + } + } +}, "Touch events are GlobalEventHandlers' own property"); + +test(function() { + var touch_event_list = ['ontouchstart', 'ontouchmove', 'ontouchend', 'ontouchcancel']; + var non_global_event_handlers = [Element.prototype]; + for (var i in touch_event_list) { + for (var j in non_global_event_handlers) { + assert_false(touch_event_list[i] in non_global_event_handlers[j], "Touch event " + touch_event_list[i] + " not in " + non_global_event_handlers[j].constructor.name); + } + } +}, "Touch events not in Element.prototype"); +</script> diff --git a/tests/wpt/web-platform-tests/touch-events/touch-support.js b/tests/wpt/web-platform-tests/touch-events/touch-support.js new file mode 100644 index 00000000000..f4bc0467db8 --- /dev/null +++ b/tests/wpt/web-platform-tests/touch-events/touch-support.js @@ -0,0 +1,106 @@ +// Check a Touch object's attributes for existence and correct type +// TA: 1.1.2, 1.1.3 +function check_Touch_object(t) { + assert_equals(Object.prototype.toString.call(t), "[object Touch]", "touch is of type Touch"); + [ + ["long", "identifier"], + ["EventTarget", "target"], + ["long", "screenX"], + ["long", "screenY"], + ["long", "clientX"], + ["long", "clientY"], + ["long", "pageX"], + ["long", "pageY"], + ["long", "radiusX"], + ["long", "radiusY"], + ["long", "rotationAngle"], + ["long", "force"], + ].forEach(function(attr) { + var type = attr[0]; + var name = attr[1]; + + // existence check + assert_true(name in t, name + " attribute in Touch object"); + + // type check + switch (type) { + case "long": + assert_equals(typeof t[name], "number", name + " attribute of type long"); + break; + case "EventTarget": + // An event target is some type of Element + assert_true(t[name] instanceof Element, "EventTarget must be an Element."); + break; + default: + break; + } + }); +} + +// Check a TouchList object's attributes and methods for existence and proper type +// Also make sure all of the members of the list are Touch objects +// TA: 1.2.1, 1.2.2, 1.2.5, 1.2.6 +function check_TouchList_object(tl) { + assert_equals(Object.prototype.toString.call(tl), "[object TouchList]", "touch list is of type TouchList"); + [ + ["unsigned long", "length"], + ["function", "item"], + ].forEach(function(attr) { + var type = attr[0]; + var name = attr[1]; + + // existence check + assert_true(name in tl, name + " attribute in TouchList"); + + // type check + switch (type) { + case "unsigned long": + assert_equals(typeof tl[name], "number", name + " attribute of type long"); + break; + case "function": + assert_equals(typeof tl[name], "function", name + " attribute of type function"); + break; + default: + break; + } + }); + // Each member of tl should be a proper Touch object + for (var i = 0; i < tl.length; i++) { + check_Touch_object(tl.item(i)); + } + // TouchList.item(x) should return null if x is >= TouchList.length + var t = tl.item(tl.length); + assert_equals(t, null, "TouchList.item returns null if the index is >= the length of the list"); +} + +// Check a TouchEvent event's attributes for existence and proper type +// Also check that each of the event's TouchList objects are valid +// TA: 1.{3,4,5}.1.1, 1.{3,4,5}.1.2 +function check_TouchEvent(ev) { + assert_true(ev instanceof TouchEvent, ev.type + " event is a TouchEvent event"); + [ + ["TouchList", "touches"], + ["TouchList", "targetTouches"], + ["TouchList", "changedTouches"], + ["boolean", "altKey"], + ["boolean", "metaKey"], + ["boolean", "ctrlKey"], + ["boolean", "shiftKey"], + ].forEach(function(attr) { + var type = attr[0]; + var name = attr[1]; + // existence check + assert_true(name in ev, name + " attribute in " + ev.type + " event"); + // type check + switch (type) { + case "boolean": + assert_equals(typeof ev[name], "boolean", name + " attribute of type boolean"); + break; + case "TouchList": + assert_equals(Object.prototype.toString.call(ev[name]), "[object TouchList]", name + " attribute of type TouchList"); + break; + default: + break; + } + }); +} diff --git a/tests/wpt/web-platform-tests/touch-events/touch-touchevent-constructor.html b/tests/wpt/web-platform-tests/touch-events/touch-touchevent-constructor.html new file mode 100644 index 00000000000..01775a23191 --- /dev/null +++ b/tests/wpt/web-platform-tests/touch-events/touch-touchevent-constructor.html @@ -0,0 +1,116 @@ +<!DOCTYPE HTML> +<html> +<head> +<title>Touch and TouchEvent Constructor Tests</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="touch-support.js"></script> +</head> +<body> +<div id="target0"></div> +<script> +test(function() { + assert_throws(new TypeError(), function() {new Touch();}, "Touch constructor requires initialize dictionary"); + assert_throws(new TypeError(), function() {new Touch({});}, "Touch constructor requires identifier and target"); +}, "Create a Touch object with insufficient properties"); + +test(function() { + var testIdentifier = 74; + var testTarget = document.getElementById('target0'); + var approxEpsilon = 0.00001; + + var touch1 = new Touch({ + identifier: testIdentifier, + target: testTarget, + }); + check_Touch_object(touch1); + assert_equals(touch1.target, testTarget, "touch.target is requested value"); + assert_equals(touch1.identifier, testIdentifier, "touch.identifier is requested value"); + assert_approx_equals(touch1.pageX, 0, approxEpsilon, "touch.pageX is default value"); + assert_approx_equals(touch1.pageY, 0, approxEpsilon, "touch.pageY is default value"); + assert_approx_equals(touch1.screenX, 0, approxEpsilon, "touch.screenX is default value"); + assert_approx_equals(touch1.screenY, 0, approxEpsilon, "touch.screenY is default value"); + assert_approx_equals(touch1.clientX, 0, approxEpsilon, "touch.clientX is default value."); + assert_approx_equals(touch1.clientY, 0, approxEpsilon, "touch.clientY is default value."); +}, "Touch constructor exists and creates a Touch object with minimum properties"); + +test(function() { + var testIdentifier = 42; + var testTarget = document.getElementById('target0'); + var testPageX = 15; + var testPageY = 20.2; + var testScreenX = 35.34; + var testScreenY = 40.56; + var testClientX = 10.175; + var testClientY = 5; + var approxEpsilon = 0.00001; + + var touch1 = new Touch({ + identifier: testIdentifier, + target: testTarget, + pageX: testPageX, + pageY: testPageY, + screenX: testScreenX, + screenY: testScreenY, + clientX: testClientX, + clientY: testClientY, + }); + check_Touch_object(touch1); + assert_equals(touch1.identifier, testIdentifier, "touch.identifier is requested value"); + assert_equals(touch1.target, testTarget, "touch.target is requested value"); + assert_approx_equals(touch1.pageX, testPageX, approxEpsilon, "touch.pageX is requested value"); + assert_approx_equals(touch1.pageY, testPageY, approxEpsilon, "touch.pageY is requested value"); + assert_approx_equals(touch1.screenX, testScreenX, approxEpsilon, "touch.screenX is requested value"); + assert_approx_equals(touch1.screenY, testScreenY, approxEpsilon, "touch.screenY is requested value"); + assert_approx_equals(touch1.clientX, testClientX, approxEpsilon, "touch.clientX is requested value."); + assert_approx_equals(touch1.clientY, testClientY, approxEpsilon, "touch.clientY is requested value."); +}, "Touch constructor exists and creates a Touch object with requested properties"); + + +test(function() { + var testTarget = document.getElementById('target0'); + + var touch1 = new Touch({ + identifier: 45, + target: testTarget, + pageX: 45, + pageY: 50, + screenX: 65, + screenY: 60, + clientX: 70, + clientY: 75, + }); + var touch2 = new Touch({ + identifier: 52, + target: testTarget, + pageX: 15, + pageY: 20, + screenX: 15, + screenY: 20, + clientX: 15, + clientY: 20, + }); + + var touchEvent1 = new TouchEvent("ontouchstart", { + touches: [touch1, touch2], + targetTouches: [touch1], + altKey: true, + metaKey: false, + }); + + check_TouchEvent(touchEvent1); + assert_equals(touchEvent1.type, "ontouchstart", "touchEvent.type is requested value"); + assert_equals(touchEvent1.touches.length, 2, "touchEvent.touches.length is requested value"); + assert_equals(touchEvent1.touches[0], touch1, "touchEvent.touches[0] is requested value"); + assert_equals(touchEvent1.touches[1], touch2, "touchEvent.touches[1] is requested value"); + assert_equals(touchEvent1.targetTouches.length, 1, "touchEvent.targetTouches.length is requested value"); + assert_equals(touchEvent1.targetTouches[0], touch1, "touchEvent.targetTouches[0] is requested value"); + assert_equals(touchEvent1.changedTouches.length, 0, "touchEvent.changedTouches.length is requested value"); + assert_equals(touchEvent1.altKey, true, "touchEvent.altKey is requested value"); + assert_equals(touchEvent1.metaKey, false, "touchEvent.metaKey is requested value"); + assert_equals(touchEvent1.ctrlKey, false, "touchEvent.ctrlKey is requested value"); + assert_equals(touchEvent1.shiftKey, false, "touchEvent.shiftKey is requested value."); +}, "TouchEvent constructor exists and creates a TouchEvent object with requested properties"); +</script> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/url/a-element-xhtml.xhtml b/tests/wpt/web-platform-tests/url/a-element-xhtml.xhtml index b46094ccae9..7e11e6d757a 100644 --- a/tests/wpt/web-platform-tests/url/a-element-xhtml.xhtml +++ b/tests/wpt/web-platform-tests/url/a-element-xhtml.xhtml @@ -3,60 +3,12 @@ <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>URL Test</title> - <link rel="author" title="Intel" href="http://www.intel.com/" /> - <link rel="help" href="http://www.w3.org/html/wg/drafts/html/CR/infrastructure.html#urls" /> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> - <script src="urltestparser.js"></script> + <base id="base"/> </head> <body> <div id="log"></div> - <script> - <![CDATA[ - var setup = async_test("Loading data…") - setup.step(function() { - var request = new XMLHttpRequest() - request.open("GET", "urltestdata.txt") - request.send() - request.responseType = "text" - request.onload = setup.step_func(function() { - runURLTests(request.response); - setup.done() - }) - }) - - function setBase(base) { - document.body.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:base", base); - } - - function bURL(url, base) { - base = base || "about:blank" - setBase(base) - var a = document.createElement("a") - a.setAttribute("href", url) - document.body.appendChild(a) - return a - } - - function runURLTests(raw) { - var urltests = URLTestParser(raw) - for(var i = 0, l = urltests.length; i < l; i++) { - var expected = urltests[i] - test(function() { - var url = bURL(expected.input, expected.base) - if(expected.protocol === ':' && url.protocol !== ':') - assert_unreached('Expected URL to fail parsing') - assert_equals(url.protocol, expected.protocol, "scheme") - assert_equals(url.hostname, expected.hostname, "host") - assert_equals(url.port, expected.port, "port") - assert_equals(url.pathname, expected.path, "path") - assert_equals(url.search, expected.search, "search") - assert_equals(url.hash, expected.hash, "hash") - assert_equals(url.href, expected.href, "href") - }, "Parsing: <" + expected.input + "> against <" + expected.base + ">") - } - } - ]]> - </script> + <script src="a-element.js"></script> </body> </html> diff --git a/tests/wpt/web-platform-tests/url/a-element.html b/tests/wpt/web-platform-tests/url/a-element.html index 6e81b0b001f..b190b949d2c 100644 --- a/tests/wpt/web-platform-tests/url/a-element.html +++ b/tests/wpt/web-platform-tests/url/a-element.html @@ -1,62 +1,7 @@ <!doctype html> -<base id=base> <meta charset=utf-8> <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> -<script src=urltestparser.js></script> +<base id=base> <div id=log></div> -<script> -var setup = async_test("Loading data…") -setup.step(function() { - var request = new XMLHttpRequest() - request.open("GET", "urltestdata.json") - request.send() - request.responseType = "json" - request.onload = setup.step_func(function() { - runURLTests(request.response) - setup.done() - }) -}) - -function setBase(base) { - document.getElementById("base").href = base -} - -function bURL(url, base) { - base = base || "about:blank" - setBase(base) - var a = document.createElement("a") - a.setAttribute("href", url) - return a -} - -function runURLTests(urltests) { - for(var i = 0, l = urltests.length; i < l; i++) { - var expected = urltests[i] - if (typeof expected === "string") continue // skip comments - - test(function() { - var url = bURL(expected.input, expected.base) - if(expected.failure) { - if(url.protocol !== ':') { - assert_unreached("Expected URL to fail parsing") - } - assert_equals(url.href, expected.input, "failure should set href to input") - return - } - - assert_equals(url.href, expected.href, "href") - assert_equals(url.origin, expected.origin, "origin") - assert_equals(url.protocol, expected.protocol, "protocol") - assert_equals(url.username, expected.username, "username") - assert_equals(url.password, expected.password, "password") - assert_equals(url.host, expected.host, "host") - assert_equals(url.hostname, expected.hostname, "hostname") - assert_equals(url.port, expected.port, "port") - assert_equals(url.pathname, expected.pathname, "pathname") - assert_equals(url.search, expected.search, "search") - assert_equals(url.hash, expected.hash, "hash") - }, "Parsing: <" + expected.input + "> against <" + expected.base + ">") - } -} -</script> +<script src=a-element.js></script> diff --git a/tests/wpt/web-platform-tests/url/a-element.js b/tests/wpt/web-platform-tests/url/a-element.js new file mode 100644 index 00000000000..1d92c9d88ab --- /dev/null +++ b/tests/wpt/web-platform-tests/url/a-element.js @@ -0,0 +1,53 @@ +var setup = async_test("Loading data…") +setup.step(function() { + var request = new XMLHttpRequest() + request.open("GET", "urltestdata.json") + request.send() + request.responseType = "json" + request.onload = setup.step_func(function() { + runURLTests(request.response) + setup.done() + }) +}) + +function setBase(base) { + document.getElementById("base").href = base +} + +function bURL(url, base) { + base = base || "about:blank" + setBase(base) + var a = document.createElement("a") + a.setAttribute("href", url) + return a +} + +function runURLTests(urltests) { + for(var i = 0, l = urltests.length; i < l; i++) { + var expected = urltests[i] + if (typeof expected === "string") continue // skip comments + + test(function() { + var url = bURL(expected.input, expected.base) + if(expected.failure) { + if(url.protocol !== ':') { + assert_unreached("Expected URL to fail parsing") + } + assert_equals(url.href, expected.input, "failure should set href to input") + return + } + + assert_equals(url.href, expected.href, "href") + assert_equals(url.origin, expected.origin, "origin") + assert_equals(url.protocol, expected.protocol, "protocol") + assert_equals(url.username, expected.username, "username") + assert_equals(url.password, expected.password, "password") + assert_equals(url.host, expected.host, "host") + assert_equals(url.hostname, expected.hostname, "hostname") + assert_equals(url.port, expected.port, "port") + assert_equals(url.pathname, expected.pathname, "pathname") + assert_equals(url.search, expected.search, "search") + assert_equals(url.hash, expected.hash, "hash") + }, "Parsing: <" + expected.input + "> against <" + expected.base + ">") + } +} diff --git a/tests/wpt/web-platform-tests/url/urltestdata.json b/tests/wpt/web-platform-tests/url/urltestdata.json index 2c7d344f163..7d9b9090fb2 100644 --- a/tests/wpt/web-platform-tests/url/urltestdata.json +++ b/tests/wpt/web-platform-tests/url/urltestdata.json @@ -4208,5 +4208,21 @@ "pathname": "/jqueryui@1.2.3", "search": "", "hash": "" + }, + "# tab/LF/CR", + { + "input": "h\tt\nt\rp://h\to\ns\rt:9\t0\n0\r0/p\ta\nt\rh?q\tu\ne\rry#f\tr\na\rg", + "base": "about:blank", + "href": "http://host:9000/path?query#frag", + "origin": "http://host:9000", + "protocol": "http:", + "username": "", + "password": "", + "host": "host:9000", + "hostname": "host", + "port": "9000", + "pathname": "/path", + "search": "?query", + "hash": "#frag" } ] diff --git a/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/duration.html b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/duration.html new file mode 100644 index 00000000000..671cc1215de --- /dev/null +++ b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/duration.html @@ -0,0 +1,73 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>duration tests</title> +<link rel="help" href="http://w3c.github.io/web-animations/#dom-animationeffecttiming-duration"> +<link rel="author" title="Ryo Motozawa" href="mailto:motozawa@mozilla-japan.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../testcommon.js"></script> +<link rel="stylesheet" href="/resources/testharness.css"> +<body> +<div id="log"></div> +<script> +'use strict'; + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = 123.45; + assert_approx_equals(anim.effect.timing.duration, 123.45, 0.000001, + 'set duration 123.45'); + assert_approx_equals(anim.effect.getComputedTiming().duration, 123.45, + 0.000001, + 'getComputedTiming() after set duration 123.45'); +}, 'set duration 123.45'); + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = 'auto'; + assert_equals(anim.effect.timing.duration, 0, 'set duration \'auto\''); + assert_equals(anim.effect.getComputedTiming().duration, 0, + 'getComputedTiming() after set duration \'auto\''); +}, 'set duration auto'); + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = -100; + assert_equals(anim.effect.timing.duration, 0, 'set duration -100'); + assert_equals(anim.effect.getComputedTiming().duration, 0, + 'getComputedTiming() after set duration -100'); +}, 'set duration -100'); + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = 'abc'; + assert_equals(anim.effect.timing.duration, 0, 'set duration \'abc\''); + assert_equals(anim.effect.getComputedTiming().duration, 0, + 'getComputedTiming() after set duration \'abc\''); +}, 'set duration abc'); + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = '100'; + assert_equals(anim.effect.timing.duration, 0, 'set duration \'100\''); + assert_equals(anim.effect.getComputedTiming().duration, 0, + 'getComputedTiming() after set duration \'100\''); +}, 'set duration string 100'); + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.effect.timing.duration = Infinity; + assert_equals(anim.effect.timing.duration, Infinity, 'set duration Infinity'); + assert_equals(anim.effect.getComputedTiming().duration, Infinity, + 'getComputedTiming() after set duration Infinity'); +}, 'set duration Infinity'); + + +</script> +</body> diff --git a/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getAnimations.html b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getAnimations.html new file mode 100644 index 00000000000..5a87a84a669 --- /dev/null +++ b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getAnimations.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>Element.getAnimations tests</title> +<link rel="help" href="http://w3c.github.io/web-animations/#animationeffecttiming"> +<link rel="author" title="Ryo Motozawa" href="mailto:motozawa@mozilla-japan.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../testcommon.js"></script> +<link rel="stylesheet" href="/resources/testharness.css"> +<body> +<div id="log"></div> +<script> +'use strict'; + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 2000); + anim.finish(); + assert_equals(div.getAnimations().length, 0, 'animation finished'); + anim.effect.timing.duration += 100000; + assert_equals(div.getAnimations()[0], anim, 'set duration 102000'); + anim.effect.timing.duration = 0; + assert_equals(div.getAnimations().length, 0, 'set duration 0'); + anim.effect.timing.duration = 'auto'; + assert_equals(div.getAnimations().length, 0, 'set duration \'auto\''); +}, 'when duration is changed'); + +</script> +</body> diff --git a/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getComputedStyle.html b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getComputedStyle.html new file mode 100644 index 00000000000..0e773f7b0d2 --- /dev/null +++ b/tests/wpt/web-platform-tests/web-animations/animation-effect-timing/getComputedStyle.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>getComputedStyle tests</title> +<link rel="help" href="http://w3c.github.io/web-animations/#animationeffecttiming"> +<link rel="author" title="Ryo Motozawa" href="mailto:motozawa@mozilla-japan.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../testcommon.js"></script> +<link rel="stylesheet" href="/resources/testharness.css"> +<body> +<div id="log"></div> +<script> +'use strict'; + +test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, 100000); + anim.finish(); + assert_equals(getComputedStyle(div).opacity, '1', 'animation finished'); + anim.effect.timing.duration *= 2; + assert_equals(getComputedStyle(div).opacity, '0.5', 'set double duration'); + anim.effect.timing.duration = 0; + assert_equals(getComputedStyle(div).opacity, '1', 'set duration 0'); + anim.effect.timing.duration = 'auto'; + assert_equals(getComputedStyle(div).opacity, '1', 'set duration \'auto\''); +}, 'changed duration immediately updates its computed styles'); + +</script> +</body> diff --git a/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-currentIteration.html b/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-currentIteration.html new file mode 100644 index 00000000000..f954e66b978 --- /dev/null +++ b/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-currentIteration.html @@ -0,0 +1,446 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>currentIteration of KeyframeEffectReadOnly getComputedTiming() tests</title> +<link rel="help" href="https://w3c.github.io/web-animations/#dom-animationeffectreadonly-getcomputedtiming"> +<link rel="author" title="Daisuke Akatsuka" href="mailto:daisuke@mozilla-japan.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../testcommon.js"></script> +<link rel="stylesheet" href="/resources/testharness.css"> +<body> +<div id="log"></div> +<script> +'use strict'; + +function executeTests(tests, description) { + tests.forEach(function(currentTest) { + var testParams = ''; + for (var attr in currentTest.input) { + testParams += ' ' + attr + ':' + currentTest.input[attr]; + } + test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, currentTest.input); + assert_equals(anim.effect.getComputedTiming().currentIteration, + currentTest.before); + anim.currentTime = currentTest.input.delay || 0; + assert_equals(anim.effect.getComputedTiming().currentIteration, + currentTest.active); + if (typeof currentTest.after !== 'undefined') { + anim.finish(); + assert_equals(anim.effect.getComputedTiming().currentIteration, + currentTest.after); + } + }, description + testParams); + }); +} + +async_test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, { delay: 1 }); + assert_equals(anim.effect.getComputedTiming().currentIteration, null); + anim.finished.then(t.step_func(function() { + assert_equals(anim.effect.getComputedTiming().currentIteration, null); + t.done(); + })); +}, 'Test currentIteration during before and after phase when fill is none'); + +var gTests_zero_iterations = [ + { + input: { iterations: 0, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 2, + active: 2, + after: 2 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 2, + active: 2, + after: 2 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 2, + active: 2, + after: 2 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 3, + active: 3, + after: 3 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 3, + active: 3, + after: 3 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 3, + active: 3, + after: 3 + } +]; + +var gTests_integer_iterations = [ + { + input: { iterations: 3, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 2, + after: 2 + }, + + { + input: { iterations: 3, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 2 + }, + + { + input: { iterations: 3, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 2, + active: 5, + after: 5 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 2, + active: 2, + after: 5 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 2, + active: 2 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 3, + active: 5, + after: 5 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 3, + active: 3, + after: 5 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 3, + active: 3 + } +]; + +var gTests_fractional_iterations = [ + { + input: { iterations: 3.5, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 3, + after: 3 + }, + + { + input: { iterations: 3.5, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 3 + }, + + { + input: { iterations: 3.5, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 2, + active: 5, + after: 5 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 2, + active: 2, + after: 5 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 2, + active: 2 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 3, + active: 6, + after: 6 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 3, + active: 3, + after: 6 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 3, + active: 3 + } +]; + +var gTests_infinity_iterations = [ + { + input: { iterations: Infinity, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: Infinity, + after: Infinity + }, + + { + input: { iterations: Infinity, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: Infinity, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 2, + active: Infinity, + after: Infinity + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 2, + active: 2 + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 2, + active: 2 + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 3, + active: Infinity, + after: Infinity + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 3, + active: 3 + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 3, + active: 3 + } +]; + +executeTests(gTests_zero_iterations, "Test zero iterations:"); +executeTests(gTests_integer_iterations, "Test integer iterations:"); +executeTests(gTests_fractional_iterations, "Test fractional iterations:"); +executeTests(gTests_infinity_iterations, "Test infinity iterations:"); + +</script> +</body> diff --git a/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-progress.html b/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-progress.html new file mode 100644 index 00000000000..09d8cf00483 --- /dev/null +++ b/tests/wpt/web-platform-tests/web-animations/keyframe-effect/getComputedTiming-progress.html @@ -0,0 +1,446 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>progress of KeyframeEffectReadOnly getComputedTiming() tests</title> +<link rel="help" href="https://w3c.github.io/web-animations/#dom-animationeffectreadonly-getcomputedtiming"> +<link rel="author" title="Daisuke Akatsuka" href="mailto:daisuke@mozilla-japan.org"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="../testcommon.js"></script> +<link rel="stylesheet" href="/resources/testharness.css"> +<body> +<div id="log"></div> +<script> +'use strict'; + +function executeTests(tests, description) { + tests.forEach(function(currentTest) { + var testParams = ''; + for (var attr in currentTest.input) { + testParams += ' ' + attr + ':' + currentTest.input[attr]; + } + test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, currentTest.input); + assert_equals(anim.effect.getComputedTiming().progress, + currentTest.before); + anim.currentTime = currentTest.input.delay || 0; + assert_equals(anim.effect.getComputedTiming().progress, + currentTest.active); + if (typeof currentTest.after !== 'undefined') { + anim.finish(); + assert_equals(anim.effect.getComputedTiming().progress, + currentTest.after); + } + }, description + testParams); + }); +} + +async_test(function(t) { + var div = createDiv(t); + var anim = div.animate({ opacity: [ 0, 1 ] }, { delay: 1 }); + assert_equals(anim.effect.getComputedTiming().progress, null); + anim.finished.then(t.step_func(function() { + assert_equals(anim.effect.getComputedTiming().progress, null); + t.done(); + })); +}, 'Test progress during before and after phase when fill is none'); + +var gTests_zero_iterations = [ + { + input: { iterations: 0, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 0, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + }, + + { + input: { iterations: 0, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0 + } +]; + +var gTests_integer_iterations = [ + { + input: { iterations: 3, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 1, + after: 1 + }, + + { + input: { iterations: 3, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 1 + }, + + { + input: { iterations: 3, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 3, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 1, + after: 1 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 1 + }, + + { + input: { iterations: 3, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + } +]; + +var gTests_fractional_iterations = [ + { + input: { iterations: 3.5, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 3.5, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0.5 + }, + + { + input: { iterations: 3.5, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 1, + after: 1 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 1 + }, + + { + input: { iterations: 3.5, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0, + after: 0.5 + }, + + { + input: { iterations: 3.5, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + } +]; + +var gTests_infinity_iterations = [ + { + input: { iterations: Infinity, + iterationStart: 0, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 1, + after: 1 + }, + + { + input: { iterations: Infinity, + iterationStart: 0, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: Infinity, + iterationStart: 0, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5, + after: 0.5 + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5 + }, + + { + input: { iterations: Infinity, + iterationStart: 2.5, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0.5, + active: 0.5 + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: 0, + delay: 1, + fill: 'both' }, + before: 0, + active: 1, + after: 1 + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: 100, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + }, + + { + input: { iterations: Infinity, + iterationStart: 3, + duration: Infinity, + delay: 1, + fill: 'both' }, + before: 0, + active: 0 + } +]; + +executeTests(gTests_zero_iterations, "Test zero iterations:"); +executeTests(gTests_integer_iterations, "Test integer iterations:"); +executeTests(gTests_fractional_iterations, "Test fractional iterations:"); +executeTests(gTests_infinity_iterations, "Test infinity iterations:"); + +</script> +</body> diff --git a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/buffers/buffer-data-array-buffer.html b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/buffers/buffer-data-array-buffer.html index e227e8b0fcf..d0fcf406556 100644 --- a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/buffers/buffer-data-array-buffer.html +++ b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/buffers/buffer-data-array-buffer.html @@ -86,7 +86,7 @@ gl.bufferSubData(gl.ARRAY_BUFFER, 10, array); wtu.glErrorShouldBe(gl, gl.NO_ERROR); gl.bufferSubData(gl.ARRAY_BUFFER, 10, null); -wtu.glErrorShouldBe(gl, gl.NO_ERROR); +wtu.glErrorShouldBe(gl, [gl.NO_ERROR, gl.INVALID_VALUE]); var successfullyParsed = true; </script> diff --git a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/extensions/webgl-depth-texture.html b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/extensions/webgl-depth-texture.html index 737b76d26d7..6bb81d7c11d 100644 --- a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/extensions/webgl-depth-texture.html +++ b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/extensions/webgl-depth-texture.html @@ -118,8 +118,8 @@ function runTestDisabled() { var tex = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, tex); - wtu.shouldGenerateGLError(gl, gl.INVALID_ENUM, 'gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null)'); - wtu.shouldGenerateGLError(gl, gl.INVALID_ENUM, 'gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null)'); + wtu.shouldGenerateGLError(gl, [gl.INVALID_ENUM, gl.INVALID_VALUE], 'gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null)'); + wtu.shouldGenerateGLError(gl, [gl.INVALID_ENUM, gl.INVALID_VALUE], 'gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 1, 1, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_INT, null)'); } diff --git a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/functions/texImage2DBadArgs.html b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/functions/texImage2DBadArgs.html index 29eaa9de8ca..9c59421f01e 100644 --- a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/functions/texImage2DBadArgs.html +++ b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/functions/texImage2DBadArgs.html @@ -63,7 +63,7 @@ Tests.testTexImage2D = function(gl) { assertGLError(gl, gl.INVALID_ENUM, "bad target", function(){ gl.texImage2D(gl.FLOAT, 0, gl.RGBA, 1,1,0,gl.RGBA,gl.UNSIGNED_BYTE, null); }); - assertGLError(gl, gl.INVALID_ENUM, "bad internal format/format", function(){ + assertGLError(gl, [gl.INVALID_ENUM, gl.INVALID_VALUE], "bad internal format/format", function(){ gl.texImage2D(gl.TEXTURE_2D, 0, gl.FLOAT, 1,1,0,gl.FLOAT,gl.UNSIGNED_BYTE, null); }); assertGLError(gl, gl.INVALID_VALUE, "border > 0", function(){ diff --git a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/util.js b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/util.js index 4359fe46c89..e1d5d638a61 100644 --- a/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/util.js +++ b/tests/wpt/web-platform-tests/webgl/conformance-1.0.3/conformance/more/util.js @@ -1020,6 +1020,40 @@ function assertGLError(gl, err, name, f) { return true; } +// Assert that f generates a GL error from a list. +function assertGLErrorIn(gl, expectedErrorList, name, f) { + if (f == null) { f = name; name = null; } + + var actualError = 0; + try { + f(); + } catch(e) { + if ('glError' in e) { + actualError = e.glError; + } else { + testFailed("assertGLError: UNEXPCETED EXCEPTION", name, f); + return false; + } + } + + var expectedErrorStrList = []; + var expectedErrorSet = {}; + for (var i in expectedErrorList) { + var cur = expectedErrorList[i]; + expectedErrorSet[cur] = true; + expectedErrorStrList.push(getGLErrorAsString(gl, cur)); + } + var expectedErrorListStr = "[" + expectedErrorStrList.join(", ") + "]"; + + if (actualError in expectedErrorSet) { + return true; + } + + testFailed("assertGLError: expected: " + expectedErrorListStr + + " actual: " + getGLErrorAsString(gl, actualError), name, f); + return false; +} + // Assert that f generates some GL error. Used in situations where it's // ambigious which of multiple possible errors will be generated. function assertSomeGLError(gl, name, f) { diff --git a/tests/wpt/web-platform-tests/webmessaging/MessageEvent.html b/tests/wpt/web-platform-tests/webmessaging/MessageEvent.html new file mode 100644 index 00000000000..e95b3efc2ac --- /dev/null +++ b/tests/wpt/web-platform-tests/webmessaging/MessageEvent.html @@ -0,0 +1,21 @@ +<!doctype html> +<meta charset=utf-8> +<title>MessageEvent</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<div id=log></div> +<script> +var prefixes = ['moz', 'ms', 'o', 'webkit']; +prefixes.forEach(function(prefix) { + var name = prefix + "InitMessageEvent"; + + test(function() { + assert_false(name in MessageEvent.prototype); + }, name + " on the prototype"); + + test(function() { + var event = new MessageEvent("message"); + assert_false(name in event); + }, name + " on the instance"); +}); +</script> diff --git a/tests/wpt/web-platform-tests/webmessaging/MessageEvent_properties.htm b/tests/wpt/web-platform-tests/webmessaging/MessageEvent_properties.htm index f95c257f0c9..389add98d1f 100644 --- a/tests/wpt/web-platform-tests/webmessaging/MessageEvent_properties.htm +++ b/tests/wpt/web-platform-tests/webmessaging/MessageEvent_properties.htm @@ -9,39 +9,24 @@ <div id=log></div> <div style="display:none"> - <iframe width="70%" onload="PostMessageTest()" src="./support/ChildWindowPostMessage.htm"></iframe> + <iframe width="70%" onload="do_test()" src="./support/ChildWindowPostMessage.htm"></iframe> </div> <script> +async_test(function() { + window.do_test = this.step_func(function() { + document.querySelector("iframe").contentWindow.postMessage("foo", "*"); + }) - - var description = "Test Description: " + - "Create an event that uses the MessageEvent interface, with the event type message, " + - "which does not bubble, is not cancelable, and has no default action."; - - var t = async_test(description); - - var DATA = "foo"; - var TARGET = document.querySelector("iframe"); - var ExpectedResult = [true, true, false, false, false]; - var ActualResult = []; - - function PostMessageTest() - { - TARGET.contentWindow.postMessage(DATA, "*"); - } - - window.addEventListener("message", t.step_func(function(e) - { + window.addEventListener("message", this.step_func_done(function(e) { e.preventDefault(); - - ActualResult = [(e instanceof MessageEvent), (e.type == "message"), e.bubbles, e.cancelable, e.defaultPrevented]; - - assert_array_equals(ActualResult, ExpectedResult, "ActualResult"); - - t.done(); - + assert_true(e instanceof MessageEvent, "Should be MessageEvent"); + assert_equals(e.type, "message"); + assert_false(e.bubbles, "bubbles"); + assert_false(e.cancelable, "cancelable"); + assert_false(e.defaultPrevented, "defaultPrevented"); }), false); +}); </script> </body> </html> diff --git a/tests/wpt/web-platform-tests/websockets/Close-0.htm b/tests/wpt/web-platform-tests/websockets/Close-0.htm index e6496d9909b..4dd88f6c718 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-0.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-0.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is 0</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-1000-reason.htm b/tests/wpt/web-platform-tests/websockets/Close-1000-reason.htm index 88fbc611640..8424d7882a4 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-1000-reason.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-1000-reason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is 1000 and reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-1000.htm b/tests/wpt/web-platform-tests/websockets/Close-1000.htm index d1711d924f6..1622109d8e8 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-1000.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-1000.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is 1000</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-NaN.htm b/tests/wpt/web-platform-tests/websockets/Close-NaN.htm index 05b471fc558..8fd2219299b 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-NaN.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-NaN.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is NaN</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.htm b/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.htm index bfc12e33733..82a661e2414 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Reason is more than 123 bytes long</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-clamp.htm b/tests/wpt/web-platform-tests/websockets/Close-clamp.htm index d6870ea2626..6660e813e2c 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-clamp.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-clamp.htm @@ -2,7 +2,7 @@ <title>WebSocket#close(2**16+1000)</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="websocket.js?pipe=sub"></script> +<script src="websocket.sub.js"></script> <div id="log"></div> <script> test(function() { diff --git a/tests/wpt/web-platform-tests/websockets/Close-null.htm b/tests/wpt/web-platform-tests/websockets/Close-null.htm index 165fc2d0dfb..dcd477313e6 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-null.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-null.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is null</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.htm b/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.htm index cabbe97ca61..9ad8d618cad 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Reason with unpaired surrogates</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-string.htm b/tests/wpt/web-platform-tests/websockets/Close-string.htm index 75a3a90ac66..d394d5ccad0 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-string.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-string.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is String</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Close-undefined.htm b/tests/wpt/web-platform-tests/websockets/Close-undefined.htm index 3de1656561c..d6c89afbf05 100644 --- a/tests/wpt/web-platform-tests/websockets/Close-undefined.htm +++ b/tests/wpt/web-platform-tests/websockets/Close-undefined.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close WebSocket - Code is undefined</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-blocked-port.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-blocked-port.htm index 8a4866d0724..572ff1652ce 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-blocked-port.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-blocked-port.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket - blocked port</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.htm index ea1774d9618..2f9f7976589 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.htm index f5fc467b4ad..d2dfe1bd79f 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket - url with space</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.htm index 427f94499c6..d61a429c51c 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket with valid url and array of protocols</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.htm index a9f772ffdf3..0261fb48ab1 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket - binaryType set correctly</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.htm index 56330805f83..a7f1510a00c 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket and verify if protocol is set correctly after connection</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.htm index 6fcaaec6f07..7250b4e7bf5 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket with valid url and protocol string</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.htm index 2e448f24ec6..1fe6c0f4351 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket with valid url</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.htm b/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.htm index 01cb239e7ba..63e49f4f7f4 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket - wsocket.url is set correctly - non default port</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.htm b/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.htm index 7309009d052..0d0480eb721 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - ascii protocol string with separator</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.htm b/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.htm index 483ba29ccc8..c4a4c79869d 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - pass in list of invalid urls</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.htm b/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.htm index 5fa19c9e614..2ed8ece16fe 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - non absolute url</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.htm b/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.htm index 7c758470187..fd3401801dd 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - non ascii protocol string</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.htm b/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.htm index 54100be9afc..023a498319e 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - protocol with space</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.htm b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.htm index f32ce5bfd58..47225ef2ec6 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - repeated protocols with different case</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.htm b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.htm index eaad41d9bf4..6a62bca501c 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - repeated protocols</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.htm b/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.htm index ef979114a8a..3ebf3f5623a 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.htm @@ -2,7 +2,7 @@ <html> <head> <title>W3C WebSocket API - Create WebSocket with valid url and array of protocols</title> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> </head> diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.htm b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.htm index 9961075f3ab..9146937ba6a 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - wsocket.protocol is empty before connection is established</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.htm b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.htm index 3457b704e50..0a6dd97f0da 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.htm @@ -2,7 +2,7 @@ <html> <head> <title>W3C WebSocket API - Create WebSocket with a valid url and protocol string</title> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> </head> diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url.htm b/tests/wpt/web-platform-tests/websockets/Create-valid-url.htm index 7803a6e9748..e74a7bfef2d 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-valid-url.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket with valid url</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.htm b/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.htm index 08a01cb52c0..181794df951 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - wsocket.url is set correctly - non default port</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.htm b/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.htm index 6507761882d..a0a98205eba 100644 --- a/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.htm +++ b/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create WebSocket - non ws/wss scheme in url</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/OWNERS b/tests/wpt/web-platform-tests/websockets/OWNERS index a34c94d717f..de8d614a7c8 100644 --- a/tests/wpt/web-platform-tests/websockets/OWNERS +++ b/tests/wpt/web-platform-tests/websockets/OWNERS @@ -3,7 +3,6 @@ @plehegar @zqzhang @sideshowbarker -@foolip @Jxck @jdm @Ms2ger diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-0.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-0.htm index 1babd4b4825..03f8aa5faf7 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-0.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-0.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 0</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.htm index 750c43c5ae3..3dead6bfbd9 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 1000 and reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.htm index b0f6c8ea843..0cac622f353 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 1000 - verify code in CloseEvent is 1000</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.htm index ebe4f7844c7..3da86305a19 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 1000</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.htm index 4d2d81cf1cd..6414b770c37 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - verify return code is 1005</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.htm index 7f6f6e11b44..de8f51f28c6 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 1005</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.htm index 0eddc1d6263..223fc62efb4 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 2999 and reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.htm index 647bbf2d05a..80a8be781a8 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 3000 and reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.htm index 5a13d442705..9d385d99b8b 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 3000 - verify code in CloseEvent is 3000</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.htm index cfa5693f3ba..a6ea069491a 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is 4999 and reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-NaN.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-NaN.htm index 10013024d93..aae6075dc23 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-NaN.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-NaN.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is NaN</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.htm index 0c0c1b59546..94feb0f27ee 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Reason is more than 123 bytes long</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.htm index 033555db7d6..6947173324b 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Reason with unpaired surrogates</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-null.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-null.htm index 30f4935f897..f6b67d5ffca 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-null.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-null.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is null</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.htm index cad49329c00..278d7aa330c 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Only reason</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.htm index 3e7b09c47f7..3ed38a8fe38 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - verify readyState is 3 when onclose is fired</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.htm index 0e085c65c05..10483965f19 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - verify readyState is 2 before onclose is fired</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.htm index 573539af8c6..4262754cbca 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Server Initiated close</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-string.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-string.htm index 20dffe1e661..64bf16b1ee5 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-string.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-string.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is string</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.htm b/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.htm index f6c77ba77ad..9bd4861f023 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Close Secure WebSocket - Code is undefined</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.htm index cbbf5c2c511..f9bbe376d62 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send 65K data - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.htm index bd488f021f0..64cfc024129 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send 65K binary data - ArrayBuffer - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.htm index 9c81e462f42..0e068ff5738 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBuffer - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.htm index cdc7c240fcd..30a8010a229 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Float32Array - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.htm index 2123b5d4c89..1e121a882f3 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Float32Array - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.htm index 406f9234d9d..316c62c9625 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Int32Array - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.htm index 0de53f6883d..1737d93b13c 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Uint16Array with offset and length - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.htm index 89347004a13..735bae5ff3f 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Uint32Array with offset - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.htm index c2849c845b1..83e14351a52 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Uint8Array with offset and length - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.htm index 1e0934029d8..413ec34312e 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Uint8Array with offset - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.htm index eb80e1bd3df..6d52aa7e818 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - Blob - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-data.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-data.htm index 7f679fe731a..d7c1595b3a5 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send data - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-null.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-null.htm index 1adf3c9a891..0a203359b39 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-null.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-null.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send null data - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.htm index 4261815be52..959e307d218 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send (paired surrogates) data - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.htm index 01555e069d7..42de6416402 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send unicode data - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.htm b/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.htm index 99dfbd3ec24..11df504b133 100644 --- a/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send unpaired surrogates - Secure WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-0byte-data.htm b/tests/wpt/web-platform-tests/websockets/Send-0byte-data.htm index 328816f82f6..52ab7ca5b8f 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-0byte-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-0byte-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send 0 byte data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-65K-data.htm b/tests/wpt/web-platform-tests/websockets/Send-65K-data.htm index 151af2da4a7..7d223403c39 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-65K-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-65K-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send 65K data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.htm b/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.htm index 3e70923e742..6697e687a5d 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send unpaired surrogates - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-before-open.htm b/tests/wpt/web-platform-tests/websockets/Send-before-open.htm index 23a9460e646..1aace5405c2 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-before-open.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-before-open.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send WebSocket - Send before connection in established</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.htm b/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.htm index e4d26846f74..95c12cf80d9 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send 65K binary data - ArrayBuffer - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.htm b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.htm index aeb4a38e76b..b960b921add 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBuffer - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.htm b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.htm index 869e6de0388..0ebd3ac2a1e 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Int16Array with offset - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.htm b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.htm index c46d7aa1a6c..5336a877875 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - ArrayBufferView - Int8Array - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-blob.htm b/tests/wpt/web-platform-tests/websockets/Send-binary-blob.htm index 00a3ec5fe0d..fa14f4cd49b 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-binary-blob.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-binary-blob.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send binary data - Blob - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-data.htm b/tests/wpt/web-platform-tests/websockets/Send-data.htm index cb58a30a3ea..547a15f8642 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-data.worker.js b/tests/wpt/web-platform-tests/websockets/Send-data.worker.js index f03776fb323..f607fd7cf38 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-data.worker.js +++ b/tests/wpt/web-platform-tests/websockets/Send-data.worker.js @@ -1,5 +1,5 @@ importScripts("/resources/testharness.js"); -importScripts('websocket.js?pipe=sub') +importScripts('websocket.sub.js') var data = "test data"; diff --git a/tests/wpt/web-platform-tests/websockets/Send-null.htm b/tests/wpt/web-platform-tests/websockets/Send-null.htm index b59e4a30573..5b7a6f15042 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-null.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-null.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send null data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.htm b/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.htm index 055cfd212c9..44132212b12 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send (paired surrogates) data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/Send-unicode-data.htm b/tests/wpt/web-platform-tests/websockets/Send-unicode-data.htm index 77ec1b66e68..aba7918378b 100644 --- a/tests/wpt/web-platform-tests/websockets/Send-unicode-data.htm +++ b/tests/wpt/web-platform-tests/websockets/Send-unicode-data.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Send unicode data - WebSocket</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.htm b/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.htm index 957d97e7784..2bab6710cdc 100644 --- a/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.htm +++ b/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.htm @@ -4,7 +4,7 @@ <title>W3C WebSocket API - Create Secure WebSocket - binaryType is set to something other than blob/arraybuffer</title> <script type="text/javascript" src="/resources/testharness.js"></script> <script type="text/javascript" src="/resources/testharnessreport.js"></script> - <script type="text/javascript" src="websocket.js?pipe=sub"></script> + <script type="text/javascript" src="websocket.sub.js"></script> </head> <body> <div id="log"></div> diff --git a/tests/wpt/web-platform-tests/websockets/constructor.html b/tests/wpt/web-platform-tests/websockets/constructor.html index ca379bdfa2b..c135b325ec6 100644 --- a/tests/wpt/web-platform-tests/websockets/constructor.html +++ b/tests/wpt/web-platform-tests/websockets/constructor.html @@ -2,7 +2,7 @@ <title>WebSocket constructor</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="websocket.js?pipe=sub"></script> +<script src="websocket.sub.js"></script> <div id="log"></div> <script> test(function() { diff --git a/tests/wpt/web-platform-tests/websockets/eventhandlers.html b/tests/wpt/web-platform-tests/websockets/eventhandlers.html index 4fae08d4338..95aeb0b1239 100644 --- a/tests/wpt/web-platform-tests/websockets/eventhandlers.html +++ b/tests/wpt/web-platform-tests/websockets/eventhandlers.html @@ -2,7 +2,7 @@ <title>WebSocket event handlers</title> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> -<script src="websocket.js?pipe=sub"></script> +<script src="websocket.sub.js"></script> <div id="log"></div> <script> function testEventHandler(name) { diff --git a/tests/wpt/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker.js b/tests/wpt/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker.js index 1a10e1e7e6c..85954ca2b14 100644 --- a/tests/wpt/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker.js +++ b/tests/wpt/web-platform-tests/websockets/opening-handshake/003-sets-origin.worker.js @@ -1,6 +1,6 @@ importScripts("/resources/testharness.js"); importScripts('../constants.js?pipe=sub'); -importScripts('../websocket.js?pipe=sub'); +importScripts('../websocket.sub.js'); async_test(function(t) { var ws = new WebSocket(SCHEME_DOMAIN_PORT+'/origin'); diff --git a/tests/wpt/web-platform-tests/websockets/websocket.js b/tests/wpt/web-platform-tests/websockets/websocket.sub.js index 65c4c30365d..65c4c30365d 100644 --- a/tests/wpt/web-platform-tests/websockets/websocket.js +++ b/tests/wpt/web-platform-tests/websockets/websocket.sub.js |