Resync tests up to c1716b039411090428e7073158b1aea081dafe71
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 15 Oct 2017 01:28:10 +0000 (01:28 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 15 Oct 2017 01:28:10 +0000 (01:28 +0000)
https://bugs.webkit.org/show_bug.cgi?id=178241

Patch by Youenn Fablet <youenn@apple.com> on 2017-10-14
Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

* resources/TestRepositories:
* resources/resource-files.json:
* web-platform-tests/IndexedDB/idb-binary-key-detached.htm:
* web-platform-tests/IndexedDB/keypath-exceptions.htm:
* web-platform-tests/WebCryptoAPI/digest/digest.js:
(run_test.):
* web-platform-tests/XMLHttpRequest/abort-after-stop-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/abort-after-stop.htm: Removed.
* web-platform-tests/XMLHttpRequest/event-error-order.sub-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/event-error-order.sub.html: Removed.
* web-platform-tests/XMLHttpRequest/event-timeout-order-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/event-timeout-order.htm: Removed.
* web-platform-tests/XMLHttpRequest/open-url-worker-origin-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm: Removed.
* web-platform-tests/XMLHttpRequest/responsetype-expected.txt:
* web-platform-tests/XMLHttpRequest/send-after-setting-document-domain-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-after-setting-document-domain.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-cors.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-basic.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-entity-body-basic-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-entity-body-basic.htm: Removed.
* web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub-expected.txt: Removed.
* web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub.htm: Removed.
* web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt:
* web-platform-tests/XMLHttpRequest/w3c-import.log:
* web-platform-tests/background-fetch/interfaces-expected.txt:
* web-platform-tests/background-fetch/interfaces.idl:
* web-platform-tests/background-fetch/interfaces.worker-expected.txt:
* web-platform-tests/background-fetch/interfaces.worker.js:
* web-platform-tests/beacon/headers/header-content-type-expected.txt:
* web-platform-tests/common/vendor-prefix.js: Removed.
* web-platform-tests/common/w3c-import.log:
* web-platform-tests/css/css-grid-1/abspos/w3c-import.log:
* web-platform-tests/css/css-grid-1/support/w3c-import.log:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-004.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-005.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-box-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-004.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-005.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-006.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-007.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-008.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-009.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-010.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-011.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-004.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-005.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-006.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-007.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-008.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-009.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-010.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-011.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-004.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-005.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-006.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-007.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-008.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-009.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-002.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-003.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-004.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-005.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-006.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-001.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-box-pair-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-inherit-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-initial-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-none-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-notation-000.html:
* web-platform-tests/css/css-shapes-1/shape-outside/values/support/parsing-utils.js:
(convertToPx):
(each):
(setupFonts):
* web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html:
* web-platform-tests/css/css-shapes-1/w3c-import.log:
* web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html:
* web-platform-tests/css/selectors4/w3c-import.log:
* web-platform-tests/cssom/OWNERS:
* web-platform-tests/cssom/getComputedStyle-pseudo-expected.txt:
* web-platform-tests/cssom/getComputedStyle-pseudo.html:
* web-platform-tests/cssom/style-sheet-interfaces-001-expected.txt:
* web-platform-tests/cssom/style-sheet-interfaces-001.html:
* web-platform-tests/cssom/w3c-import.log:
* web-platform-tests/custom-elements/Document-createElement-expected.txt:
* web-platform-tests/custom-elements/Document-createElement.html:
* web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt:
* web-platform-tests/custom-elements/w3c-import.log:
* web-platform-tests/dom/events/Event-timestamp-safe-resolution.html:
* web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
* web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
* web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
* web-platform-tests/dom/nodes/Document-constructor.html:
* web-platform-tests/dom/nodes/Element-matches-expected.txt:
* web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt:
* web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt:
* web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt:
* web-platform-tests/dom/nodes/selectors.js:
* web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm:
* web-platform-tests/eventsource/eventsource-constructor-non-same-origin-expected.txt:
* web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm:
* web-platform-tests/eventsource/resources/last-event-id.py:
(main):
* web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin-expected.txt:
* web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm:
* web-platform-tests/fetch/api/basic/integrity-expected.txt:
* web-platform-tests/fetch/api/basic/integrity-worker-expected.txt:
* web-platform-tests/fetch/api/basic/integrity.js:
(integrity):
* web-platform-tests/fetch/api/headers/headers-combine-expected.txt:
* web-platform-tests/fetch/api/headers/headers-combine.html:
* web-platform-tests/fetch/api/request/request-error-expected.txt:
* web-platform-tests/fetch/api/request/request-error.js:
* web-platform-tests/fetch/api/request/request-headers-expected.txt:
* web-platform-tests/fetch/api/request/request-headers.html:
* web-platform-tests/fetch/api/request/request-idl-expected.txt:
* web-platform-tests/fetch/api/request/request-idl.html:
* web-platform-tests/fetch/api/request/request-structure-expected.txt:
* web-platform-tests/fetch/api/request/request-structure.html:
* web-platform-tests/fetch/api/request/w3c-import.log:
* web-platform-tests/fetch/api/response/response-clone-expected.txt:
* web-platform-tests/fetch/api/response/response-init-001-expected.txt:
* web-platform-tests/fetch/api/response/response-init-001.html:
* web-platform-tests/fetch/api/response/w3c-import.log:
* web-platform-tests/fonts/Ahem.ttf:
* web-platform-tests/hr-time/idlharness-expected.txt:
* web-platform-tests/hr-time/idlharness.html:
* web-platform-tests/html/README.md:
* web-platform-tests/html/browsers/browsing-the-web/history-traversal/w3c-import.log:
* web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/w3c-import.log:
* web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt:
* web-platform-tests/html/dom/interfaces.html:
* web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/historical.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt:
* web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html:
* web-platform-tests/html/semantics/embedded-content/media-elements/video_008.htm:
* web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross-expected.txt:
* web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html:
* web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect-expected.txt:
* web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html:
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm:
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
* web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
* web-platform-tests/html/semantics/forms/the-progress-element/progress-expected.txt:
* web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
* web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
* web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
* web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt:
* web-platform-tests/html/syntax/serializing-html-fragments/serializing.html:
* web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt:
* web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt:
* web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt:
* web-platform-tests/lint.whitelist:
* web-platform-tests/mediacapture-fromelement/capture.html:
* web-platform-tests/mediacapture-fromelement/creation.html:
* web-platform-tests/mediacapture-fromelement/ended.html:
* web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub.html:
* web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html:
* web-platform-tests/resource-timing/idlharness-expected.txt:
* web-platform-tests/resource-timing/idlharness.html:
* web-platform-tests/resources/idlharness.js:
(IdlInterface.prototype.test_to_json_operation):
* web-platform-tests/resources/test/tests/api-tests-1.html:
* web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html:
* web-platform-tests/resources/testharness.js:
* web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
* web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html:
* web-platform-tests/service-workers/service-worker/fetch-request-xhr.https.html:
* web-platform-tests/service-workers/service-worker/navigation-preload/resources/redirect-scope.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/bytecheck-worker-imported-script.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/bytecheck-worker.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/fetch-event-redirect-iframe.html: Removed.
* web-platform-tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html:
* web-platform-tests/service-workers/service-worker/resources/navigation-redirect-out-scope.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope1.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope2.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker-imported-script.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker.py:
(main):
* web-platform-tests/service-workers/service-worker/resources/w3c-import.log:
* web-platform-tests/service-workers/service-worker/w3c-import.log:
* web-platform-tests/shadow-dom/Extensions-to-Event-Interface-expected.txt:
* web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html:
* web-platform-tests/shadow-dom/event-inside-shadow-tree-expected.txt:
* web-platform-tests/shadow-dom/event-with-related-target.html:
* web-platform-tests/shadow-dom/leaktests/get-elements-expected.txt:
* web-platform-tests/shadow-dom/resources/event-path-test-helpers.js:
(dispatchEventWithEventLog):
* web-platform-tests/shadow-dom/slotchange-event-expected.txt:
* web-platform-tests/shadow-dom/w3c-import.log:
* web-platform-tests/streams/piping/general-expected.txt:
* web-platform-tests/streams/readable-byte-streams/general.js:
(promise_test):
* web-platform-tests/streams/readable-byte-streams/w3c-import.log:
* web-platform-tests/streams/readable-streams/pipe-through-expected.txt: Removed.
* web-platform-tests/tools/manifest/catalog/xhtml.dtd:
* web-platform-tests/tools/manifest/sourcefile.py:
(SourceFile.references):
(SourceFile.spec_links):
* web-platform-tests/tools/manifest/tests/test_sourcefile.py:
(test_relpath_normalized):
(test_reftest_url_whitespace):
(test_spec_links_whitespace):
* web-platform-tests/tools/wptserve/tests/functional/test_handlers.py:
(TestDirectoryHandler.test_subdirectory_no_trailing_slash):
* web-platform-tests/tools/wptserve/wptserve/handlers.py:
(DirectoryHandler.__call__):
* web-platform-tests/update-built-tests.sh:
* web-platform-tests/url/a-element-expected.txt:
* web-platform-tests/url/a-element-xhtml-expected.txt:
* web-platform-tests/url/url-constructor-expected.txt:
* web-platform-tests/url/urltestdata.json:
* web-platform-tests/webrtc/RTCCertificate.html:
* web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
* web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.html: Removed.
* web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.html: Removed.
* web-platform-tests/webrtc/RTCDTMFSender-ontonechange.html: Removed.
* web-platform-tests/webrtc/RTCPeerConnection-addTrack.html: Removed.
* web-platform-tests/webrtc/RTCPeerConnection-getStats.html: Removed.
* web-platform-tests/webrtc/RTCPeerConnection-ontrack.html: Removed.
* web-platform-tests/webrtc/RTCPeerConnection-removeTrack.html: Removed.
* web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.html: Removed.
* web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.html: Removed.
* web-platform-tests/webrtc/historical-expected.txt:
* web-platform-tests/webrtc/historical.html:
* web-platform-tests/webrtc/simplecall-expected.txt:
* web-platform-tests/webrtc/simplecall.html:
* web-platform-tests/webrtc/w3c-import.log:

LayoutTests:

Rebasing expectations.

* TestExpectations: Skipping unsupported tests.
* http/wpt/fetch/request-clone-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt: Added.
* platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
* platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
* platform/mac-wk1/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt:
* tests-options.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@223327 268f45cc-cd09-0410-ab3c-d52691b4dbfc

268 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/http/wpt/fetch/request-clone-expected.txt
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/TestRepositories
LayoutTests/imported/w3c/resources/resource-files.json
LayoutTests/imported/w3c/web-platform-tests/IndexedDB/idb-binary-key-detached.htm
LayoutTests/imported/w3c/web-platform-tests/IndexedDB/keypath-exceptions.htm
LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/digest/digest.js
LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/responsetype-expected.txt
LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt
LayoutTests/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt
LayoutTests/imported/w3c/web-platform-tests/background-fetch/interfaces.idl
LayoutTests/imported/w3c/web-platform-tests/background-fetch/interfaces.worker-expected.txt
LayoutTests/imported/w3c/web-platform-tests/background-fetch/interfaces.worker.js
LayoutTests/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt
LayoutTests/imported/w3c/web-platform-tests/common/vendor-prefix.js [deleted file]
LayoutTests/imported/w3c/web-platform-tests/common/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-004.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-005.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-box-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-004.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-005.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-006.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-007.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-008.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-009.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-010.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-011.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-004.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-005.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-006.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-007.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-008.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-009.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-010.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-011.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-004.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-005.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-006.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-007.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-008.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-009.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-003.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-004.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-005.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-006.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-box-pair-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-inherit-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-initial-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-none-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-notation-000.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside/values/support/parsing-utils.js
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html
LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html
LayoutTests/imported/w3c/web-platform-tests/css/selectors4/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/cssom/OWNERS
LayoutTests/imported/w3c/web-platform-tests/cssom/getComputedStyle-pseudo-expected.txt
LayoutTests/imported/w3c/web-platform-tests/cssom/getComputedStyle-pseudo.html
LayoutTests/imported/w3c/web-platform-tests/cssom/style-sheet-interfaces-001-expected.txt
LayoutTests/imported/w3c/web-platform-tests/cssom/style-sheet-interfaces-001.html
LayoutTests/imported/w3c/web-platform-tests/cssom/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/custom-elements/Document-createElement-expected.txt
LayoutTests/imported/w3c/web-platform-tests/custom-elements/Document-createElement.html
LayoutTests/imported/w3c/web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt
LayoutTests/imported/w3c/web-platform-tests/custom-elements/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/dom/events/Event-timestamp-safe-resolution.html
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DOMImplementation-createDocument.html
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Document-constructor.html
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Element-matches-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt
LayoutTests/imported/w3c/web-platform-tests/dom/nodes/selectors.js
LayoutTests/imported/w3c/web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm
LayoutTests/imported/w3c/web-platform-tests/eventsource/eventsource-constructor-non-same-origin-expected.txt
LayoutTests/imported/w3c/web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm
LayoutTests/imported/w3c/web-platform-tests/eventsource/resources/last-event-id.py
LayoutTests/imported/w3c/web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin-expected.txt
LayoutTests/imported/w3c/web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm
LayoutTests/imported/w3c/web-platform-tests/fetch/api/basic/integrity-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/basic/integrity-worker-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/basic/integrity.js
LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-combine-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-combine.html
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-error-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-error.js
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-headers-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-headers.html
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-idl-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-idl.html
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-structure-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-structure.html
LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-clone-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-init-001-expected.txt
LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-init-001.html
LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/fonts/Ahem.ttf
LayoutTests/imported/w3c/web-platform-tests/hr-time/idlharness-expected.txt
LayoutTests/imported/w3c/web-platform-tests/hr-time/idlharness.html
LayoutTests/imported/w3c/web-platform-tests/html/README.md
LayoutTests/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/dom/interfaces.html
LayoutTests/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/historical.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/video_008.htm
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-progress-element/progress-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/syntax/serializing-html-fragments/serializing.html
LayoutTests/imported/w3c/web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt
LayoutTests/imported/w3c/web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt
LayoutTests/imported/w3c/web-platform-tests/lint.whitelist
LayoutTests/imported/w3c/web-platform-tests/mediacapture-fromelement/capture.html
LayoutTests/imported/w3c/web-platform-tests/mediacapture-fromelement/creation.html
LayoutTests/imported/w3c/web-platform-tests/mediacapture-fromelement/ended.html
LayoutTests/imported/w3c/web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html
LayoutTests/imported/w3c/web-platform-tests/resource-timing/idlharness-expected.txt
LayoutTests/imported/w3c/web-platform-tests/resource-timing/idlharness.html
LayoutTests/imported/w3c/web-platform-tests/resources/idlharness.js
LayoutTests/imported/w3c/web-platform-tests/resources/test/tests/api-tests-1.html
LayoutTests/imported/w3c/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html
LayoutTests/imported/w3c/web-platform-tests/resources/testharness.js
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/fetch-request-xhr.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-preload/resources/redirect-scope.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/bytecheck-worker-imported-script.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/bytecheck-worker.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-event-redirect-iframe.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/navigation-redirect-out-scope.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope1.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope2.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker-imported-script.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker.py
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/resources/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface-expected.txt
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/event-inside-shadow-tree-expected.txt
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/event-with-related-target.html
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/leaktests/get-elements-expected.txt
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/resources/event-path-test-helpers.js
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/slotchange-event-expected.txt
LayoutTests/imported/w3c/web-platform-tests/shadow-dom/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/streams/piping/general-expected.txt
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/general.js
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/pipe-through-expected.txt [deleted file]
LayoutTests/imported/w3c/web-platform-tests/tools/manifest/catalog/xhtml.dtd
LayoutTests/imported/w3c/web-platform-tests/tools/manifest/sourcefile.py
LayoutTests/imported/w3c/web-platform-tests/tools/manifest/tests/test_sourcefile.py
LayoutTests/imported/w3c/web-platform-tests/tools/wptserve/tests/functional/test_handlers.py
LayoutTests/imported/w3c/web-platform-tests/tools/wptserve/wptserve/handlers.py
LayoutTests/imported/w3c/web-platform-tests/update-built-tests.sh
LayoutTests/imported/w3c/web-platform-tests/url/a-element-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/a-element-xhtml-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/url-constructor-expected.txt
LayoutTests/imported/w3c/web-platform-tests/url/urltestdata.json
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCCertificate.html
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCDTMFSender-ontonechange.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-addTrack.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-addTrack.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-addTrack.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-getStats.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-getStats.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-getStats.html with 98% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-ontrack.html [deleted file]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-removeTrack.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-removeTrack.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-removeTrack.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.https-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.https.html [moved from LayoutTests/imported/w3c/web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.html with 100% similarity]
LayoutTests/imported/w3c/web-platform-tests/webrtc/historical-expected.txt
LayoutTests/imported/w3c/web-platform-tests/webrtc/historical.html
LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall-expected.txt
LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall.html
LayoutTests/imported/w3c/web-platform-tests/webrtc/simplecall.html.orig [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/webrtc/w3c-import.log
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt
LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt
LayoutTests/tests-options.json

index 46d0146..996145b 100644 (file)
@@ -1,5 +1,22 @@
 2017-10-14  Youenn Fablet  <youenn@apple.com>
 
+        Resync tests up to c1716b039411090428e7073158b1aea081dafe71
+        https://bugs.webkit.org/show_bug.cgi?id=178241
+
+        Reviewed by Ryosuke Niwa.
+
+        Rebasing expectations.
+
+        * TestExpectations: Skipping unsupported tests.
+        * http/wpt/fetch/request-clone-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/beacon/headers/header-content-type-expected.txt: Added.
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
+        * platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
+        * platform/mac-wk1/imported/w3c/web-platform-tests/background-fetch/interfaces-expected.txt:
+        * tests-options.json:
+
+2017-10-14  Youenn Fablet  <youenn@apple.com>
+
         Implement Cache API support for WPE/GTK
         https://bugs.webkit.org/show_bug.cgi?id=178316
 
index 9fa9b3a..8387a7c 100644 (file)
@@ -209,6 +209,9 @@ imported/w3c/web-platform-tests/mediacapture-fromelement/creation.html [ Pass Fa
 imported/w3c/web-platform-tests/fetch/api/abort/general.any.html [ Skip ]
 imported/w3c/web-platform-tests/fetch/api/abort/general.any.worker.html [ Skip ]
 
+# Not supported
+imported/w3c/web-platform-tests/background-fetch [ Skip ]
+
 #//////////////////////////////////////////////////////////////////////////////////////////
 # End platform-specific tests.
 #//////////////////////////////////////////////////////////////////////////////////////////
@@ -481,6 +484,9 @@ webkit.org/b/178266  http/tests/cache-storage/cache-origins.https.html [ Pass Ti
 
 webkit.org/b/161312 imported/w3c/web-platform-tests/html/semantics/document-metadata/the-link-element/document-without-browsing-context.html [ Failure Pass ]
 
+webkit.org/b/178241 imported/w3c/web-platform-tests/fetch/api/basic/integrity.html [ Pass Failure ]
+webkit.org/b/178241 imported/w3c/web-platform-tests/fetch/api/basic/integrity-worker.html [ Pass Failure ]
+
 imported/w3c/web-platform-tests/XMLHttpRequest/send-conditional-cors.htm [ Failure ]
 imported/w3c/web-platform-tests/fetch/http-cache/partial.html [ Failure ]
 webkit.org/b/159724 imported/w3c/web-platform-tests/XMLHttpRequest/send-redirect-post-upload.htm [ Failure Pass ]
index 6fdeb30..7cb5a01 100644 (file)
@@ -4,12 +4,12 @@ PASS Check cloned request's body
 PASS Check request clone use structureClone for teed ReadableStreams (Int8Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Int16Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Int32Arraychunk) 
-PASS Check request clone use structureClone for teed ReadableStreams (ArrayBufferchunk) 
+FAIL Check request clone use structureClone for teed ReadableStreams (ArrayBufferchunk) assert_array_equals: Cloned buffer chunks have the same content value is object "[object ArrayBuffer]", expected array
 PASS Check request clone use structureClone for teed ReadableStreams (Uint8Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Uint8ClampedArraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Uint16Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Uint32Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Float32Arraychunk) 
 PASS Check request clone use structureClone for teed ReadableStreams (Float64Arraychunk) 
-PASS Check request clone use structureClone for teed ReadableStreams (DataViewchunk) 
+FAIL Check request clone use structureClone for teed ReadableStreams (DataViewchunk) assert_array_equals: Cloned buffer chunks have the same content value is object "[object DataView]", expected array
 
index 62efc17..a471c84 100644 (file)
@@ -1,3 +1,310 @@
+2017-10-14  Youenn Fablet  <youenn@apple.com>
+
+        Resync tests up to c1716b039411090428e7073158b1aea081dafe71
+        https://bugs.webkit.org/show_bug.cgi?id=178241
+
+        Reviewed by Ryosuke Niwa.
+
+        * resources/TestRepositories:
+        * resources/resource-files.json:
+        * web-platform-tests/IndexedDB/idb-binary-key-detached.htm:
+        * web-platform-tests/IndexedDB/keypath-exceptions.htm:
+        * web-platform-tests/WebCryptoAPI/digest/digest.js:
+        (run_test.):
+        * web-platform-tests/XMLHttpRequest/abort-after-stop-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/abort-after-stop.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/event-error-order.sub-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/event-error-order.sub.html: Removed.
+        * web-platform-tests/XMLHttpRequest/event-timeout-order-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/event-timeout-order.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/open-url-worker-origin-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/open-url-worker-origin.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/responsetype-expected.txt:
+        * web-platform-tests/XMLHttpRequest/send-after-setting-document-domain-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-after-setting-document-domain.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-cors-not-enabled.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-cors.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-repeat-no-args.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic-setrequestheader.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-basic.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-authentication-competing-names-passwords.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-entity-body-basic-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-entity-body-basic.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub-expected.txt: Removed.
+        * web-platform-tests/XMLHttpRequest/send-network-error-async-events.sub.htm: Removed.
+        * web-platform-tests/XMLHttpRequest/timeout-sync-expected.txt:
+        * web-platform-tests/XMLHttpRequest/w3c-import.log:
+        * web-platform-tests/background-fetch/interfaces-expected.txt:
+        * web-platform-tests/background-fetch/interfaces.idl:
+        * web-platform-tests/background-fetch/interfaces.worker-expected.txt:
+        * web-platform-tests/background-fetch/interfaces.worker.js:
+        * web-platform-tests/beacon/headers/header-content-type-expected.txt:
+        * web-platform-tests/common/vendor-prefix.js: Removed.
+        * web-platform-tests/common/w3c-import.log:
+        * web-platform-tests/css/css-grid-1/abspos/w3c-import.log:
+        * web-platform-tests/css/css-grid-1/support/w3c-import.log:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-image-threshold-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-004.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-margin-005.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-box-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-004.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-005.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-006.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-007.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-008.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-009.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-010.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-circle-011.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-computed-shape-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-004.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-005.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-006.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-007.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-008.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-009.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-010.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-ellipse-011.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-004.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-005.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-006.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-007.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-008.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-inset-009.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-002.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-003.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-004.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-005.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-polygon-006.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-arguments-001.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-box-pair-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-inherit-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-initial-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-none-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/shape-outside-shape-notation-000.html:
+        * web-platform-tests/css/css-shapes-1/shape-outside/values/support/parsing-utils.js:
+        (convertToPx):
+        (each):
+        (setupFonts):
+        * web-platform-tests/css/css-shapes-1/spec-examples/shape-outside-012.html:
+        * web-platform-tests/css/css-shapes-1/w3c-import.log:
+        * web-platform-tests/css/css-ui-3/cursor-image-005-nfs.html:
+        * web-platform-tests/css/selectors4/w3c-import.log:
+        * web-platform-tests/cssom/OWNERS:
+        * web-platform-tests/cssom/getComputedStyle-pseudo-expected.txt:
+        * web-platform-tests/cssom/getComputedStyle-pseudo.html:
+        * web-platform-tests/cssom/style-sheet-interfaces-001-expected.txt:
+        * web-platform-tests/cssom/style-sheet-interfaces-001.html:
+        * web-platform-tests/cssom/w3c-import.log:
+        * web-platform-tests/custom-elements/Document-createElement-expected.txt:
+        * web-platform-tests/custom-elements/Document-createElement.html:
+        * web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt:
+        * web-platform-tests/custom-elements/w3c-import.log:
+        * web-platform-tests/dom/events/Event-timestamp-safe-resolution.html:
+        * web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
+        * web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument-expected.txt:
+        * web-platform-tests/dom/nodes/DOMImplementation-createHTMLDocument.html:
+        * web-platform-tests/dom/nodes/Document-constructor.html:
+        * web-platform-tests/dom/nodes/Element-matches-expected.txt:
+        * web-platform-tests/dom/nodes/Element-webkitMatchesSelector-expected.txt:
+        * web-platform-tests/dom/nodes/ParentNode-querySelector-All-expected.txt:
+        * web-platform-tests/dom/nodes/ParentNode-querySelector-All-xht-expected.txt:
+        * web-platform-tests/dom/nodes/selectors.js:
+        * web-platform-tests/eventsource/dedicated-worker/eventsource-constructor-non-same-origin.htm:
+        * web-platform-tests/eventsource/eventsource-constructor-non-same-origin-expected.txt:
+        * web-platform-tests/eventsource/eventsource-constructor-non-same-origin.htm:
+        * web-platform-tests/eventsource/resources/last-event-id.py:
+        (main):
+        * web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin-expected.txt:
+        * web-platform-tests/eventsource/shared-worker/eventsource-constructor-non-same-origin.htm:
+        * web-platform-tests/fetch/api/basic/integrity-expected.txt:
+        * web-platform-tests/fetch/api/basic/integrity-worker-expected.txt:
+        * web-platform-tests/fetch/api/basic/integrity.js:
+        (integrity):
+        * web-platform-tests/fetch/api/headers/headers-combine-expected.txt:
+        * web-platform-tests/fetch/api/headers/headers-combine.html:
+        * web-platform-tests/fetch/api/request/request-error-expected.txt:
+        * web-platform-tests/fetch/api/request/request-error.js:
+        * web-platform-tests/fetch/api/request/request-headers-expected.txt:
+        * web-platform-tests/fetch/api/request/request-headers.html:
+        * web-platform-tests/fetch/api/request/request-idl-expected.txt:
+        * web-platform-tests/fetch/api/request/request-idl.html:
+        * web-platform-tests/fetch/api/request/request-structure-expected.txt:
+        * web-platform-tests/fetch/api/request/request-structure.html:
+        * web-platform-tests/fetch/api/request/w3c-import.log:
+        * web-platform-tests/fetch/api/response/response-clone-expected.txt:
+        * web-platform-tests/fetch/api/response/response-init-001-expected.txt:
+        * web-platform-tests/fetch/api/response/response-init-001.html:
+        * web-platform-tests/fetch/api/response/w3c-import.log:
+        * web-platform-tests/fonts/Ahem.ttf:
+        * web-platform-tests/hr-time/idlharness-expected.txt:
+        * web-platform-tests/hr-time/idlharness.html:
+        * web-platform-tests/html/README.md:
+        * web-platform-tests/html/browsers/browsing-the-web/history-traversal/w3c-import.log:
+        * web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/w3c-import.log:
+        * web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt:
+        * web-platform-tests/html/dom/interfaces.html:
+        * web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplay_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_canplaythrough_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadeddata_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_loadedmetadata_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_canplaythrough.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_canplay_playing.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadedmetadata_loadeddata.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_order_loadstart_progress.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_pause.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_play.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_playing.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_progress.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_progress_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/event_timeupdate_noautoplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/historical.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/paused_false_during_play.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplay.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_canplaythrough.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadeddata.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_loadedmetadata.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/readyState_during_playing.html:
+        * web-platform-tests/html/semantics/embedded-content/media-elements/video_008.htm:
+        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.cross.html:
+        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect-expected.txt:
+        * web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.reset.redirect.html:
+        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm:
+        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log:
+        * web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/the-fieldset-element/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
+        * web-platform-tests/html/semantics/forms/the-progress-element/progress-expected.txt:
+        * web-platform-tests/html/semantics/forms/the-progress-element/w3c-import.log:
+        * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log:
+        * web-platform-tests/html/semantics/scripting-1/the-template-element/template-element/w3c-import.log:
+        * web-platform-tests/html/syntax/serializing-html-fragments/serializing-expected.txt:
+        * web-platform-tests/html/syntax/serializing-html-fragments/serializing.html:
+        * web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt:
+        * web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt:
+        * web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt:
+        * web-platform-tests/lint.whitelist:
+        * web-platform-tests/mediacapture-fromelement/capture.html:
+        * web-platform-tests/mediacapture-fromelement/creation.html:
+        * web-platform-tests/mediacapture-fromelement/ended.html:
+        * web-platform-tests/mediacapture-streams/MediaStream-default-feature-policy.https.sub.html:
+        * web-platform-tests/payment-request/PaymentAddress/attributes-and-toJSON-method-manual.https.html:
+        * web-platform-tests/resource-timing/idlharness-expected.txt:
+        * web-platform-tests/resource-timing/idlharness.html:
+        * web-platform-tests/resources/idlharness.js:
+        (IdlInterface.prototype.test_to_json_operation):
+        * web-platform-tests/resources/test/tests/api-tests-1.html:
+        * web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html:
+        * web-platform-tests/resources/testharness.js:
+        * web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
+        * web-platform-tests/service-workers/service-worker/fetch-frame-resource.https.html:
+        * web-platform-tests/service-workers/service-worker/fetch-request-xhr.https.html:
+        * web-platform-tests/service-workers/service-worker/navigation-preload/resources/redirect-scope.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/bytecheck-worker-imported-script.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/bytecheck-worker.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/fetch-event-redirect-iframe.html: Removed.
+        * web-platform-tests/service-workers/service-worker/resources/fetch-request-xhr-iframe.https.html:
+        * web-platform-tests/service-workers/service-worker/resources/navigation-redirect-out-scope.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope1.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/navigation-redirect-scope2.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker-imported-script.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/update-max-aged-worker.py:
+        (main):
+        * web-platform-tests/service-workers/service-worker/resources/w3c-import.log:
+        * web-platform-tests/service-workers/service-worker/w3c-import.log:
+        * web-platform-tests/shadow-dom/Extensions-to-Event-Interface-expected.txt:
+        * web-platform-tests/shadow-dom/Extensions-to-Event-Interface.html:
+        * web-platform-tests/shadow-dom/event-inside-shadow-tree-expected.txt:
+        * web-platform-tests/shadow-dom/event-with-related-target.html:
+        * web-platform-tests/shadow-dom/leaktests/get-elements-expected.txt:
+        * web-platform-tests/shadow-dom/resources/event-path-test-helpers.js:
+        (dispatchEventWithEventLog):
+        * web-platform-tests/shadow-dom/slotchange-event-expected.txt:
+        * web-platform-tests/shadow-dom/w3c-import.log:
+        * web-platform-tests/streams/piping/general-expected.txt:
+        * web-platform-tests/streams/readable-byte-streams/general.js:
+        (promise_test):
+        * web-platform-tests/streams/readable-byte-streams/w3c-import.log:
+        * web-platform-tests/streams/readable-streams/pipe-through-expected.txt: Removed.
+        * web-platform-tests/tools/manifest/catalog/xhtml.dtd:
+        * web-platform-tests/tools/manifest/sourcefile.py:
+        (SourceFile.references):
+        (SourceFile.spec_links):
+        * web-platform-tests/tools/manifest/tests/test_sourcefile.py:
+        (test_relpath_normalized):
+        (test_reftest_url_whitespace):
+        (test_spec_links_whitespace):
+        * web-platform-tests/tools/wptserve/tests/functional/test_handlers.py:
+        (TestDirectoryHandler.test_subdirectory_no_trailing_slash):
+        * web-platform-tests/tools/wptserve/wptserve/handlers.py:
+        (DirectoryHandler.__call__):
+        * web-platform-tests/update-built-tests.sh:
+        * web-platform-tests/url/a-element-expected.txt:
+        * web-platform-tests/url/a-element-xhtml-expected.txt:
+        * web-platform-tests/url/url-constructor-expected.txt:
+        * web-platform-tests/url/urltestdata.json:
+        * web-platform-tests/webrtc/RTCCertificate.html:
+        * web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
+        * web-platform-tests/webrtc/RTCDTMFSender-insertDTMF.html: Removed.
+        * web-platform-tests/webrtc/RTCDTMFSender-ontonechange-long.html: Removed.
+        * web-platform-tests/webrtc/RTCDTMFSender-ontonechange.html: Removed.
+        * web-platform-tests/webrtc/RTCPeerConnection-addTrack.html: Removed.
+        * web-platform-tests/webrtc/RTCPeerConnection-getStats.html: Removed.
+        * web-platform-tests/webrtc/RTCPeerConnection-ontrack.html: Removed.
+        * web-platform-tests/webrtc/RTCPeerConnection-removeTrack.html: Removed.
+        * web-platform-tests/webrtc/RTCRtpReceiver-getContributingSources.html: Removed.
+        * web-platform-tests/webrtc/RTCRtpReceiver-getSynchronizationSources.html: Removed.
+        * web-platform-tests/webrtc/historical-expected.txt:
+        * web-platform-tests/webrtc/historical.html:
+        * web-platform-tests/webrtc/simplecall-expected.txt:
+        * web-platform-tests/webrtc/simplecall.html:
+        * web-platform-tests/webrtc/w3c-import.log:
+
 2017-10-13  Chris Dumez  <cdumez@apple.com>
 
         DOMTokenList shouldn't add empty attributes
index e69ace0..0b374bf 100644 (file)
@@ -2,7 +2,7 @@
     {
         "name": "web-platform-tests",
         "url": "https://github.com/w3c/web-platform-tests.git",
-        "revision": "f65af411d63ec13ee8fe208b4effd730a4a8b7fe",
+        "revision": "c1716b039411090428e7073158b1aea081dafe71",
         "paths_to_skip": [
             "conformance-checkers",
             "docs",
index c46c4b5..b8d456a 100644 (file)
         "web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name-3.html",
         "web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name-4.html",
         "web-platform-tests/html/browsers/browsing-the-web/history-traversal/browsing_context_name_cross_origin-0.html",
+        "web-platform-tests/html/browsers/browsing-the-web/history-traversal/support/window-name-navigation.sub.html",
         "web-platform-tests/html/browsers/browsing-the-web/history-traversal/unset_context_name.html",
         "web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/001-1.html",
         "web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/001-2.html",
         "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe-tried-to-be-navigated-by-its-child.html",
         "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-its-child.html",
         "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe-trying-to-navigate-itself.html",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_001.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_002.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_003.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_004.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_006.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_007.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_008.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_010.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_012.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_020a.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_021a.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_022.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_023.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_024.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_026.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_027.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_028.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_029.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_031.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/iframe_sandbox_032.htm",
         "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/navigation-changed-iframe.html",
         "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/standalone-fail.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/standalone-iframe-content.htm",
+        "web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/standalone-pass.htm",
         "web-platform-tests/html/semantics/embedded-content/the-img-element/environment-changes/iframed.sub.html",
         "web-platform-tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-after.html",
         "web-platform-tests/html/semantics/embedded-content/the-img-element/ismap/img-ismap-coordinates-iframe-before.html",
         "web-platform-tests/html/semantics/forms/the-button-element/button-activate-frame.html",
         "web-platform-tests/html/semantics/forms/the-label-element/iframe-label-attributes.html",
         "web-platform-tests/html/semantics/interactive-elements/the-dialog-element/centering-iframe.sub.html",
+        "web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/102.html",
+        "web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/pages/helloworld-postMessage.html",
+        "web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/pages/helloworld.html",
         "web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-different.sub.html",
         "web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-missingheader.sub.html",
         "web-platform-tests/html/semantics/scripting-1/the-script-element/module/crossorigin-import-same.sub.html",
index ab672fa..26afcfb 100644 (file)
@@ -14,13 +14,14 @@ indexeddb_test(
     const tx = db.transaction('store', 'readwrite');
     const store = tx.objectStore('store');
 
-    const buffer = new Uint8Array([1,2,3,4]).buffer;
-    assert_equals(buffer.byteLength, 4);
+    const array = new Uint8Array([1,2,3,4]);
+    const buffer = array.buffer;
+    assert_equals(array.byteLength, 4);
 
     // Detach the ArrayBuffer by transferring it to a worker.
     const worker = new Worker(URL.createObjectURL(new Blob([])));
     worker.postMessage('', [buffer]);
-    assert_equals(buffer.byteLength, 0);
+    assert_equals(array.byteLength, 0);
 
     assert_throws(new TypeError, () => { store.put('', buffer); });
     t.done();
index d37a20a..6d7937c 100644 (file)
@@ -248,7 +248,7 @@ indexeddb_test(
     const array = [];
     array[99] = 1;
 
-    const getter_called = 0;
+    let getter_called = 0;
     const prop = '50';
     Object.defineProperty(Object.prototype, prop, {
       enumerable: true, configurable: true,
index 84394ec..c557d96 100644 (file)
@@ -61,11 +61,11 @@ function run_test() {
             }, upCase + " with " + size + " source data");
 
             promise_test(function(test) {
-                var promise = subtle.digest({name: mixedCase}, sourceData[size])
+                var promise = subtle.digest({name: downCase}, sourceData[size])
                 .then(function(result) {
                     assert_true(equalBuffers(result, digestedData[alg][size]), "digest() yielded expected result for " + alg + ":" + size);
                 }, function(err) {
-                    assert_unreached("digest() threw an error for " + alg + ":" + size + " - " + err.message);mixedCase
+                    assert_unreached("digest() threw an error for " + alg + ":" + size + " - " + err.message);
                 });
 
                 return promise;
index 045c6f4..4d2ec55 100644 (file)
@@ -1,9 +1,9 @@
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.responseType cannot be changed for synchronous HTTP(S) requests made from the window context.
 
 PASS Initial value of responseType 
 PASS Set responseType to "" when readyState is UNSENT. 
index adc95d0..d942524 100644 (file)
@@ -1,4 +1,4 @@
-CONSOLE MESSAGE: line 1249: XMLHttpRequest.timeout cannot be set for synchronous HTTP(S) requests made from the window context.
+CONSOLE MESSAGE: line 1253: XMLHttpRequest.timeout cannot be set for synchronous HTTP(S) requests made from the window context.
 CONSOLE MESSAGE: line 21: Synchronous XMLHttpRequests must not have a timeout value set.
 
 PASS setting timeout attribute on sync request 
index 12c2ace..8f8377b 100644 (file)
@@ -20,26 +20,36 @@ FAIL BackgroundFetchRegistration interface object name assert_own_property: self
 FAIL BackgroundFetchRegistration interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: attribute id assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute icons assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute totalDownloadSize assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute title assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute fetches assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute uploadTotal assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute uploaded assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute downloadTotal assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute downloaded assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute activeFetches assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute onprogress assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: operation abort() assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface object length assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface object name assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: attribute request assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface object length assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface object name assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: attribute request assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface object length assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface object name assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
-FAIL BackgroundFetchActiveFetches interface: attribute responseReady assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetches interface: operation match(RequestInfo) assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetches interface: operation values() assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface object length assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface object name assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: attribute responseReady assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
 PASS BackgroundFetchEvent interface: existence and properties of interface object 
-PASS BackgroundFetchEndEvent interface: existence and properties of interface object 
+PASS BackgroundFetchSettledEvent interface: existence and properties of interface object 
 PASS BackgroundFetchSettledFetches interface: existence and properties of interface object 
-PASS BackgroundFetchFailEvent interface: existence and properties of interface object 
+PASS BackgroundFetchSettledFetch interface: existence and properties of interface object 
+PASS BackgroundFetchUpdateEvent interface: existence and properties of interface object 
 PASS BackgroundFetchClickEvent interface: existence and properties of interface object 
 
index d8b2fed..77cdfff 100644 (file)
@@ -1,10 +1,19 @@
-// 3.1. Extensions to ServiceWorkerRegistration
+// 4.1. Extensions to ServiceWorkerGlobalScope
+
+partial interface ServiceWorkerGlobalScope {
+  attribute EventHandler onbackgroundfetched;
+  attribute EventHandler onbackgroundfetchfail;
+  attribute EventHandler onbackgroundfetchabort;
+  attribute EventHandler onbackgroundfetchclick;
+};
+
+// 4.2. Extensions to ServiceWorkerRegistration
 
 partial interface ServiceWorkerRegistration {
   readonly attribute BackgroundFetchManager backgroundFetch;
 };
 
-// 3.2. BackgroundFetchManager
+// 4.3. BackgroundFetchManager
 
 [Exposed=(Window,Worker)]
 interface BackgroundFetchManager {
@@ -17,7 +26,7 @@ interface BackgroundFetchManager {
 dictionary BackgroundFetchOptions {
   sequence<IconDefinition> icons;
   DOMString title;
-  long totalDownloadSize;
+  unsigned long long downloadTotal;
 };
 
 // This is taken from https://w3c.github.io/manifest/#icons-member.
@@ -28,40 +37,40 @@ dictionary IconDefinition {
   DOMString type;
 };
 
-// 3.3. BackgroundFetchRegistration
+// 4.4. BackgroundFetchRegistration
 
 [Exposed=(Window,Worker)]
-interface BackgroundFetchRegistration {
+interface BackgroundFetchRegistration : EventTarget {
   readonly attribute DOMString id;
-  readonly attribute FrozenArray<IconDefinition> icons;
-  readonly attribute long totalDownloadSize;
-  readonly attribute DOMString title;
-  readonly attribute FrozenArray<BackgroundFetchActiveFetches> fetches;
+  readonly attribute unsigned long long uploadTotal;
+  readonly attribute unsigned long long uploaded;
+  readonly attribute unsigned long long downloadTotal;
+  readonly attribute unsigned long long downloaded;
+  readonly attribute BackgroundFetchActiveFetches activeFetches;
+
+  attribute EventHandler onprogress;
 
-  void abort();
+  Promise<boolean> abort();
 };
 
 [Exposed=(Window,Worker)]
-interface BackgroundFetchFetches {
+interface BackgroundFetchFetch {
   readonly attribute Request request;
 };
 
 [Exposed=(Window,Worker)]
-interface BackgroundFetchActiveFetches : BackgroundFetchFetches {
-  readonly attribute Promise<Response> responseReady;
-  // TODO: this will include fetch controller/observer objects
+interface BackgroundFetchActiveFetches {
+  Promise<BackgroundFetchActiveFetch> match(RequestInfo request);
+  Promise<FrozenArray<BackgroundFetchActiveFetch>> values();
 };
 
-// 3.4. Events
-
-partial interface ServiceWorkerGlobalScope {
-  attribute EventHandler onbackgroundfetched;
-  attribute EventHandler onbackgroundfetchfail;
-  attribute EventHandler onbackgroundfetchabort;
-  attribute EventHandler onbackgroundfetchclick;
+[Exposed=(Window,Worker)]
+interface BackgroundFetchActiveFetch : BackgroundFetchFetch {
+  readonly attribute Promise<Response> responseReady;
+  // In future this will include a fetch observer
 };
 
-// 3.4.1. BackgroundFetchEvent
+// 4.4.3. BackgroundFetchEvent
 
 [Constructor(DOMString type, BackgroundFetchEventInit init), Exposed=ServiceWorker]
 interface BackgroundFetchEvent : ExtendableEvent {
@@ -72,38 +81,38 @@ dictionary BackgroundFetchEventInit : ExtendableEventInit {
   required DOMString id;
 };
 
-// 3.4.2. BackgroundFetchEndEvent
+// 4.4.4. BackgroundFetchSettledEvent
 
-[Constructor(DOMString type, BackgroundFetchEndEventInit init), Exposed=ServiceWorker]
-interface BackgroundFetchEndEvent : BackgroundFetchEvent {
-  readonly attribute FrozenArray<BackgroundFetchSettledFetches> completeFetches;
+[Constructor(DOMString type, BackgroundFetchSettledEventInit init), Exposed=ServiceWorker]
+interface BackgroundFetchSettledEvent : BackgroundFetchEvent {
+  readonly attribute BackgroundFetchSettledFetches fetches;
+};
 
-  Promise<void> updateUI(DOMString title);
+dictionary BackgroundFetchSettledEventInit : BackgroundFetchEventInit {
+  required BackgroundFetchSettledFetches fetches;
 };
 
-dictionary BackgroundFetchEndEventInit : BackgroundFetchEventInit {
-  required BackgroundFetchSettledFetches completeFetches;
+[Exposed=ServiceWorker]
+interface BackgroundFetchSettledFetches {
+  Promise<BackgroundFetchSettledFetch> match(RequestInfo request);
+  Promise<FrozenArray<BackgroundFetchSettledFetch>> values();
 };
 
 [Exposed=ServiceWorker]
-interface BackgroundFetchSettledFetches : BackgroundFetchFetches {
+interface BackgroundFetchSettledFetch : BackgroundFetchFetch {
   readonly attribute Response? response;
 };
 
-// 3.4.3. BackgroundFetchFailEvent
+// 4.4.5. BackgroundFetchUpdateEvent
 
-[Constructor(DOMString type, BackgroundFetchEndEventInit init), Exposed=ServiceWorker]
-interface BackgroundFetchFailEvent : BackgroundFetchEndEvent {
-  readonly attribute FrozenArray<BackgroundFetchSettledFetches> failedFetches;
-};
-
-dictionary BackgroundFetchFailEventInit : BackgroundFetchEndEventInit {
-  required BackgroundFetchSettledFetches failedFetches;
+[Constructor(DOMString type, BackgroundFetchSettledEventInit init), Exposed=ServiceWorker]
+interface BackgroundFetchUpdateEvent : BackgroundFetchSettledEvent {
+  Promise<void> updateUI(DOMString title);
 };
 
-// 3.4.4. BackgroundFetchClickEvent
+// 4.4.6. BackgroundFetchClickEvent
 
-[Constructor(DOMString type, BackgroundFetchEndEventInit init), Exposed=ServiceWorker]
+[Constructor(DOMString type, BackgroundFetchClickEventInit init), Exposed=ServiceWorker]
 interface BackgroundFetchClickEvent : BackgroundFetchEvent {
   readonly attribute BackgroundFetchState state;
 };
index 9b432ee..99bc5c5 100644 (file)
@@ -1,6 +1,4 @@
 
-Harness Error (TIMEOUT), message = null
-
 PASS Exposed interfaces in a Service Worker. 
 PASS ServiceWorkerRegistration interface: existence and properties of interface object 
 PASS ServiceWorkerGlobalScope interface: existence and properties of interface object 
@@ -18,26 +16,36 @@ FAIL BackgroundFetchRegistration interface object name assert_own_property: self
 FAIL BackgroundFetchRegistration interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: attribute id assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute icons assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute totalDownloadSize assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute title assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchRegistration interface: attribute fetches assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute uploadTotal assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute uploaded assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute downloadTotal assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute downloaded assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute activeFetches assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
+FAIL BackgroundFetchRegistration interface: attribute onprogress assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
 FAIL BackgroundFetchRegistration interface: operation abort() assert_own_property: self does not have own property "BackgroundFetchRegistration" expected property "BackgroundFetchRegistration" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface object length assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface object name assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
-FAIL BackgroundFetchFetches interface: attribute request assert_own_property: self does not have own property "BackgroundFetchFetches" expected property "BackgroundFetchFetches" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface object length assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface object name assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
+FAIL BackgroundFetchFetch interface: attribute request assert_own_property: self does not have own property "BackgroundFetchFetch" expected property "BackgroundFetchFetch" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface object length assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface object name assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
 FAIL BackgroundFetchActiveFetches interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
-FAIL BackgroundFetchActiveFetches interface: attribute responseReady assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetches interface: operation match(RequestInfo) assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetches interface: operation values() assert_own_property: self does not have own property "BackgroundFetchActiveFetches" expected property "BackgroundFetchActiveFetches" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface object assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface object length assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface object name assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface prototype object assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: existence and properties of interface prototype object's "constructor" property assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
+FAIL BackgroundFetchActiveFetch interface: attribute responseReady assert_own_property: self does not have own property "BackgroundFetchActiveFetch" expected property "BackgroundFetchActiveFetch" missing
 PASS BackgroundFetchEvent interface: existence and properties of interface object 
-PASS BackgroundFetchEndEvent interface: existence and properties of interface object 
+PASS BackgroundFetchSettledEvent interface: existence and properties of interface object 
 PASS BackgroundFetchSettledFetches interface: existence and properties of interface object 
-PASS BackgroundFetchFailEvent interface: existence and properties of interface object 
+PASS BackgroundFetchSettledFetch interface: existence and properties of interface object 
+PASS BackgroundFetchUpdateEvent interface: existence and properties of interface object 
 PASS BackgroundFetchClickEvent interface: existence and properties of interface object 
 
index 0ef518b..60ee6e5 100644 (file)
@@ -1,7 +1,7 @@
 
 PASS Test content-type header for a body string 
-FAIL Test content-type header for a body ArrayBufferView assert_equals: Correct Content-Type header result expected "" but got "application/x-www-form-urlencoded"
-FAIL Test content-type header for a body ArrayBuffer assert_equals: Correct Content-Type header result expected "" but got "application/x-www-form-urlencoded"
+PASS Test content-type header for a body ArrayBufferView 
+PASS Test content-type header for a body ArrayBuffer 
 PASS Test content-type header for a body Blob 
 PASS Test content-type header for a body FormData 
 PASS Test content-type header for a body URLSearchParams 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/common/vendor-prefix.js b/LayoutTests/imported/w3c/web-platform-tests/common/vendor-prefix.js
deleted file mode 100644 (file)
index 1a91632..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Use this script when you want to test APIs that use vendor prefixes
-   and define which objects need to be checked for prefixed versions, à la
-   <script src="vendor-prefix.js"
-     data-prefixed-objects='[{"ancestors":["navigator"], "name":"getUserMedia"}]'
-   data-prefixed-prototypes='[{"ancestors":["HTMLMediaElement"],"name":"srcObject"}]'></script>
-   data-prefixed-objects lets prefix objects in the global space
-   data-prefixed-prototypes adds prefixes to interfaces, for objects that
-   get created during the tests
-
-   NB: vendor prefixes are expected to go away in favor of putting
-   new features behind flag, so hopefully there will be only limited
-   need to use this
-*/
-
-(function () {
-    var aliases = {};
-    var documentingPrefixUsage = document.createElement('div');
-    var vendorPrefixes = ["moz", "ms", "o", "webkit", "Moz", "MS", "O", "WebKit", "op"];
-
-    function getParentObject(ancestors) {
-        var parent = window;
-        var currentName = "";
-        ancestors.forEach(function (p) {
-            currentName = currentName ? currentName + "." + p : p;
-            if (parent[p] === undefined) {
-                throw currentName + " is undefined, cannot set prefix alias on child object";
-            }
-            parent = parent[p];
-        });
-        return parent;
-    }
-
-    function prependPrefix(prefix, name) {
-        var newName = name[0].toUpperCase() + name.substr(1, name.length);
-        return prefix + newName;
-    }
-
-    function setPrototypeAlias(obj) {
-        var parent = getParentObject(obj.ancestors);
-        if (!parent.prototype.hasOwnProperty(obj.name)) {
-            vendorPrefixes.forEach(function (prefix) {
-                if (parent.prototype.hasOwnProperty(prependPrefix(prefix, obj.name))) {
-                    Object.defineProperty(parent.prototype, obj.name,
-                                          {get: function() {return this[prependPrefix(prefix, obj.name)];},
-                                           set: function(v) {this[prependPrefix(prefix, obj.name)] = v;}
-                                          });
-                    aliases[obj.ancestors.join(".") + ".prototype." + obj.name] = obj.ancestors.join(".") + ".prototype." + prependPrefix(prefix, obj.name);
-                    return;
-                }
-            });
-        }
-    }
-
-    function setAlias(obj) {
-        var parent = getParentObject(obj.ancestors);
-        if (parent[obj.name] === undefined) {
-            vendorPrefixes.forEach(function (prefix) {
-                if (parent[prependPrefix(prefix, obj.name)] !== undefined) {
-                    parent[obj.name] = parent[prependPrefix(prefix, obj.name)];
-                    aliases[obj.ancestors.join(".") + "." + obj.name] = obj.ancestors.join(".") + "." + prependPrefix(prefix, obj.name);
-                    return;
-                }
-            });
-        }
-    }
-
-    if (location.search.indexOf('usePrefixes=1') !== -1) {
-        if (document.querySelector("script[data-prefixed-objects]")) {
-            var prefixObjectsData = document.querySelector("script[data-prefixed-objects]").dataset["prefixedObjects"];
-            try {
-                var prefixedObjects = JSON.parse(prefixObjectsData);
-            } catch (e) {
-                throw "couldn't parse data-prefixed-objects as JSON:" + e;
-            }
-            prefixedObjects.forEach(setAlias);
-        }
-        if (document.querySelector("script[data-prefixed-prototypes]")) {
-            var prefixProtoData = document.querySelector("script[data-prefixed-prototypes]").dataset["prefixedPrototypes"];
-            try {
-                var prefixedPrototypes = JSON.parse(prefixProtoData);
-            } catch (e) {
-                throw "couldn't parse data-prefixed-prototypes as JSON:" + e;
-            }
-            prefixedPrototypes.forEach(setPrototypeAlias);
-        }
-        var ul = document.createElement("ul");
-        Object.keys(aliases).forEach(function (alias) {
-            var li = document.createElement("li");
-            li.appendChild(document.createTextNode(alias + " has been set to be an alias of vendor-prefixed " + aliases[alias]));
-            ul.appendChild(li);
-        });
-        documentingPrefixUsage.appendChild(ul);
-    } else {
-        // Document that the test can be run with prefixes enabled
-
-        var a = document.createElement('a');
-        var link = "";
-        if (location.search) {
-            link = location.search + "&usePrefixes=1";
-        } else {
-            link = "?usePrefixes=1";
-        }
-        a.setAttribute("href", link);
-        a.appendChild(document.createTextNode("with vendor prefixes enabled"));
-        documentingPrefixUsage.appendChild(document.createTextNode("The feature(s) tested here are known to have been made available via vendor prefixes; you can run this test "));
-        documentingPrefixUsage.appendChild(a);
-        documentingPrefixUsage.appendChild(document.createTextNode("."));
-    }
-    var log = document.getElementById('log');
-    if (log) {
-        log.parentNode.insertBefore(documentingPrefixUsage, log);
-    } else {
-        document.body.appendChild(documentingPrefixUsage);
-    }
-})();
index cd62795..29d1136 100644 (file)
@@ -58,5 +58,4 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/common/text-plain.txt
 /LayoutTests/imported/w3c/web-platform-tests/common/utils.js
 /LayoutTests/imported/w3c/web-platform-tests/common/utils.js.headers
-/LayoutTests/imported/w3c/web-platform-tests/common/vendor-prefix.js
 /LayoutTests/imported/w3c/web-platform-tests/common/vendor-prefix.js.headers
index 5ed1a46..978c898 100644 (file)
@@ -14,6 +14,33 @@ Property values requiring vendor prefixes:
 None
 ------------------------------------------------------------------------
 List of files:
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/absolute-positioning-changing-containing-block-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/absolute-positioning-changing-containing-block-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/absolute-positioning-definite-sizes-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/absolute-positioning-grid-container-containing-block-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/absolute-positioning-grid-container-parent-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-item-absolute-positioning-dynamic-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-item-absolute-positioning-dynamic-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-paint-positioned-children-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-paint-positioned-children-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-children-writing-modes-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-children-writing-modes-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-item-dynamic-change-001-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-item-dynamic-change-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-background-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-background-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-background-rtl-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-background-rtl-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-content-alignment-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-content-alignment-rtl-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-gaps-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-gaps-rtl-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-implicit-grid-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-implicit-grid-line-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-padding-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-unknown-named-grid-line-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-positioned-items-within-grid-implicit-track-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/grid-sizing-positioned-items-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/orthogonal-positioned-grid-items-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/orthogonal-positioned-grid-items-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/orthogonal-positioned-grid-items-002-expected.html
@@ -82,3 +109,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-016.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-017-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-017.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-should-not-create-implicit-tracks-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-should-not-take-up-space-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-sizing-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/abspos/positioned-grid-items-sizing-001.html
index dc67a4b..b0e9ccd 100644 (file)
@@ -15,4 +15,6 @@ None
 ------------------------------------------------------------------------
 List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/support/check-layout-th.js
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/support/grid-alignment.css
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/support/grid.css
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid-1/support/style-change.js
index ef5a684..17cf25f 100644 (file)
@@ -7,7 +7,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-image-threshold-property">
         <meta name="assert" content="shape-image-threshold is any valid number and computed the
                                      clipped value between 0 and 1.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 1582345..da3f6af 100644 (file)
@@ -7,7 +7,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-image-threshold-property">
         <meta name="assert" content="shape-image-threshold may take calc values and computed the
                                      clipped value between 0 and 1.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index d1aa8ee..e4524ef 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-image-threshold-property">
         <meta name="assert" content="shape-image-threshold is set to 0 when an invalid value is specified.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index b8a43b6..b939569 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-image-threshold-property">
         <meta name="assert" content="shape-outside can be assigned the 'inherit' value and does not inherit by default.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 191346e..487868c 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="shape-margin values may be either a length or percentage">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index d3bdfe0..39dea7e 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="shape-margin values may be in any length unit">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 31107be..4cb0c69 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="shape-margin values may be either a length or percentage">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 0844a71..7a69984 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="shape-margin values may be calc() values">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 15606f7..5e7e1e8 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="shape-margin values may only be positive length units.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 8cce60e..3c9b323 100644 (file)
@@ -6,7 +6,7 @@
         <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-margin-property">
         <meta name="assert" content="The shape-margin value is not inherited and can be assigned the 'inherit' value.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 521fca5..18c4515 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#typedef-shape-box">
         <meta name="assert" content="Shape-outside may be one of the box model box values">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 52b67f1..629e4ac 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-circle">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A circular basic shape has an optional radius and position component">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index a6ad821..ba5be10 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-circle">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A circle's radius may be a length, percentage, or keyword.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 1da605a..303fadf 100644 (file)
@@ -15,7 +15,7 @@
                                 or   [ left|center|right ]
                                 or   [ left|center|right top|center|bottom ]
                                 or   [ top|center|bottom ]. ">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 60264c5..3a10696 100644 (file)
@@ -14,7 +14,7 @@
                                 or   [ left|center|right top|center|bottom ]
                                 or   [ top|center|bottom ].
                                 All position arguments not in this form are invalid.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 015c603..4aca783 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#lengths">
         <meta name="assert" content="A circle's position arguments may in any valid <length> unit allowed by a <position> value.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 3d31d9d..ffb503c 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-circle">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A circle's radius may be in any valid length unit.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 11d053c..a192813 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A circle's radius may be in signed positive or decimal/non-decimal format. Negative
                                      radii are invalid.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 492ae3f..7656a30 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-circle">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="This test verifies that invalid shape-radius arguments on circle() don't parse.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 3704ce3..9f4927a 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-circle">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="This test verifies that invalid position arguments on circle() don't parse">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 8eb0fe3..13a404c 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A circle's position arguments may be in signed positive/negative or
                                      decimal/non-decimal format.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 8446536..560ba1c 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="A circle's arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 103ed7f..ded30e4 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="A circle's <position> arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 2f19bc4..cb1f42e 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css-cascade-3/#computed">
         <meta name="assert" content="The basic shape can contain relative length formats, which resolve to the computed (absolute) length value">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
         <script type="text/javascript">
             // font relative units: em, ex, ch, rem
             var units = ['em', 'ex', 'ch', 'rem'];
-            var div = document.createElement('div');
-            document.body.appendChild(div);
             var resolveds = {};
-            units.forEach(function(unit) {
-                div.style.width = '10' + unit;
-                var s = getComputedStyle(div);
-                resolveds[unit] = parseFloat(s.width);
-            });
-            document.body.removeChild(div);
+            ParsingUtils.setupFonts(function () {
+                var div = document.createElement('div');
+                document.body.appendChild(div);
+                units.forEach(function(unit) {
+                    div.style.width = '10' + unit;
+                    var s = getComputedStyle(div);
+                    resolveds[unit] = parseFloat(s.width);
+                });
+                document.body.removeChild(div);
+            })();
 
             function fillArray(string, length) {
                 return Array.apply(null, new Array(length)).map(String.prototype.valueOf, string);
index 47ec103..468c51d 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css-cascade-3/#computed">
         <meta name="assert" content="The basic shape can contain percentages, which remain unchanged when computed">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 2a813c8..82b199b 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-ellipse">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An elliptical basic shape has two optional components, radii (2) and a position.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 29f1642..dcba319 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-ellipse">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An elliptical basic shape's radii may be keywords, lengths or percentages">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index b897568..2bd7651 100644 (file)
@@ -15,7 +15,7 @@
                                 or   [ left|center|right ]
                                 or   [ left|center|right top|center|bottom ]
                                 or   [ top|center|bottom ]. ">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index f0d4bc3..a9a2f35 100644 (file)
@@ -14,7 +14,7 @@
                                 or   [ left|center|right top|center|bottom ]
                                 or   [ top|center|bottom ].
                                 All position arguments not in this form are invalid.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 7aea0c1..555ad1d 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#lengths">
         <meta name="assert" content="An ellipse's position arguments may in any valid <length> unit allowed by a <position> value.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 8cbc3dd..4ef44cd 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-ellipse">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An ellipse's radii may be in any valid length unit.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 3a4bcff..82c8e31 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An ellipse's radii may be in signed positive or decimal/non-decimal format. Negative
                                      radii are invalid.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 11ec265..2a569f6 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-ellipse">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="This test verifies that invalid shape-radius arguments on ellipse() don't parse.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index a4e209b..6a457a9 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-ellipse">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="This test verifies that invalid position arguments on ellipse() don't parse">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index bd375cb..fae6349 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An ellipse's position arguments may be in signed positive/negative or
                                      decimal/non-decimal format.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index cc921c4..d5907ea 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="An ellipse's arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index ed9913f..1480e62 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="An ellipse's <position> arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 138e0de..a31ae66 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-inset">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An inset has 1 to 4 insets, and optional border radii that follow the border-radius format">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 8632f99..7b503a0 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-inset">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An inset has 1 to 4 insets as percentages or length in any unit">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index de37489..020fd67 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="An inset's radial component has 1 to 4 length/percentages, optionally followed by a '/'
                                      and an additional 1 to 4 length/percentages and lengths can be in any unit.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 9d3e7c1..bbb761f 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#lengths">
         <meta name="assert" content="An inset's radial component's values can be in any length unit">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index da3544b..c26f274 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="These tests verify that shape-outside inset() arguments can be numbers that are signed in
                                      positive and negative and/or decimal/non-decimal form.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index e797b67..30c0b36 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-inset">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="These tests verifies that invalid inset() arguments don't parse.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 99a82b6..4afc84e 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="These tests verify that shape-outside inset() radial component can be numbers that are in
                                      signed positive and/or decimal/non-decimal form. Negative values are not allowed">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index d1cc116..e711172 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-inset">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="These tests verify invalid radial component arguments don't parse.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 60aca77..5b4f709 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="An inset's arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 509c071..5cd3dc3 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="An inset's radial component arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 4c7046a..f52d3d4 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-polygon">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A polygonal basic shape has an optional fill-rule and one or more pairs of coordinates">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 4a163e3..c47f57c 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-polygon">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A polygonal basic shape's optional fill-rule may be either 'nonzero' or 'evenodd'">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 21ec7ed..848be66 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-polygon">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A polygonal basic shape's points may be either lengths or percentages">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index d640ad5..550f5d4 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-polygon">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A polygonal basic shape's points may be either lengths or percentages">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index cedefbb..54509d0 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#lengths">
         <meta name="assert" content="A polygon's veritices may in percentage or any valid <length> units.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 34386c7..e0f2ffe 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#funcdef-polygon">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="A polygon's vertices can be in signed positive/negative or decimal/non-decimal format">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 77fd60f..5b3a6fb 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css3-values/#calc-notation">
         <meta name="assert" content="A polygon's arguments may be in calc() values.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 4a84c0c..f5c5188 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/cssom-1/#serializing-css-values">
         <meta name="assert" content="A basic basic shape can contain any length unit type, or percentage">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index f217d94..cedf09a 100644 (file)
@@ -9,7 +9,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/cssom-1/#serializing-css-values">
         <meta name="assert" content="The basic shape can contain all valid number formats">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 7fd84aa..fb6d3d2 100644 (file)
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#typedef-shape-box">
         <meta name="assert" content="Shape-outside may be a pair of shape and box values">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index e163312..5995620 100644 (file)
@@ -7,7 +7,7 @@
         <link rel="reviewer" title="Alan Stearns" href="mailto:stearns@adobe.com"> <!--  2014-03-04  -->
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="Shape-outside takes can be assigned the 'inherit' value.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 7ad2e1f..7726704 100644 (file)
@@ -7,7 +7,7 @@
         <link rel="reviewer" title="Alan Stearns" href="mailto:stearns@adobe.com"> <!--  2014-03-04  -->
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="Shape-outside takes its default value of none when assigned the 'initial' value">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 0dc8182..d837004 100644 (file)
@@ -7,7 +7,7 @@
         <link rel="reviewer" title="Alan Stearns" href="mailto:stearns@adobe.com"> <!--  2014-03-04  -->
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <meta name="assert" content="shape-outside can be explictly assigned the default value of none.">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index b2a21ba..3cd5694 100644 (file)
@@ -1,4 +1,4 @@
-<!DOCTYPE html>
+                    <!DOCTYPE html>
 <html>
     <head>
         <title>Shape Outside Valid Basic Shape Functional Notation</title>
@@ -8,7 +8,7 @@
         <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
         <link rel="help" href="http://www.w3.org/TR/cssom-1/#serializing-css-values">
         <meta name="assert" content="Basic shapes use functional notation, and may contain optional whitespace inside the parentheses">
-        <meta name="flags" content="dom">
+        <meta name="flags" content="ahem dom">
         <script src="/resources/testharness.js"></script>
         <script src="/resources/testharnessreport.js"></script>
         <script src="support/parsing-utils.js"></script>
index 11a8dc8..cc174ec 100644 (file)
@@ -350,9 +350,9 @@ function convertToPx(origValue) {
              } else if (unit == 'em') {
                  number = (16 * number);
              } else if (unit == 'ex') {
-                 number = (7.1796875 * number);
+                 number = (12.8 * number);
              } else if (unit == 'ch') {
-                 number = (8 * number);
+                 number = (16 * number);
              } else if (unit == 'rem') {
                  number = (16 * number);
              } else if (unit == 'vw') {
@@ -438,6 +438,38 @@ function generateInsetRoundCases(units, testType) {
     return results;
 }
 
+function each(object, func) {
+    for (var prop in object) {
+        if (object.hasOwnProperty(prop)) {
+            func(prop, object[prop]);
+        }
+    }
+}
+
+function setupFonts(func) {
+    return function () {
+        var fontProperties = {
+            'font-family': 'Ahem',
+            'font-size': '16px',
+            'line-height': '1'
+        };
+        var savedValues = { };
+        each(fontProperties, function (key, value) {
+            savedValues[key] = document.body.style.getPropertyValue(key);
+            document.body.style.setProperty(key, value);
+        });
+        func.apply(this, arguments);
+        each(fontProperties, function (key, value) {
+            if (value) {
+                document.body.style.setProperty(key, value);
+            }
+            else {
+                document.body.style.removeProperty(key);
+            }
+        });
+    };
+}
+
 var validUnits = [
                     "cm","mm","in","pt","pc",  // Absolute length units (omitting px b/c we default to that in all tests)
                     "em","ex","ch","rem",      // Font relative length units
@@ -847,11 +879,11 @@ var calcTestValues = [
 
 return {
     testInlineStyle: testInlineStyle,
-    testComputedStyle: testComputedStyle,
+    testComputedStyle: setupFonts(testComputedStyle),
     testShapeMarginInlineStyle: testShapeMarginInlineStyle,
-    testShapeMarginComputedStyle: testShapeMarginComputedStyle,
+    testShapeMarginComputedStyle: setupFonts(testShapeMarginComputedStyle),
     testShapeThresholdInlineStyle: testShapeThresholdInlineStyle,
-    testShapeThresholdComputedStyle: testShapeThresholdComputedStyle,
+    testShapeThresholdComputedStyle: setupFonts(testShapeThresholdComputedStyle),
     buildTestCases: buildTestCases,
     buildRadiiTests: buildRadiiTests,
     buildPositionTests: buildPositionTests,
@@ -861,6 +893,7 @@ return {
     buildCalcTests: buildCalcTests,
     validUnits: validUnits,
     calcTestValues: calcTestValues,
-    roundResultStr: roundResultStr
+    roundResultStr: roundResultStr,
+    setupFonts: setupFonts
 }
 })();
index 6bf897c..78e850f 100644 (file)
@@ -7,7 +7,6 @@
     <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shapes-from-image"/>
     <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property"/>
     <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-image-threshold-property"/>
-    <link rel="match" href="reference/shape-outside-012-ref.html"/>
     <meta name="flags" content="ahem dom"/>
     <meta name="assert" content="This test verifies content flows around a shape that is
                                  defined in the image's alpha channel and adjusted by the
index cf445c4..2153d16 100644 (file)
@@ -15,6 +15,7 @@ None
 ------------------------------------------------------------------------
 List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/OWNERS
+/LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/basic-shape-circle-ellipse-serialization.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside-invalid-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside-invalid-circle-000.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-shapes-1/shape-outside-invalid-circle-001.html
index e6f85c5..c834b91 100644 (file)
@@ -4,7 +4,7 @@
 <link rel="reviewer" title="Florian Rivoal" href="http://florian.rivoal.net/"> <!--  2015-04-12  -->
 <link rel="help" href="http://www.w3.org/TR/css3-ui/#cursor">
 <link rel="help" href="http://www.w3.org/TR/css3-images/#default-object-size">
-<meta name="flags" content="interact svg">
+<meta name="flags" content="interact svg may">
 <meta charset="UTF-8">
 <meta name="assert" content="Test checks that an SVG image with no fixed size is supported as a custom cursor at the default object size for cursor images.">
 <style>
index 2b83efc..793c613 100644 (file)
@@ -50,6 +50,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/focus-within-shadow-006.html
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/of-type-selectors-expected.xhtml
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/of-type-selectors.xhtml
+/LayoutTests/imported/w3c/web-platform-tests/css/selectors4/scope-without-scoping-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/selectors4/scope-without-scoping.html
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/selector-required-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/selector-required.html
 /LayoutTests/imported/w3c/web-platform-tests/css/selectors4/selectors-dir-selector-ltr-001-expected.xht
index ea42493..5b9af1f 100644 (file)
@@ -3,4 +3,6 @@ PASS Resolution of width is correct for ::before and ::after pseudo-elements
 FAIL Resolution of width is correct for ::before and ::after pseudo-elements of display: contents elements assert_equals: expected "50px" but got "50%"
 PASS Resolution of nonexistent pseudo-element styles 
 FAIL Resolution of pseudo-element styles in display: none elements assert_equals: Pseudo-styles of display: none elements should be correct expected "\"Foo\"" but got "Foo"
+PASS Item-based blockification of pseudo-elements 
+FAIL Item-based blockification of nonexistent pseudo-elements assert_equals: Pseudo-styles of display: flex elements should get blockified expected "block" but got "inline"
 
index c8a4506..fa358d6 100644 (file)
@@ -17,7 +17,9 @@
 #test::before,
 #test::after,
 #contents::before,
-#contents::after {
+#contents::after,
+#flex::before,
+#flex::after {
   content: " ";
   width: 50%;
   height: 10px;
 #none::after {
   content: "Foo";
 }
+#flex {
+  display: flex;
+}
+#flex-no-pseudo {
+  display: flex;
+}
 </style>
 <div id="test">
   <div id="contents"></div>
   <div id="none"></div>
+  <div id="flex"></div>
+  <div id="flex-no-pseudo"></div>
 </div>
 <script>
 test(function() {
@@ -67,4 +77,18 @@ test(function() {
                   "Pseudo-styles of display: none elements should be correct");
   });
 }, "Resolution of pseudo-element styles in display: none elements");
+test(function() {
+  var flex = document.getElementById('flex');
+  [":before", ":after"].forEach(function(pseudo) {
+    assert_equals(getComputedStyle(flex, pseudo).display, "block",
+                  "Pseudo-styles of display: flex elements should get blockified");
+  });
+}, "Item-based blockification of pseudo-elements");
+test(function() {
+  var flexNoPseudo = document.getElementById('flex-no-pseudo');
+  [":before", ":after"].forEach(function(pseudo) {
+    assert_equals(getComputedStyle(flexNoPseudo, pseudo).display, "block",
+                  "Pseudo-styles of display: flex elements should get blockified");
+  });
+}, "Item-based blockification of nonexistent pseudo-elements");
 </script>
index d366bc4..e693017 100644 (file)
@@ -1,5 +1,6 @@
 
 FAIL sheet_property assert_own_property: expected property "sheet" missing
+PASS sheet_property_updates 
 FAIL CSSStyleSheet_properties undefined is not an object (evaluating 'object.hasOwnProperty')
 FAIL CSSStyleSheet_property_values undefined is not an object (evaluating 'styleSheet.ownerRule')
 FAIL StyleSheet_properties undefined is not an object (evaluating 'object.hasOwnProperty')
index 3f4956c..fb1fde8 100644 (file)
       assert: [ "styleElement.sheet exists", "styleElement.sheet is a CSSStyleSheet",
                 "linkElement.sheet exists", "linkElement.sheet is a CSSStyleSheet"] });
 
+    test(function () {
+      var style = document.createElement("style");
+      document.querySelector("head").appendChild(style);
+      var sheet1 = style.sheet;
+      assert_equals(sheet1.cssRules.length, 0);
+      style.appendChild(document.createTextNode("a { color: green; }"));
+      assert_equals(style.sheet.cssRules.length, 1);
+    }, "sheet_property_updates",
+    { help: "https://www.w3.org/TR/cssom-1/#the-linkstyle-interface",
+      assert: "The sheet property on LinkStyle should always return the current associated style sheet." });
+
     test(function() {
         assert_own_property(styleSheet, "ownerRule");
         assert_own_property(styleSheet, "cssRules");
index b7a45c3..bca4649 100644 (file)
@@ -23,6 +23,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/cssom/CSSStyleSheet.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/GetBoundingRect.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/MediaList.html
+/LayoutTests/imported/w3c/web-platform-tests/cssom/MediaList2.xhtml
 /LayoutTests/imported/w3c/web-platform-tests/cssom/OWNERS
 /LayoutTests/imported/w3c/web-platform-tests/cssom/StyleSheetList.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/computed-style-001.html
@@ -54,6 +55,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/cssom/medialist-interfaces-004.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/overflow-serialization.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/selectorSerialize.html
+/LayoutTests/imported/w3c/web-platform-tests/cssom/selectorText-modification-restyle-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/cssom/selectorText-modification-restyle-001.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/serialization-CSSDeclaration-with-important.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-namespaced-type-selectors.html
 /LayoutTests/imported/w3c/web-platform-tests/cssom/serialize-values.html
index ec86f94..639e835 100644 (file)
@@ -1,4 +1,3 @@
-CONSOLE MESSAGE: line 225: ReferenceError: Can't find variable: document_types
 
 PASS document.createElement must create an instance of custom elements 
 PASS document.createElement must report a TypeError when the result of Construct is not a DOM node 
@@ -12,4 +11,27 @@ PASS document.createElement must report a NotSupportedError when an element chil
 PASS document.createElement must not report a NotSupportedError when an element child is added and removed during construction 
 PASS document.createElement must report a NotSupportedError when the element gets inserted into another element during construction 
 PASS document.createElement must not report a NotSupportedError when the element is inserted and removed from another element during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a the document of the template elements during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a the document of the template elements during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a the document of the template elements during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a a new document during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a a new document during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a new document during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a a cloned document during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a a cloned document during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a cloned document during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a a document created by createHTMLDocument during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a a document created by createHTMLDocument during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a a document created by createHTMLDocument during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a an HTML document created by createDocument during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a an HTML document created by createDocument during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a an HTML document created by createDocument during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a the document of an iframe during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a the document of an iframe during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a the document of an iframe during construction 
+PASS document.createElement must report a NotSupportedError when the element is adopted into a an HTML document fetched by XHR during construction 
+PASS document.createElement must report a NotSupportedError when the element is inserted into a an HTML document fetched by XHR during construction 
+PASS document.createElement must not report a NotSupportedError when the element is adopted back from a an HTML document fetched by XHR during construction 
+PASS document.createElement must report a NotSupportedError when the local name of the element does not match that of the custom element 
+PASS document.createElement must report an exception thrown by a custom element constructor 
 
index f8b3a94..e446c50 100644 (file)
@@ -8,7 +8,7 @@
 <link rel="help" content="https://dom.spec.whatwg.org/#concept-create-element">
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
-<script src="resources/custom-elements-helper.js"></script>
+<script src="resources/custom-elements-helpers.js"></script>
 </head>
 <body>
 <div id="log"></div>
index 667dedc..ed2b2db 100644 (file)
@@ -2,7 +2,7 @@ CONSOLE MESSAGE: TypeError: The result of constructing a custom element must be
 CONSOLE MESSAGE: TypeError: The result of constructing a custom element must be a HTMLElement
 CONSOLE MESSAGE: line 35: ReferenceError: Cannot access uninitialized variable.
 CONSOLE MESSAGE: line 41: Bad
-CONSOLE MESSAGE: line 1397: Error: Tried to create a test with file_is_test
+CONSOLE MESSAGE: line 1401: Error: Tried to create a test with file_is_test
 
 PASS Custom Elements: Changes to the HTML parser 
 
index dc0dff8..7d29b82 100644 (file)
@@ -23,6 +23,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/connected-callbacks.html
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/custom-element-reaction-queue.html
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/disconnected-callbacks.html
+/LayoutTests/imported/w3c/web-platform-tests/custom-elements/historical.html
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/microtasks-and-constructors.html
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/reaction-timing.html
 /LayoutTests/imported/w3c/web-platform-tests/custom-elements/upgrading.html
index c19c7a0..5009c8a 100644 (file)
@@ -1,20 +1,49 @@
 <!DOCTYPE html>
-
 <script src="/resources/testharness.js"></script>
 <script src="/resources/testharnessreport.js"></script>
 <script type="text/javascript">
 'use strict';
 
+// Computes greatest common divisor of a and b using Euclid's algorithm
+function computeGCD(a, b) {
+  if (!Number.isInteger(a) || !Number.isInteger(b)) {
+    throw new Error('Parameters must be integer numbers');
+  }
+
+  var r;
+  while (b != 0) {
+    r = a % b;
+    a = b;
+    b = r;
+  }
+  return (a < 0) ? -a : a;
+}
+
+// Finds minimum resolution Δ given a set of samples which are known to be in the form of N*Δ.
+// We use GCD of all samples as a simple estimator.
+function estimateMinimumResolution(samples) {
+  var gcd;
+  for (const sample of samples) {
+    gcd = gcd ? computeGCD(gcd, sample) : sample;
+  }
+
+  return gcd;
+}
+
 test(function() {
-    let e1 = new MouseEvent('test1');
-    let e2 = new MouseEvent('test2');
+  const samples = [];
+  for (var i = 0; i < 1e3; i++) {
+    var deltaInMicroSeconds = 0;
+    const e1 = new MouseEvent('test1');
+    do {
+      const e2 = new MouseEvent('test2');
+      deltaInMicroSeconds = Math.round((e2.timeStamp - e1.timeStamp) * 1000);
+    } while (deltaInMicroSeconds == 0) // only collect non-zero samples
 
-    while (e1.timeStamp == e2.timeStamp)
-        e2 = new MouseEvent('test2');
+    samples.push(deltaInMicroSeconds);
+  }
 
-    let expectedResolutionMilliseconds = 0.005;
-    let integerMultipleOfResolution = (e2.timeStamp - e1.timeStamp) / expectedResolutionMilliseconds;
-    let shouldBeNearZeroOrOne = integerMultipleOfResolution % 1;
-    assert_true(shouldBeNearZeroOrOne < 1e-10 || Math.abs(shouldBeNearZeroOrOne - 1) < 1e-10);
+  const minResolution = estimateMinimumResolution(samples);
+  assert_greater_than_equal(minResolution, 5);
 }, 'Event timestamp should not have a resolution better that 5 microseconds');
 </script>
\ No newline at end of file
index 60a2438..72519dd 100644 (file)
@@ -131,6 +131,7 @@ test(function() {
     if (expected === null) {
       test(function() {
         var doc = document.implementation.createDocument(namespace, qualifiedName, doctype)
+        assert_equals(doc.location, null)
         assert_equals(doc.compatMode, "CSS1Compat")
         assert_equals(doc.characterSet, "UTF-8")
         assert_equals(doc.contentType, namespace == htmlNamespace ? "application/xhtml+xml"
index 64c14d4..9ac3f3b 100644 (file)
@@ -11,4 +11,5 @@ PASS Missing title argument
 PASS createHTMLDocument(): metadata 
 PASS createHTMLDocument(): characterSet aliases 
 PASS createHTMLDocument(): URL parsing 
+PASS createHTMLDocument(): document location getter is null 
 
index 57f475c..c6e0bea 100644 (file)
@@ -87,4 +87,10 @@ test(function() {
   a.href = "http://example.org/?\u00E4";
   assert_equals(a.href, "http://example.org/?%C3%A4");
 }, "createHTMLDocument(): URL parsing")
+
+// Test the document location getter is null outside of browser context
+test(function() {
+  var doc = document.implementation.createHTMLDocument();
+  assert_equals(doc.location, null);
+}, "createHTMLDocument(): document location getter is null")
 </script>
index 3ebc780..2f26982 100644 (file)
@@ -28,6 +28,7 @@ test(function() {
 
 test(function() {
   var doc = new Document();
+  assert_equals(doc.location, null);
   assert_equals(doc.URL, "about:blank");
   assert_equals(doc.documentURI, "about:blank");
   assert_equals(doc.compatMode, "CSS1Compat");
index e9c7bc7..d429a86 100644 (file)
@@ -41,6 +41,7 @@ PASS Detached Element.matches: Unknown pseudo-class: :example
 PASS Detached Element.matches: Unknown pseudo-element: div::example 
 PASS Detached Element.matches: Unknown pseudo-element: ::example 
 PASS Detached Element.matches: Invalid pseudo-element: :::before 
+PASS Detached Element.matches: Invalid pseudo-element: :: before 
 PASS Detached Element.matches: Undeclared namespace: ns|div 
 PASS Detached Element.matches: Undeclared namespace: :not(ns|div) 
 PASS Detached Element.matches: Invalid namespace: ^|div 
@@ -73,6 +74,7 @@ PASS In-document Element.matches: Unknown pseudo-class: :example
 PASS In-document Element.matches: Unknown pseudo-element: div::example 
 PASS In-document Element.matches: Unknown pseudo-element: ::example 
 PASS In-document Element.matches: Invalid pseudo-element: :::before 
+PASS In-document Element.matches: Invalid pseudo-element: :: before 
 PASS In-document Element.matches: Undeclared namespace: ns|div 
 PASS In-document Element.matches: Undeclared namespace: :not(ns|div) 
 PASS In-document Element.matches: Invalid namespace: ^|div 
index d6d7bdb..0d07afd 100644 (file)
@@ -41,6 +41,7 @@ PASS Detached Element.webkitMatchesSelector: Unknown pseudo-class: :example
 PASS Detached Element.webkitMatchesSelector: Unknown pseudo-element: div::example 
 PASS Detached Element.webkitMatchesSelector: Unknown pseudo-element: ::example 
 PASS Detached Element.webkitMatchesSelector: Invalid pseudo-element: :::before 
+PASS Detached Element.webkitMatchesSelector: Invalid pseudo-element: :: before 
 PASS Detached Element.webkitMatchesSelector: Undeclared namespace: ns|div 
 PASS Detached Element.webkitMatchesSelector: Undeclared namespace: :not(ns|div) 
 PASS Detached Element.webkitMatchesSelector: Invalid namespace: ^|div 
@@ -73,6 +74,7 @@ PASS In-document Element.webkitMatchesSelector: Unknown pseudo-class: :example
 PASS In-document Element.webkitMatchesSelector: Unknown pseudo-element: div::example 
 PASS In-document Element.webkitMatchesSelector: Unknown pseudo-element: ::example 
 PASS In-document Element.webkitMatchesSelector: Invalid pseudo-element: :::before 
+PASS In-document Element.webkitMatchesSelector: Invalid pseudo-element: :: before 
 PASS In-document Element.webkitMatchesSelector: Undeclared namespace: ns|div 
 PASS In-document Element.webkitMatchesSelector: Undeclared namespace: :not(ns|div) 
 PASS In-document Element.webkitMatchesSelector: Invalid namespace: ^|div 
index 526b1db..bce2ed4 100644 (file)
@@ -103,6 +103,8 @@ PASS Document.querySelector: Unknown pseudo-element: ::example
 PASS Document.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Document.querySelector: Invalid pseudo-element: :::before 
 PASS Document.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Document.querySelector: Invalid pseudo-element: :: before 
+PASS Document.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Document.querySelector: Undeclared namespace: ns|div 
 PASS Document.querySelectorAll: Undeclared namespace: ns|div 
 PASS Document.querySelector: Undeclared namespace: :not(ns|div) 
@@ -167,6 +169,8 @@ PASS Detached Element.querySelector: Unknown pseudo-element: ::example
 PASS Detached Element.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Detached Element.querySelector: Invalid pseudo-element: :::before 
 PASS Detached Element.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Detached Element.querySelector: Invalid pseudo-element: :: before 
+PASS Detached Element.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Detached Element.querySelector: Undeclared namespace: ns|div 
 PASS Detached Element.querySelectorAll: Undeclared namespace: ns|div 
 PASS Detached Element.querySelector: Undeclared namespace: :not(ns|div) 
@@ -231,6 +235,8 @@ PASS Fragment.querySelector: Unknown pseudo-element: ::example
 PASS Fragment.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Fragment.querySelector: Invalid pseudo-element: :::before 
 PASS Fragment.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Fragment.querySelector: Invalid pseudo-element: :: before 
+PASS Fragment.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Fragment.querySelector: Undeclared namespace: ns|div 
 PASS Fragment.querySelectorAll: Undeclared namespace: ns|div 
 PASS Fragment.querySelector: Undeclared namespace: :not(ns|div) 
@@ -295,6 +301,8 @@ PASS In-document Element.querySelector: Unknown pseudo-element: ::example
 PASS In-document Element.querySelectorAll: Unknown pseudo-element: ::example 
 PASS In-document Element.querySelector: Invalid pseudo-element: :::before 
 PASS In-document Element.querySelectorAll: Invalid pseudo-element: :::before 
+PASS In-document Element.querySelector: Invalid pseudo-element: :: before 
+PASS In-document Element.querySelectorAll: Invalid pseudo-element: :: before 
 PASS In-document Element.querySelector: Undeclared namespace: ns|div 
 PASS In-document Element.querySelectorAll: Undeclared namespace: ns|div 
 PASS In-document Element.querySelector: Undeclared namespace: :not(ns|div) 
@@ -387,6 +395,8 @@ PASS Document.querySelectorAll: Attribute begins with selector, matching href at
 PASS Document.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Document.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Document.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Document.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Document.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Document.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -399,6 +409,8 @@ PASS Document.querySelectorAll: Attribute ends with selector, matching href attr
 PASS Document.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Document.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Document.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Document.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Document.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Document.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -417,6 +429,8 @@ PASS Document.querySelectorAll: Attribute contains selector, matching lang attri
 PASS Document.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Document.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Document.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Document.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -799,6 +813,8 @@ PASS Detached Element.querySelectorAll: Attribute begins with selector, matching
 PASS Detached Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Detached Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -811,6 +827,8 @@ PASS Detached Element.querySelectorAll: Attribute ends with selector, matching h
 PASS Detached Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Detached Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -829,6 +847,8 @@ PASS Detached Element.querySelectorAll: Attribute contains selector, matching la
 PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Detached Element.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -1211,6 +1231,8 @@ PASS Fragment.querySelectorAll: Attribute begins with selector, matching href at
 PASS Fragment.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Fragment.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Fragment.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Fragment.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -1223,6 +1245,8 @@ PASS Fragment.querySelectorAll: Attribute ends with selector, matching href attr
 PASS Fragment.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Fragment.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Fragment.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Fragment.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -1241,6 +1265,8 @@ PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attri
 PASS Fragment.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Fragment.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Fragment.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Fragment.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -1623,6 +1649,8 @@ PASS In-document Element.querySelectorAll: Attribute begins with selector, match
 PASS In-document Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS In-document Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -1635,6 +1663,8 @@ PASS In-document Element.querySelectorAll: Attribute ends with selector, matchin
 PASS In-document Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS In-document Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -1653,6 +1683,8 @@ PASS In-document Element.querySelectorAll: Attribute contains selector, matching
 PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS In-document Element.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
index d61d0cf..7b7c0df 100644 (file)
@@ -103,6 +103,8 @@ PASS Document.querySelector: Unknown pseudo-element: ::example
 PASS Document.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Document.querySelector: Invalid pseudo-element: :::before 
 PASS Document.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Document.querySelector: Invalid pseudo-element: :: before 
+PASS Document.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Document.querySelector: Undeclared namespace: ns|div 
 PASS Document.querySelectorAll: Undeclared namespace: ns|div 
 PASS Document.querySelector: Undeclared namespace: :not(ns|div) 
@@ -167,6 +169,8 @@ PASS Detached Element.querySelector: Unknown pseudo-element: ::example
 PASS Detached Element.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Detached Element.querySelector: Invalid pseudo-element: :::before 
 PASS Detached Element.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Detached Element.querySelector: Invalid pseudo-element: :: before 
+PASS Detached Element.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Detached Element.querySelector: Undeclared namespace: ns|div 
 PASS Detached Element.querySelectorAll: Undeclared namespace: ns|div 
 PASS Detached Element.querySelector: Undeclared namespace: :not(ns|div) 
@@ -231,6 +235,8 @@ PASS Fragment.querySelector: Unknown pseudo-element: ::example
 PASS Fragment.querySelectorAll: Unknown pseudo-element: ::example 
 PASS Fragment.querySelector: Invalid pseudo-element: :::before 
 PASS Fragment.querySelectorAll: Invalid pseudo-element: :::before 
+PASS Fragment.querySelector: Invalid pseudo-element: :: before 
+PASS Fragment.querySelectorAll: Invalid pseudo-element: :: before 
 PASS Fragment.querySelector: Undeclared namespace: ns|div 
 PASS Fragment.querySelectorAll: Undeclared namespace: ns|div 
 PASS Fragment.querySelector: Undeclared namespace: :not(ns|div) 
@@ -295,6 +301,8 @@ PASS In-document Element.querySelector: Unknown pseudo-element: ::example
 PASS In-document Element.querySelectorAll: Unknown pseudo-element: ::example 
 PASS In-document Element.querySelector: Invalid pseudo-element: :::before 
 PASS In-document Element.querySelectorAll: Invalid pseudo-element: :::before 
+PASS In-document Element.querySelector: Invalid pseudo-element: :: before 
+PASS In-document Element.querySelectorAll: Invalid pseudo-element: :: before 
 PASS In-document Element.querySelector: Undeclared namespace: ns|div 
 PASS In-document Element.querySelectorAll: Undeclared namespace: ns|div 
 PASS In-document Element.querySelector: Undeclared namespace: :not(ns|div) 
@@ -387,6 +395,8 @@ PASS Document.querySelectorAll: Attribute begins with selector, matching href at
 PASS Document.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Document.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Document.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Document.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Document.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Document.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Document.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -399,6 +409,8 @@ PASS Document.querySelectorAll: Attribute ends with selector, matching href attr
 PASS Document.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Document.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Document.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Document.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Document.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Document.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Document.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -417,6 +429,8 @@ PASS Document.querySelectorAll: Attribute contains selector, matching lang attri
 PASS Document.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Document.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Document.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Document.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Document.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Document.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Document.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -799,6 +813,8 @@ PASS Detached Element.querySelectorAll: Attribute begins with selector, matching
 PASS Detached Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Detached Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Detached Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Detached Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -811,6 +827,8 @@ PASS Detached Element.querySelectorAll: Attribute ends with selector, matching h
 PASS Detached Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Detached Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Detached Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Detached Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -829,6 +847,8 @@ PASS Detached Element.querySelectorAll: Attribute contains selector, matching la
 PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Detached Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Detached Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Detached Element.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Detached Element.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Detached Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Detached Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -1211,6 +1231,8 @@ PASS Fragment.querySelectorAll: Attribute begins with selector, matching href at
 PASS Fragment.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS Fragment.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS Fragment.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS Fragment.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Fragment.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS Fragment.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -1223,6 +1245,8 @@ PASS Fragment.querySelectorAll: Attribute ends with selector, matching href attr
 PASS Fragment.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS Fragment.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS Fragment.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS Fragment.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Fragment.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS Fragment.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -1241,6 +1265,8 @@ PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attri
 PASS Fragment.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS Fragment.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS Fragment.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS Fragment.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS Fragment.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Fragment.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS Fragment.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
@@ -1623,6 +1649,8 @@ PASS In-document Element.querySelectorAll: Attribute begins with selector, match
 PASS In-document Element.querySelector: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
 PASS In-document Element.querySelector: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"] 
+PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
+PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute with empty value: #attr-begins [class^=""] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS In-document Element.querySelector: Attribute begins with selector, not matching class attribute not beginning with specified substring: #attr-begins [class^=apple] 
 PASS In-document Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'] 
@@ -1635,6 +1663,8 @@ PASS In-document Element.querySelectorAll: Attribute ends with selector, matchin
 PASS In-document Element.querySelector: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
 PASS In-document Element.querySelector: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"] 
+PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
+PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute with empty value: #attr-ends [class$=""] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS In-document Element.querySelector: Attribute ends with selector, not matching class attribute not ending with specified substring: #attr-ends [class$=apple] 
 PASS In-document Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '] 
@@ -1653,6 +1683,8 @@ PASS In-document Element.querySelectorAll: Attribute contains selector, matching
 PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"] 
 PASS In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
 PASS In-document Element.querySelector: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"] 
+PASS In-document Element.querySelectorAll: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
+PASS In-document Element.querySelector: Attribute contains selector, not matching class attribute with empty value: #attr-contains [class*=""] 
 PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS In-document Element.querySelector: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'] 
 PASS In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '] 
index 7f99a42..95d6204 100644 (file)
@@ -37,6 +37,7 @@ var invalidSelectors = [
   {name: "Unknown pseudo-element",       selector: "div::example"},
   {name: "Unknown pseudo-element",       selector: "::example"},
   {name: "Invalid pseudo-element",       selector: ":::before"},
+  {name: "Invalid pseudo-element",       selector: ":: before"},
   {name: "Undeclared namespace",         selector: "ns|div"},
   {name: "Undeclared namespace",         selector: ":not(ns|div)"},
   {name: "Invalid namespace",            selector: "^|div"},
@@ -120,6 +121,7 @@ var validSelectors = [
   // - substring begins-with     [att^=val] (Level 3)
   {name: "Attribute begins with selector, matching href attributes beginning with specified substring",                             selector: "#attr-begins a[href^=\"http://www\"]", expect: ["attr-begins-a1", "attr-begins-a3"],     level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute begins with selector, matching lang attributes beginning with specified substring, ",                           selector: "#attr-begins [lang^=\"en-\"]",         expect: ["attr-begins-div2", "attr-begins-div4"], level: 3, testType: TEST_QSA | TEST_MATCH},
+  {name: "Attribute begins with selector, not matching class attribute with empty value",                                           selector: "#attr-begins [class^=\"\"]",          expect: [] /*no matches*/,                        level: 3, testType: TEST_QSA},
   {name: "Attribute begins with selector, not matching class attribute not beginning with specified substring",                     selector: "#attr-begins [class^=apple]",          expect: [] /*no matches*/,                        level: 3, testType: TEST_QSA},
   {name: "Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring",    selector: "#attr-begins [class^=' apple']",       expect: ["attr-begins-p1"],                       level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring",    selector: "#attr-begins [class^=\" apple\"]",     expect: ["attr-begins-p1"],                       level: 3, testType: TEST_QSA | TEST_MATCH},
@@ -128,6 +130,7 @@ var validSelectors = [
   // - substring ends-with       [att$=val] (Level 3)
   {name: "Attribute ends with selector, matching href attributes ending with specified substring",                             selector: "#attr-ends a[href$=\".org\"]",   expect: ["attr-ends-a1", "attr-ends-a3"],     level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute ends with selector, matching lang attributes ending with specified substring, ",                           selector: "#attr-ends [lang$=\"-CH\"]",     expect: ["attr-ends-div2", "attr-ends-div4"], level: 3, testType: TEST_QSA | TEST_MATCH},
+  {name: "Attribute ends with selector, not matching class attribute with empty value",                                        selector: "#attr-ends [class$=\"\"]",       expect: [] /*no matches*/,                    level: 3, testType: TEST_QSA},
   {name: "Attribute ends with selector, not matching class attribute not ending with specified substring",                     selector: "#attr-ends [class$=apple]",      expect: [] /*no matches*/,                    level: 3, testType: TEST_QSA},
   {name: "Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring",    selector: "#attr-ends [class$='apple ']",   expect: ["attr-ends-p1"],                     level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring",    selector: "#attr-ends [class$=\"apple \"]", expect: ["attr-ends-p1"],                     level: 3, testType: TEST_QSA | TEST_MATCH},
@@ -139,6 +142,7 @@ var validSelectors = [
   {name: "Attribute contains selector, matching href attributes containing specified substring",                              selector: "#attr-contains a[href*=\".example.\"]",      expect: ["attr-contains-a1", "attr-contains-a3"],     level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute contains selector, matching lang attributes beginning with specified substring, ",                        selector: "#attr-contains [lang*=\"en-\"]",             expect: ["attr-contains-div2", "attr-contains-div6"], level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute contains selector, matching lang attributes ending with specified substring, ",                           selector: "#attr-contains [lang*=\"-CH\"]",             expect: ["attr-contains-div3", "attr-contains-div5"], level: 3, testType: TEST_QSA | TEST_MATCH},
+  {name: "Attribute contains selector, not matching class attribute with empty value",                                        selector: "#attr-contains [class*=\"\"]",               expect: [] /*no matches*/,                            level: 3, testType: TEST_QSA},
   {name: "Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring", selector: "#attr-contains [class*=' apple']",           expect: ["attr-contains-p1"],                         level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute contains selector with single-quoted value, matching class attribute ending with specified substring",    selector: "#attr-contains [class*='orange ']",          expect: ["attr-contains-p1"],                         level: 3, testType: TEST_QSA | TEST_MATCH},
   {name: "Attribute contains selector with single-quoted value, matching class attribute containing specified substring",     selector: "#attr-contains [class*='ple banana ora']",   expect: ["attr-contains-p1"],                         level: 3, testType: TEST_QSA | TEST_MATCH},
@@ -492,6 +496,7 @@ var scopedSelectors = [
   // - substring begins-with     [att^=val] (Level 3)
   {name: "Attribute begins with selector, matching href attributes beginning with specified substring",                             selector: "a[href^=\"http://www\"]", ctx: "#attr-begins", expect: ["attr-begins-a1", "attr-begins-a3"],     level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute begins with selector, matching lang attributes beginning with specified substring, ",                           selector: "[lang^=\"en-\"]",         ctx: "#attr-begins", expect: ["attr-begins-div2", "attr-begins-div4"], level: 3, testType: TEST_FIND | TEST_MATCH},
+  {name: "Attribute begins with selector, not matching class attribute with empty value",                                           selector: "[class^=\"\"]",          ctx: "#attr-begins", expect: [] /*no matches*/,                        level: 3, testType: TEST_FIND},
   {name: "Attribute begins with selector, not matching class attribute not beginning with specified substring",                     selector: "[class^=apple]",          ctx: "#attr-begins", expect: [] /*no matches*/,                        level: 3, testType: TEST_FIND},
   {name: "Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring",    selector: "[class^=' apple']",       ctx: "#attr-begins", expect: ["attr-begins-p1"],                       level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring",    selector: "[class^=\" apple\"]",     ctx: "#attr-begins", expect: ["attr-begins-p1"],                       level: 3, testType: TEST_FIND | TEST_MATCH},
@@ -500,6 +505,7 @@ var scopedSelectors = [
   // - substring ends-with       [att$=val] (Level 3)
   {name: "Attribute ends with selector, matching href attributes ending with specified substring",                             selector: "a[href$=\".org\"]",   ctx: "#attr-ends", expect: ["attr-ends-a1", "attr-ends-a3"],     level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute ends with selector, matching lang attributes ending with specified substring, ",                           selector: "[lang$=\"-CH\"]",     ctx: "#attr-ends", expect: ["attr-ends-div2", "attr-ends-div4"], level: 3, testType: TEST_FIND | TEST_MATCH},
+  {name: "Attribute ends with selector, not matching class attribute with empty value",                                        selector: "[class$=\"\"]",       ctx: "#attr-ends", expect: [] /*no matches*/,                    level: 3, testType: TEST_FIND},
   {name: "Attribute ends with selector, not matching class attribute not ending with specified substring",                     selector: "[class$=apple]",      ctx: "#attr-ends", expect: [] /*no matches*/,                    level: 3, testType: TEST_FIND},
   {name: "Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring",    selector: "[class$='apple ']",   ctx: "#attr-ends", expect: ["attr-ends-p1"],                     level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring",    selector: "[class$=\"apple \"]", ctx: "#attr-ends", expect: ["attr-ends-p1"],                     level: 3, testType: TEST_FIND | TEST_MATCH},
@@ -511,6 +517,7 @@ var scopedSelectors = [
   {name: "Attribute contains selector, matching href attributes containing specified substring",                              selector: "a[href*=\".example.\"]",      ctx: "#attr-contains", expect: ["attr-contains-a1", "attr-contains-a3"],     level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute contains selector, matching lang attributes beginning with specified substring, ",                        selector: "[lang*=\"en-\"]",             ctx: "#attr-contains", expect: ["attr-contains-div2", "attr-contains-div6"], level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute contains selector, matching lang attributes ending with specified substring, ",                           selector: "[lang*=\"-CH\"]",             ctx: "#attr-contains", expect: ["attr-contains-div3", "attr-contains-div5"], level: 3, testType: TEST_FIND | TEST_MATCH},
+  {name: "Attribute contains selector, not matching class attribute with empty value",                                        selector: "[class*=\"\"]",               ctx: "#attr-contains", expect: [] /*no matches*/,                            level: 3, testType: TEST_FIND},
   {name: "Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring", selector: "[class*=' apple']",           ctx: "#attr-contains", expect: ["attr-contains-p1"],                         level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute contains selector with single-quoted value, matching class attribute ending with specified substring",    selector: "[class*='orange ']",          ctx: "#attr-contains", expect: ["attr-contains-p1"],                         level: 3, testType: TEST_FIND | TEST_MATCH},
   {name: "Attribute contains selector with single-quoted value, matching class attribute containing specified substring",     selector: "[class*='ple banana ora']",   ctx: "#attr-contains", expect: ["attr-contains-p1"],                         level: 3, testType: TEST_FIND | TEST_MATCH},
index 9fe515d..934bf2f 100644 (file)
@@ -35,8 +35,6 @@ try {
           }
         })
       }
-      fetchFail("http://example.not/")
-      fetchFail("https://example.not/test")
       fetchFail("ftp://example.not/")
       fetchFail("about:blank")
       fetchFail("mailto:whatwg@awesome.example")
index 8870165..857951e 100644 (file)
@@ -1,14 +1,8 @@
-Blocked access to external URL http://example.not/
-CONSOLE MESSAGE: EventSource cannot load http://example.not/. 
-Blocked access to external URL https://example.not/test
-CONSOLE MESSAGE: EventSource cannot load https://example.not/test. 
 CONSOLE MESSAGE: EventSource cannot load ftp://example.not/. Cross origin requests are only supported for HTTP.
 CONSOLE MESSAGE: EventSource cannot load about:blank. Cross origin requests are only supported for HTTP.
 CONSOLE MESSAGE: EventSource cannot load mailto:whatwg@awesome.example. Cross origin requests are only supported for HTTP.
 CONSOLE MESSAGE: EventSource cannot load javascript:alert('FAIL'). Cross origin requests are only supported for HTTP.
 
-PASS EventSource: constructor (act as if there is a network error) (http://example.not/) 
-PASS EventSource: constructor (act as if there is a network error) (https://example.not/test) 
 PASS EventSource: constructor (act as if there is a network error) (ftp://example.not/) 
 PASS EventSource: constructor (act as if there is a network error) (about:blank) 
 PASS EventSource: constructor (act as if there is a network error) (mailto:whatwg@awesome.example) 
index dd4ab84..58639cf 100644 (file)
@@ -7,7 +7,6 @@
     <script src="/resources/testharnessreport.js"></script>
   </head>
   <body>
-    <div id="log"></div>
     <script>
       function fetchFail(url) {
         var test = async_test(document.title + " (" + url + ")", { timeout: 20000 })
@@ -22,8 +21,6 @@
           }
         })
       }
-      fetchFail("http://example.not/")
-      fetchFail("https://example.not/test")
       fetchFail("ftp://example.not/")
       fetchFail("about:blank")
       fetchFail("mailto:whatwg@awesome.example")
index b14076d..09e4f29 100644 (file)
@@ -1,11 +1,9 @@
- # -*- coding: utf-8 -*-
-
 def main(request, response):
   response.headers.set("Content-Type", "text/event-stream")
-  last_event_id = request.headers.get('Last-Event-ID', None)
-  value = request.GET.first("idvalue", "…")
 
-  if(last_event_id):
-      return "data: " + last_event_id + "\n\n"
+  last_event_id = request.headers.get("Last-Event-ID", None)
+  if last_event_id:
+    return "data: " + last_event_id + "\n\n"
   else:
-    return "id: " + value + "\nretry: 200\ndata: hello\n\n"
+    idvalue = request.GET.first("idvalue", u"\u2026")
+    return "id: " + idvalue + "\nretry: 200\ndata: hello\n\n"
index bc0feec..45af089 100644 (file)
@@ -1,6 +1,4 @@
 
-FAIL shared worker - EventSource: constructor (act as if there is a network error) (http://example.not) Can't find variable: SharedWorker
-FAIL shared worker - EventSource: constructor (act as if there is a network error) (https://example.not/test) Can't find variable: SharedWorker
 FAIL shared worker - EventSource: constructor (act as if there is a network error) (ftp://example.not) Can't find variable: SharedWorker
 FAIL shared worker - EventSource: constructor (act as if there is a network error) (about:blank) Can't find variable: SharedWorker
 FAIL shared worker - EventSource: constructor (act as if there is a network error) (mailto:whatwg@awesome.example) Can't find variable: SharedWorker
index 277fbd4..fb8d125 100644 (file)
@@ -38,8 +38,6 @@ try {
           }
         })
       }
-      fetchFail("http://example.not")
-      fetchFail("https://example.not/test")
       fetchFail("ftp://example.not")
       fetchFail("about:blank")
       fetchFail("mailto:whatwg@awesome.example")
index 11e1495..b44f6cc 100644 (file)
@@ -16,4 +16,6 @@ PASS Multiple integrities: both are invalid
 PASS CORS empty integrity 
 PASS CORS SHA-512 integrity 
 PASS CORS invalid integrity 
+PASS Empty string integrity for opaque response 
+PASS SHA-* integrity for opaque response 
 
index 4cfaa44..5c2a400 100644 (file)
@@ -12,4 +12,6 @@ PASS Multiple integrities: both are invalid
 PASS CORS empty integrity 
 PASS CORS SHA-512 integrity 
 PASS CORS invalid integrity 
+PASS Empty string integrity for opaque response 
+PASS SHA-* integrity for opaque response 
 
index a436dab..0a3c298 100644 (file)
@@ -3,16 +3,26 @@ if (this.document === undefined) {
   importScripts("../resources/utils.js");
 }
 
-function integrity(desc, url, integrity, shouldPass) {
-   if (shouldPass) {
+function integrity(desc, url, integrity, initRequestMode, shouldPass) {
+  var fetchRequestInit = {'integrity': integrity}
+  if (!!initRequestMode && initRequestMode !== "") {
+    fetchRequestInit.mode = initRequestMode;
+  }
+
+  if (shouldPass) {
     promise_test(function(test) {
-      return fetch(url, {'integrity': integrity}).then(function(resp) {
-        assert_equals(resp.status, 200, "Response's status is 200");
+      return fetch(url, fetchRequestInit).then(function(resp) {
+        if (initRequestMode !== "no-cors") {
+          assert_equals(resp.status, 200, "Response's status is 200");
+        } else {
+          assert_equals(resp.status, 0, "Opaque response's status is 0");
+          assert_equals(resp.type, "opaque");
+        }
       });
     }, desc);
   } else {
     promise_test(function(test) {
-      return promise_rejects(test, new TypeError(), fetch(url, {'integrity': integrity}));
+      return promise_rejects(test, new TypeError(), fetch(url, fetchRequestInit));
     }, desc);
   }
 }
@@ -27,19 +37,43 @@ var url = "../resources/top.txt";
 var corsUrl = "http://{{host}}:{{ports[http][1]}}" + dirname(location.pathname) + RESOURCES_DIR + "top.txt";
 /* Enable CORS*/
 corsUrl += "?pipe=header(Access-Control-Allow-Origin,*)";
+var corsUrl2 = "https://{{host}}:{{ports[https][0]}}/fetch/api/resource/top.txt";
+
+integrity("Empty string integrity", url, "", /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("SHA-256 integrity", url, topSha256, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("SHA-384 integrity", url, topSha384, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("SHA-512 integrity", url, topSha512, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("Invalid integrity", url, invalidSha256,
+          /* initRequestMode */ undefined, /* shouldPass */  false);
+integrity("Multiple integrities: valid stronger than invalid", url,
+          invalidSha256 + " " + topSha384, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("Multiple integrities: invalid stronger than valid",
+          url, invalidSha512 + " " + topSha384, /* initRequestMode */ undefined,
+          /* shouldPass */ false);
+integrity("Multiple integrities: invalid as strong as valid", url,
+          invalidSha512 + " " + topSha512, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("Multiple integrities: both are valid", url,
+          topSha384 + " " + topSha512, /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("Multiple integrities: both are invalid", url,
+          invalidSha256 + " " + invalidSha512, /* initRequestMode */ undefined,
+          /* shouldPass */ false);
+integrity("CORS empty integrity", corsUrl, "", /* initRequestMode */ undefined,
+          /* shouldPass */ true);
+integrity("CORS SHA-512 integrity", corsUrl, topSha512,
+          /* initRequestMode */ undefined, /* shouldPass */ true);
+integrity("CORS invalid integrity", corsUrl, invalidSha512,
+          /* initRequestMode */ undefined, /* shouldPass */ false);
 
-integrity("Empty string integrity", url, "", true);
-integrity("SHA-256 integrity", url, topSha256, true);
-integrity("SHA-384 integrity", url, topSha384, true);
-integrity("SHA-512 integrity", url, topSha512, true);
-integrity("Invalid integrity", url, invalidSha256, false);
-integrity("Multiple integrities: valid stronger than invalid", url, invalidSha256 + " " + topSha384, true);
-integrity("Multiple integrities: invalid stronger than valid", url, invalidSha512 + " " + topSha384, false);
-integrity("Multiple integrities: invalid as strong as valid", url, invalidSha512 + " " + topSha512, true);
-integrity("Multiple integrities: both are valid", url,  topSha384 + " " + topSha512, true);
-integrity("Multiple integrities: both are invalid", url, invalidSha256 + " " + invalidSha512, false);
-integrity("CORS empty integrity", corsUrl, "", true);
-integrity("CORS SHA-512 integrity", corsUrl, topSha512, true);
-integrity("CORS invalid integrity", corsUrl, invalidSha512, false);
+integrity("Empty string integrity for opaque response", corsUrl2, "",
+          /* initRequestMode */ "no-cors", /* shouldPass */ true);
+integrity("SHA-* integrity for opaque response", corsUrl2, topSha512,
+          /* initRequestMode */ "no-cors", /* shouldPass */ false);
 
 done();
index 2297c21..f2cfc9f 100644 (file)
@@ -3,4 +3,6 @@ PASS Create headers using same name for different values
 PASS Check delete and has methods when using same name for different values 
 PASS Check set methods when called with already used name 
 PASS Check append methods when called with already used name 
+PASS Iterate combined values 
+PASS Iterate combined values in sorted order 
 
index 115df7a..7341b77 100644 (file)
@@ -2,7 +2,7 @@
 <html>
   <head>
     <meta charset="utf-8">
-    <title>Headers nameshake</title>
+    <title>Headers have combined (and sorted) values</title>
     <meta name="help" href="https://fetch.spec.whatwg.org/#headers">
     <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
     <script src="/resources/testharness.js"></script>
           assert_equals(headers.get(name), (value + ", " + "newSingleValue"));
         }
       }, "Check append methods when called with already used name");
+
+      test(() => {
+        const headers = new Headers([["1", "a"],["1", "b"]]);
+        for(let header of headers) {
+          assert_array_equals(header, ["1", "a, b"]);
+        }
+      }, "Iterate combined values");
+
+      test(() => {
+        const headers = new Headers([["2", "a"], ["1", "b"], ["2", "b"]]),
+              expected = [["1", "b"], ["2", "a, b"]];
+        let i = 0;
+        for(let header of headers) {
+          assert_array_equals(header, expected[i]);
+          i++;
+        }
+        assert_equals(i, 2);
+      }, "Iterate combined values in sorted order")
     </script>
   </body>
 </html>
index f419ddf..4ba81d0 100644 (file)
@@ -7,7 +7,6 @@ PASS RequestInit's referrer is invalid
 PASS RequestInit's method is invalid 
 PASS RequestInit's method is forbidden 
 PASS RequestInit's mode is no-cors and method is not simple 
-PASS RequestInit's mode is no-cors and integrity is not empty 
 PASS RequestInit's cache mode is only-if-cached and mode is not same-origin 
 PASS Request with cache mode: only-if-cached and fetch mode cors 
 PASS Request with cache mode: only-if-cached and fetch mode no-cors 
index d2ffec6..cf77313 100644 (file)
@@ -32,10 +32,6 @@ const badRequestArgTests = [
     testName: "RequestInit's mode is no-cors and method is not simple"
   },
   {
-    args: ["", { "mode": "no-cors", "integrity": "not  an empty string" }],
-    testName: "RequestInit's mode is no-cors and integrity is not empty"
-  },
-  {
     args: ["", { "mode": "cors", "cache": "only-if-cached" }],
     testName: "RequestInit's cache mode is only-if-cached and mode is not same-origin"
   },
index 6c27fd1..2d14ef3 100644 (file)
@@ -55,4 +55,5 @@ PASS Request should get its content-type from the body if none is provided
 PASS Request should get its content-type from init headers if one is provided 
 PASS Testing request header creations with various objects 
 PASS Testing empty Request Content-Type header 
+PASS Test that Request.headers has the [SameObject] extended attribute 
 
index 1d54728..014f2fb 100644 (file)
         });
       }, "Testing empty Request Content-Type header");
 
+      test(function() {
+        const request1 = new Request("");
+        assert_equals(request1.headers, request1.headers);
+
+        const request2 = new Request("", {"headers": {"X-Foo": "bar"}});
+        assert_equals(request2.headers, request2.headers);
+        const headers = request2.headers;
+        request2.headers.set("X-Foo", "quux");
+        assert_equals(headers, request2.headers);
+        headers.set("X-Other-Header", "baz");
+        assert_equals(headers, request2.headers);
+      }, "Test that Request.headers has the [SameObject] extended attribute");
+
     </script>
   </body>
 </html>
index d1b3a11..1d3da2c 100644 (file)
@@ -7,7 +7,6 @@ PASS Request interface: existence and properties of interface prototype object's
 PASS Request interface: attribute method 
 PASS Request interface: attribute url 
 PASS Request interface: attribute headers 
-PASS Request interface: attribute type 
 PASS Request interface: attribute destination 
 PASS Request interface: attribute referrer 
 PASS Request interface: attribute referrerPolicy 
@@ -29,7 +28,6 @@ PASS Stringification of new Request("")
 PASS Request interface: new Request("") must inherit property "method" with the proper type 
 PASS Request interface: new Request("") must inherit property "url" with the proper type 
 PASS Request interface: new Request("") must inherit property "headers" with the proper type 
-PASS Request interface: new Request("") must inherit property "type" with the proper type 
 PASS Request interface: new Request("") must inherit property "destination" with the proper type 
 PASS Request interface: new Request("") must inherit property "referrer" with the proper type 
 PASS Request interface: new Request("") must inherit property "referrerPolicy" with the proper type 
index 608a129..f78f0ca 100644 (file)
@@ -37,7 +37,6 @@
         readonly attribute USVString url;
         [SameObject] readonly attribute Headers headers;
 
-        readonly attribute RequestType type;
         readonly attribute RequestDestination destination;