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 46d0146e760f6d1b058503fcbd79548bf5ee1fff..996145b3b45bd903a6bcac869a5b684daedb6ed5 100644 (file)
@@ -1,3 +1,20 @@
+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
index 9fa9b3abf92f7c48730718bf6d7c7decb148bfd7..8387a7c0337feb48db157d276cfbd39f08fa34e6 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 6fdeb30ee0418f96a882847002753fa6fb503557..7cb5a0150d788ed2ad9dc99b7c34355b5087a7c7 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 62efc17ff83288a7bcaad9023ff2ba21c1190958..a471c84b0f7f3f2636c241ef68b427e94c98cf6c 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 e69ace01c6a015ee8438551e35d06ba182fd3c6f..0b374bf9b4a62bd0a74651b907ab60bfa929d702 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 c46c4b52154bf92965a998ea19ef1a645750a077..b8d456a13847f0d2c0315f8764ed9b34766042e4 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 ab672fa8bbe24a7493dd4ee5394c0c658ef8fb1c..26afcfb1cd03c2cfb3e4fcc4a9ce382144225f24 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 d37a20aa2e5dd5bdaa1b41a5e3eb13f4457e10f3..6d7937c522f62c609b6089558cadf7e3c4b13558 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 84394ecbd1c3aca5ad53b2dd4e2c6d48cd0c2175..c557d96ac4bd663b4f880009a01994b8161a05e3 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 045c6f4aca12c27d472a7e14fb6af77afbd1c1c1..4d2ec559557306391ffad1eceea780e748a859a0 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 adc95d073c546f1c4b8c479bb204dce25430628c..d94252489361795356121977edbe152dc894c1dd 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 12c2aceeb85f302557939b5ef968be519beaaa29..8f8377b6d70ebcf8ebd2c4c2da6bf3e6dc3e98c9 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 d8b2fedf316bdec26f527cfeb7fa14cbf6fec782..77cdfffcf00aa12002d64e268ed0e33954e26dbd 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 9b432ee0449cad6fe40d8fe63cf632f1a9fc9fce..99bc5c540c0d453dcceb89725b2a1f661343025b 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 d3145b9f6d23f8132b7b06aee4fb297ab2cb7aa3..a5fc4ed35fe9267d61d54827aa7a25652f5746a6 100644 (file)
@@ -14,3 +14,5 @@ promise_test(function() {
       idlArray.test();
     });
 }, 'Exposed interfaces in a Service Worker.');
+
+done();
index 0ef518b1aa21e7f1b5232f5bf402faeb1c3b887f..60ee6e5eac9398982e63cc40a81e3f6f626c754a 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 cd627955a7495f7bbf4ef825c764474433d67e2f..29d11364514c15b668ffaa0c4d38a3a89bff63c5 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 5ed1a46f14d8f4994943f54f3e1ee542af2cee65..978c898b98da3822918f476cf1945b63780c4229 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 dc67a4bc73008c080bb65b66ca1ee767372003da..b0e9ccdcfca2b0f5b31259d5718a7d4bbe551ae3 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 ef5a6849d6467b59b2ce3254cedab951689f0a86..17cf25f5f5de7f83c2b992dbb36bb6c81408b25c 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 15823450a38dd4ca4e125e06a4e4507d66760e99..da3f6afa1acc7d6e0351ebaacdb6cfd6db899276 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 d1aa8eed486a93cd0d17f5855aeb6ae3ebf613b3..e4524ef29b66df2926b75a39320df2353b72e4cc 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 b8a43b64d6998a1a515328d2e4edb166abe9c915..b9395697c35a0ee550a9f3c7824b9b0e05ff34b4 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 191346e6b7035ef1c4c1a802ecee52befffaeda8..487868cee6024afcc7a57fb6d4a27a9eaf19128c 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 d3bdfe047f145b9e03a7a448f97293a43488a172..39dea7efe81eeeb728d8e14ad7557dcf40eb82df 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 31107be43bd4729eb3acbfe09c133fe4ed876d3e..4cb0c69ba78c410712da74b7b809416dc37c3540 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 0844a712b959805641759cb4227837c765b7a0ea..7a6998447b3889f42e5e3796ef7c430d7deaa479 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 15606f7a19733c58109095d59500f8cfdce62a9b..5e7e1e83404d4fbd3240ca77dddd75e0a896537b 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 8cce60e44988cf846669d1856bb47ad48054efb2..3c9b3233f2bc7a3bac5fb2719cfd0017eb9e58ed 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 521fca5c85183506d5723c675d9d7ec05f140041..18c45150c25bbfacee6443dd4ad2261e99a482b9 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 52b67f15dc74b367271e8b8a277ba5db218af719..629e4accb141c12d5ac709b5723aa0cd2ad40299 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 a6ad821a41d87fccc104ef6ceb4c3b5e27770ed7..ba5be10e8ca5899969e8593e05234f32412742f3 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 1da605a480a841fea5e954bfdc4e67c951affa37..303fadf311836fe946bcec56d54b9e7a4651286f 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 60264c5a863ef2a826d4a88d9c0843461c5fb04c..3a10696f03d3305ec9035b3b8c1214fdbc23c87d 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 015c60333b585feb13b6af79d1e9b3d5be05ffb5..4aca783bf9560f1e68d34bd953021a0a37d01a65 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 3d31d9de09462dbe9d758a1b3d1046d1ca5c45d4..ffb503c90fdb748b17b61e853b0b61a76d2d5150 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 11d053ca4fa78ae4feef013d0509cb400ea0f51c..a19281313593d7de0c4d0d9721b1be0420144e4a 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 492ae3f782b734ace39f29944be8bd34baec0376..7656a300be4dc3a7e63c30cd08ce66221fbd2dfe 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 3704ce38b66e49f4e908ff7994738e0f252955bc..9f4927a4d992b54f9c99c297a07263254aa03293 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 8eb0fe3f9e186c30ba3e1d1b922610b20df54678..13a404c53a99b847a2c77ff7e9c1cc2377b55755 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 84465368b2f9d7139c9c99e893b47565f1191ebc..560ba1c81724e022a1b8c8f0e8bf3725bfd9d55d 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 103ed7f1c85fa69f7dd43ffb7292e986b9605fad..ded30e4cb69c8aa170f833a9901d1b537d53f207 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 2f19bc4373fe6e3f54ce6ca77d372138aca2f715..cb1f42e72eea3ad2deba10b9cf9e810488176547 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 47ec103523a32fe09dc847d8971efd4700e61b9a..468c51dda24f681df42480e08abea98a17aec7fe 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 2a813c88d9b9e724411864e5c2a32517eedea272..82b199ba47306a9e01d1f37e9748874baa9d04a4 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 29f1642999bf7e04dabd2b395e5dd692fe24125e..dcba31935e95ee9a2efa6fed8c06dedcfae261b2 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 b89756838a79e62af025148510f7a308a651f587..2bd76510cbfbf94630caa9bed0cb84155f402e0f 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 f0d4bc332705f44fe2fc8e8083ee2a2f4fd8bee9..a9a2f35598c0f89c39efe56307fb7c4d52d4be44 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 7aea0c1803d30f419803bd441d11085043d915bb..555ad1d70195a6fae746faaaf0afb73a9fd38a57 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 8cbc3dd6bb4150710a6c3d9f6100a8500a1701d3..4ef44cd0fb51f903d00e4b5600df166c0bbcec17 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 3a4bcffb0ce2a9f315971f24b8598c0e844abdea..82c8e312db46cf4b9586de69c2e1d41823694840 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 11ec265a4ee329d10d6766f52d1450e2f1e1e765..2a569f69321ac68b539b3de1da7fd5d81e512fa6 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 a4e209b646435b8411ceb46e5b4410c7785b4b32..6a457a93211c9153d8911e6e260e2c9378f99a56 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 bd375cb9b84e75d527471a6bb217cce7566a4052..fae634939b9ed496bb2b03d4d66a278b9919bc9b 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 cc921c473edfb12b9609a8fd1304d02fe8ef4430..d5907ead1ec8d319a05a7ab655a5436b63090f1d 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 ed9913f3eb9613c852015ef653b47526b37f1a55..1480e6222847dcdcfb9a2539064ac8fe58e15889 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 138e0de2a16221df2375ef07dd206b8b90dd6264..a31ae6642cc2c04204f2ffb301dbbab336ec9b64 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 8632f9925065453bedf0d416d0923568973f06e2..7b503a061f917f9538ad37375b7f368995d5e163 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 de37489e92d60b3cab1ea96fa4663f53bcd1b11d..020fd67760321ecd95d327071feb0db1dcad03ee 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 9d3e7c1021b7ab56d46c0517df084e151773f335..bbb761f9f276a82574008a9cf5a3854896a8b2a1 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 da3544b4bb61c6a945bbd8ce48ea07480b33278c..c26f274f053af0b0ea88864e34ad9cdf7fc4c8ec 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 e797b67c096fe04c5bc12b83aca3f3f705ddb869..30c0b368937d242818bff03e920d83846ddce35f 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 99a82b6265a6fe27107333e56fee34c04b6eb7b1..4afc84e2d7a35dfd1818f670e93ad63d25ad7662 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 d1cc11685bce1e3908ac604d5d5d0a759c24d41f..e7111720c45d0faa36ba8c44ebe17201bfa34620 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 60aca776e8ae8d8738c45255cb9e2506b2046b2b..5b4f7093dcfe13ccf57a562cbfccf74ad99b81d6 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 509c0713f3d1472f36781d97af94b9e44c327f5f..5cd3dc30ffe345a421eef8a7cc0c948ded5dd4e2 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 4c7046a7764c77b55a02afff3cbfc7c8e05b1070..f52d3d4df0e19d5c7d8d6b50ab47851b9e8c9983 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 4a163e31cfa9ed67e1c3ad63f7ae9622601c2b41..c47f57c669e2851f4a778fe36ba0dedef1f7b002 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 21ec7ed2b487e07669e3c53a0c55d59e2447eee5..848be66ddcbf1bb94341f320b8bfdd74ba22b28a 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 d640ad579824d1102bc11c775d6b061f7d0742cb..550f5d4b3a70831d30971c32e07c21b2c24df774 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 cedefbb66569bec58d1eced9924db32340189b8c..54509d02645672b3e11b71e2e606beae2335a362 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 34386c7fab63e925a8831e8dea31fb2ce2fa7226..e0f2ffef113bc241ce4e6a5db22278125c72717a 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 77fd60f4ef321ece1bff1a2a7ba356e0462317cf..5b3a6fb4d89b06d3996213a7469e716c7c3cec20 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 4a84c0c31c86bc6bd38431f859d941a973620c5e..f5c5188f020b69a52ba837b6a678470cad453bab 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 f217d948f647b3126f5e72f7059170aee00bc81b..cedf09aa295e88da00193b6c647471cebe6b8c73 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 7fd84aa6b04f77863b7849d5c8dc3efd068b20e8..fb6d3d29a4144a9a9d81b8e060449f350b64acd3 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 e163312d1a99349d7caaffab11aa205aec63cbff..599562036deaa264de7e5e2511c5bbf173213e1d 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 7ad2e1f273d682a750c84ad8c66efc2adee08244..7726704e1f9a540d0ccfadc89739295e161d2c68 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 0dc81826bc6fb342c08bbbd05610975b4a5f2d43..d8370043dba2b9037f412dadeae76983ac8163a3 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 b2a21ba193883273e2cac57e25bbf32fb992ed23..3cd569478ed299f847733f4803885ec4575b8172 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 11a8dc833f3c4f505da26a2c6cc9bc54c9af7762..cc174ecb7faad70e2a4842fceb93e44b71ea321b 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 6bf897c572bd1b4d65974d1d1fbd044472d3a778..78e850f0642176f234256a97811e31aa7f547ea2 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 cf445c463abd2a4b94b3521891ab3fe335374b04..2153d16fba723507a58ce698507cfd4459ceb377 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 e6f85c53baa1e009e0867004b0923de2e7604699..c834b913de5f1402f2847281c294be56e9a526d4 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 2b83efcc838a5cbf298b6a8a86c660aac926a9b8..793c613565575254f7782a729eaf2ae56fb9171f 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 bd161115db0d8c0370aba7738a89c645b0bc2fac..607f8e85cc2dbc4c4dc35eb9d2c21b5ee4da8882 100644 (file)
@@ -1,5 +1,4 @@
 @dbaron
 @plinss
-@rune-opera
 @lilles
 @therealglazou
index ea424934758f7cf165a69afbf124ee8e7c12e688..5b9af1f72517a17d878d1d5e97754abeb67951a0 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 c8a4506e11c5153eeee6953d6a833e1142383573..fa358d6d3d3d2741d837e0350cb2fa49bb46b2a8 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 d366bc471d2f61911573e094be5056424af6dc13..e6930178e3634f3571b828f50af67508f004b960 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 3f4956cb3ad4dadc9937af32989a95da9f5a4e4e..fb1fde86efff626fadff20ceaa01938ce6bc52c4 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 b7a45c3ef1c059908c9658a068d1086fb77e7db6..bca4649452b8df9eccc1b71b08427fe5d1d4d00d 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 ec86f945502493aa1a27e5d67f51454938aca21c..639e8356c2a8dbee6133ced55c658e1dc7575e59 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 f8b3a94c00ddfae0ef91ad06937c05226c02c04d..e446c507ca865a5ce87f1d8238aaf0dc277a355f 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 667dedc23f61cefd90ffc71bd08f906bffaa6255..ed2b2dbabccc3cb7eb2f8a1b6b7d4d1836364158 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 dc0dff85ed33266e7d7be3a4c894d13218c53dce..7d29b82ed77879a9a407643858547892afb014cc 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 c19c7a0fb824901b5cd4166e20056d6392036367..5009c8a4ec0760c63284160a39dbdfea8acc3b8c 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 60a24388e2f2caac5911d95022bcc59d3ed70299..72519dd38d994409bf138cfb86897a3b75ef1e92 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 64c14d4423151fd107c1ceb7d47b06169e27a0aa..9ac3f3b289582642e891a4f094aea6bd7c68f1da 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 57f475c9c5f1f489b7b6d33cd2eb208c6ccf113b..c6e0beaf75f4ee427aeaabbb4cfda98e174010e0 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 3ebc780e3277c2ad804e13a8258fab88e6797d84..2f26982c9658478701ef950389c03c01be20ab7d 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 e9c7bc73945b1512855fa99e0fffbf8ac1884c03..d429a8609790a5cdd49bc5e5be5bd078f667b07d 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 d6d7bdb37b745f757821e68bcf352f289bef6405..0d07afd7b94bf990e980ff343c2c8766bbebb48f 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 526b1db9f7781643b29ddff45107bc76e8ba2253..bce2ed498774cfa5db2a12a458ce72e98d3e697a 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 d61d0cf602748f664a08feef5c4b37e2b1fab174..7b7c0df0fe0293d70a2c7f94e98e15ddb2c803a9 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 7f99a4205f1e8777309f7b36d9a506f65a55a5f9..95d6204f0763582012a0b6e54f58327b6934f46e 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 9fe515d2a70d36b4437db8bb9d97b70c76ce370f..934bf2fde662f91b1ea688df6792a7b4b2dc9ff1 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 8870165f1af8f5504e498f9292daeb5fd125fd0a..857951e96234abec2c989ae3ed0128ec7767f33b 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 dd4ab84a52a58f72d3739d93aca46003eb2c25c0..58639cf17e0eccebe6ee64432dff77ec49111e72 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 b14076db967cd100a117c3f1ce6736854ce8fb18..09e4f29731a1d597172b64311c6400a189a4dd20 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 bc0feec3092bd651c30ba0322bc95b96cc6f1288..45af0890c4a82dfee2b74b908dea192b78f2cffe 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 277fbd4010225dd82cd5c77b3584724c3af98842..fb8d125d6fb3f2c9cae712123603228c603b46e2 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 11e1495188a5bf1a66f2cc1e98e4b5e4108a3b6b..b44f6cc105fcbcdd0141058af9523bfe9bcae9e4 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 4cfaa44aa3ac4b5c7dba6967c209d27b654c69d5..5c2a40034f124d368b5847fe5e0ccaa6bf334b66 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 a436dabe40201f8731a43c026c91bdcfb46b5217..0a3c298cb0ee276be60378271424d37bdcb4ca47 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 2297c2120805089533828f814072205849528d94..f2cfc9f6e4d97d4811cff27d5f2838022f9578c9 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 115df7adf4ff7cc6f3014e79deb244922f95e5a9..7341b77e86b7ed7befa0398d3f68f51624dc1bce 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 f419ddf5d379b827cad65a5d28579b6206d2a847..4ba81d0d1d2be09feada240d6a57181e6d622679 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 d2ffec6dcc272e5f442f19262e6030da66b988cb..cf77313f5bc3096aa5862c6508a231eea582bd61 100644 (file)
@@ -31,10 +31,6 @@ const badRequestArgTests = [
     args: ["", { "mode": "no-cors", "method": "PUT" }],
     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 6c27fd15dcb48f7f949acc9ca196ba7809dbe218..2d14ef3fa4cd4290a9ab180d5889e15997c0d2e9 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 1d54728b7da601f24f3e913a9648dc8839ebdd1e..014f2fb2d58616696236973b5519cbf7d9eb6e3d 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 d1b3a119cc6c636958972f203e4b81f6d3eddab3..1d3da2cc465b85fe65ac7788ef34e8bbe75900be 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 608a129231a84599604196587050137d822926ce..f78f0ca894ae2b99e1f569222d869b1c867d9054 100644 (file)
@@ -37,7 +37,6 @@
         readonly attribute USVString url;
         [SameObject] readonly attribute Headers headers;
 
-        readonly attribute RequestType type;
         readonly attribute RequestDestination destination;
         readonly attribute USVString referrer;
         readonly attribute ReferrerPolicy referrerPolicy;
index 937495725c286a2b40a0415d134cab9b6f7b721b..a51f8f44535b94efecced1b7a593c61e91b97110 100644 (file)
@@ -8,7 +8,6 @@ PASS Request has text method
 PASS Check method attribute 
 PASS Check url attribute 
 PASS Check headers attribute 
-PASS Check type attribute 
 PASS Check destination attribute 
 PASS Check referrer attribute 
 PASS Check referrerPolicy attribute 
index cbe6cee999f31b3b60226cb992ca6c1170ae272c..98c24517e66af574c50daee989534debf85d3cc4 100644 (file)
@@ -22,7 +22,6 @@
       var attributes = ["method",
                         "url",
                         "headers",
-                        "type",
                         "destination",
                         "referrer",
                         "referrerPolicy",
             return;
             break;
 
-          case "type":
-            defaultValue = "";
-            newValue = "style";
-            break;
-
           case "destination":
             defaultValue = "";
             newValue = "worker";
index c7a0575257e65afab52f345763b2b92cc0aaad7c..ced8c612b72a2dbcc702c3c7f37a94eb94c9674f 100644 (file)
@@ -36,3 +36,5 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-init-003.sub.html
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-keepalive-quota.html
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-structure.html
+/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-type-attribute-historical.html
+/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/url-encoding.html
index 4cf4ad8e0c020767d2123b8aefc797ee6742eb18..d28f3a6abdbeee73f8e2ba8903502ea32217832f 100644 (file)
@@ -4,17 +4,17 @@ PASS Check Response's clone has the expected attribute values
 PASS Check orginal response's body after cloning 
 PASS Check cloned response's body 
 PASS Cannot clone a disturbed response 
-PASS Cloned responses should provide the same data 
+FAIL Cloned responses should provide the same data assert_array_equals: cloned responses should provide the same data value is object "[object ArrayBuffer]", expected array
 PASS Cancelling stream should not affect cloned one 
 PASS Check response clone use structureClone for teed ReadableStreams (Int8Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Int16Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Int32Arraychunk) 
-PASS Check response clone use structureClone for teed ReadableStreams (ArrayBufferchunk) 
+FAIL Check response 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 response clone use structureClone for teed ReadableStreams (Uint8Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Uint8ClampedArraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Uint16Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Uint32Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Float32Arraychunk) 
 PASS Check response clone use structureClone for teed ReadableStreams (Float64Arraychunk) 
-PASS Check response clone use structureClone for teed ReadableStreams (DataViewchunk) 
+FAIL Check response 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 97de405380fe9d8519db3efcb8019babe29469fc..eea9794955eebf332702a4251dde11681a8e1ea8 100644 (file)
@@ -7,4 +7,5 @@ PASS Check default value for statusText attribute
 PASS Check default value for body attribute 
 PASS Check status init values and associated getter 
 PASS Check statusText init values and associated getter 
+PASS Test that Response.headers has the [SameObject] extended attribute 
 
index 4a8a7bd80cceafabf2a6b29f3912edb9c5ad2853..cd89448bbbef388e69a2ef4b2aecf04bafb728f2 100644 (file)
               "Expect response.ok is " + isOkStatus(response.status));
           }
         }, "Check " + attributeName + " init values and associated getter");
+
+        test(function() {
+          const response1 = new Response("");
+          assert_equals(response1.headers, response1.headers);
+
+          const response2 = new Response("", {"headers": {"X-Foo": "bar"}});
+          assert_equals(response2.headers, response2.headers);
+          const headers = response2.headers;
+          response2.headers.set("X-Foo", "quux");
+          assert_equals(headers, response2.headers);
+          headers.set("X-Other-Header", "baz");
+          assert_equals(headers, response2.headers);
+        }, "Test that Response.headers has the [SameObject] extended attribute");
     </script>
   </body>
 </html>
index f8a4f81088b633844ed67695f228171aa7dd10be..305a9ab1eea14a37f2157bb4cd7ee491ffd40295 100644 (file)
@@ -30,4 +30,5 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-stream-disturbed-3.html
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-stream-disturbed-4.html
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-stream-disturbed-5.html
+/LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-stream-disturbed-6.html
 /LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-trailer.html
index ac81cb03165ab831a36abb59145ff7a2f5675fb9..4d4785a4123287a5ca08439a6230514de91df0e7 100644 (file)
Binary files a/LayoutTests/imported/w3c/web-platform-tests/fonts/Ahem.ttf and b/LayoutTests/imported/w3c/web-platform-tests/fonts/Ahem.ttf differ
index 8c778eee1b09e0fe68e3d5962839224e5f75759b..446c60e406cfd527611ff347fbb41a47adce19fb 100644 (file)
@@ -1,36 +1,32 @@
 High Resolution Time IDL tests
 
 
-PASS Window interface: attribute performance 
-PASS WorkerGlobalScope interface: existence and properties of interface object 
+PASS WindowOrWorkerGlobalScope interface: existence and properties of interface object 
 PASS Performance interface: existence and properties of interface object 
 PASS Performance interface object length 
 PASS Performance interface object name 
 PASS Performance interface: existence and properties of interface prototype object 
 PASS Performance interface: existence and properties of interface prototype object's "constructor" property 
 PASS Performance interface: operation now() 
+FAIL Performance interface: attribute timeOrigin assert_true: The prototype object must have a property "timeOrigin" expected true got false
 FAIL Performance interface: operation toJSON() assert_own_property: interface prototype object missing non-static operation expected property "toJSON" missing
-PASS Performance must be primary interface of window.performance 
-PASS Stringification of window.performance 
-PASS Performance interface: window.performance must inherit property "now()" with the proper type 
-FAIL Performance interface: window.performance must inherit property "toJSON()" with the proper type assert_inherits: property "toJSON" not found in prototype chain
+PASS Performance must be primary interface of [object Performance] 
+PASS Stringification of [object Performance] 
+PASS Performance interface: [object Performance] must inherit property "now()" with the proper type 
+FAIL Performance interface: [object Performance] must inherit property "timeOrigin" with the proper type assert_inherits: property "timeOrigin" not found in prototype chain
+FAIL Performance interface: [object Performance] must inherit property "toJSON()" with the proper type assert_inherits: property "toJSON" not found in prototype chain
 FAIL Test default toJSON operation of Performance memberHolderObject.toJSON is not a function. (In 'memberHolderObject.toJSON()', 'memberHolderObject.toJSON' is undefined)
 typedef double DOMHighResTimeStamp;
 
 [Exposed=(Window,Worker)]
 interface Performance : EventTarget {
     DOMHighResTimeStamp now();
-    [Default] object toJSON();
+    readonly attribute DOMHighResTimeStamp timeOrigin;
+    [Default] object              toJSON();
 };
 
-[NoInterfaceObject,
- Exposed=(Window,Worker)]
-interface GlobalPerformance {
+partial interface WindowOrWorkerGlobalScope {
     [Replaceable]
     readonly attribute Performance performance;
 };
 
-Window implements GlobalPerformance;
-
-WorkerGlobalScope implements GlobalPerformance;
-
index 30b6c268d0ac26e8fca51d74d264f5c2cafe36e3..d0c648c1bb79eb696528f2e1ef041e931786aac5 100644 (file)
 <div id="log"></div>
 
 <pre id='untested_idl' style='display:none'>
-[PrimaryGlobal]
-interface Window {
-};
-
-[Exposed=Worker]
-interface WorkerGlobalScope {
+[Exposed=Windows,Worker]
+interface WindowOrWorkerGlobalScope {
 };
 
 [Exposed=(Window,Worker)]
 interface EventTarget {
 };
+
+[Exposed=Window]
+interface PerformanceTiming {
+};
+
+[Exposed=Window]
+interface PerformanceNavigation {
+};
+
+// from nav-timing
+partial interface Performance {
+    [SameObject]
+    readonly attribute PerformanceTiming timing;
+    [SameObject]
+    readonly attribute PerformanceNavigation navigation;
+    [Default] object              toJSON();
+};
 </pre>
 
 <pre id='idl'>
@@ -34,19 +47,14 @@ typedef double DOMHighResTimeStamp;
 [Exposed=(Window,Worker)]
 interface Performance : EventTarget {
     DOMHighResTimeStamp now();
-    [Default] object toJSON();
+    readonly attribute DOMHighResTimeStamp timeOrigin;
+    [Default] object              toJSON();
 };
 
-[NoInterfaceObject,
- Exposed=(Window,Worker)]
-interface GlobalPerformance {
+partial interface WindowOrWorkerGlobalScope {
     [Replaceable]
     readonly attribute Performance performance;
 };
-
-Window implements GlobalPerformance;
-
-WorkerGlobalScope implements GlobalPerformance;
 </pre>
 
 <script>
@@ -57,7 +65,7 @@ WorkerGlobalScope implements GlobalPerformance;
   idl_array.add_untested_idls(document.getElementById("untested_idl").textContent);
   idl_array.add_idls(document.getElementById("idl").textContent);
 
-  idl_array.add_objects({Performance: ["window.performance"]});
+  idl_array.add_objects({Performance: [window.performance]});
 
   idl_array.test();
 })();
index 11f1716c2edca77684e436967abdfa97b99942ae..53421840526c4a03863c293395e301236e8d13df 100644 (file)
@@ -4,4 +4,18 @@ This directory contains tests for [HTML](https://html.spec.whatwg.org/multipage/
 
 Sub-directory names should be based on the URL of the corresponding part of the
 multipage-version specification. For example, The URL of
-"8.3 Base64 utility methods" is [https://html.spec.whatwg.org/multipage/webappapis.html#atob](https://html.spec.whatwg.org/multipage/webappapis.html#atob). So the directory in WPT is [webappsapis/atob/](webappsapis/atob).
+"8.3 Base64 utility methods" is [https://html.spec.whatwg.org/multipage/webappapis.html#atob](https://html.spec.whatwg.org/multipage/webappapis.html#atob). So the directory in WPT is [webappapis/atob/](/html/webappapis/atob).
+
+For historical reasons, parts of HTML have their own directories:
+
+* [/2dcontext](/2dcontext)
+* [/custom-elements](/custom-elements)
+* [/eventsource](/eventsource)
+* [/imagebitmap-renderingcontext](/imagebitmap-renderingconte