aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/wpt/metadata/MANIFEST.json1362
-rw-r--r--tests/wpt/metadata/css/CSS2/floats/new-fc-beside-adjoining-float.html.ini2
-rw-r--r--tests/wpt/metadata/css/CSS2/floats/new-fc-separates-from-float.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-backgrounds/background-size-025.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-flexbox/percentage-size-subitems-001.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-fonts/font-display/font-display-preload.html.ini2
-rw-r--r--tests/wpt/metadata/css/css-fonts/variations/at-font-face-font-matching.html.ini3
-rw-r--r--tests/wpt/metadata/css/css-fonts/variations/font-parse-numeric-stretch-style-weight.html.ini1
-rw-r--r--tests/wpt/metadata/css/css-fonts/variations/font-stretch.html.ini1
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/gradient-position-invalid.html.ini25
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/image-orientation-invalid.html.ini28
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/image-orientation-valid.html.ini4
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/image-rendering-valid.html.ini7
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/image-resolution-invalid.html.ini16
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/object-fit-invalid.html.ini16
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/object-position-invalid.html.ini37
-rw-r--r--tests/wpt/metadata/css/css-images/parsing/object-position-valid.html.ini22
-rw-r--r--tests/wpt/metadata/css/css-text/astral-bidi/adlam-anti-ref.html.ini3
-rw-r--r--tests/wpt/metadata/css/css-text/astral-bidi/cypriot-anti-ref.html.ini3
-rw-r--r--tests/wpt/metadata/css/cssom-view/scroll-behavior-smooth.html.ini6
-rw-r--r--tests/wpt/metadata/dom/nodes/Document-constructor.html.ini5
-rw-r--r--tests/wpt/metadata/fetch/api/headers/headers-idl.html.ini5
-rw-r--r--tests/wpt/metadata/fetch/api/idl.any.js.ini19
-rw-r--r--tests/wpt/metadata/fetch/api/request/request-idl.html.ini32
-rw-r--r--tests/wpt/metadata/fetch/api/request/request-reset-attributes.https.html.ini4
-rw-r--r--tests/wpt/metadata/fetch/api/response/response-idl.html.ini44
-rw-r--r--tests/wpt/metadata/html/dom/elements/global-attributes/dir_auto-N-EN.html.ini2
-rw-r--r--tests/wpt/metadata/html/dom/self-origin.sub.html.ini3
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini40
-rw-r--r--tests/wpt/metadata/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini7
-rw-r--r--tests/wpt/metadata/xhr/abort-during-open.any.js.ini9
-rw-r--r--tests/wpt/metadata/xhr/abort-during-open.htm.ini5
-rw-r--r--tests/wpt/metadata/xhr/abort-during-open.worker.js.ini5
-rw-r--r--tests/wpt/web-platform-tests/.taskcluster.yml400
-rw-r--r--tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html23
-rw-r--r--tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html.headers1
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/cookieStore_delete_basic.tentative.window.js10
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.html8
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.https.html8
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.html8
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.https.html8
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/httponly_cookies.window.js47
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/cookie-test-helpers.js66
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/delete_cookies.js44
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/document_cookie.js128
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/get_set_get_all.js74
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/http_cookie_and_set_cookie_headers.js165
-rw-r--r--tests/wpt/web-platform-tests/cookie-store/resources/ordering.js30
-rw-r--r--tests/wpt/web-platform-tests/css/.gitignore1
-rw-r--r--tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-beside-adjoining-float.html16
-rw-r--r--tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-separates-from-float.html16
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/background-rounded-image-clip.html32
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-rounded-image-clip.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/percentage-size-subitems-001.html93
-rw-r--r--tests/wpt/web-platform-tests/css/css-flexbox/reference/percentage-size-subitems-001-ref.html92
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload-ref.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload.html51
-rw-r--r--tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display.html1
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001-ref.html93
-rw-r--r--tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html91
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-invalid.html28
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-valid.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-invalid.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-valid.html21
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-invalid.html19
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-valid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-invalid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-valid.html34
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-invalid.html22
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-valid.html26
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/object-position-invalid.html34
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/object-position-valid.html38
-rw-r--r--tests/wpt/web-platform-tests/css/css-images/parsing/resources/parsing-testcommon.js39
-rw-r--r--tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent-ref.html12
-rw-r--r--tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent.html17
-rw-r--r--tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport-ref.html7
-rw-r--r--tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport.html15
-rw-r--r--tests/wpt/web-platform-tests/css/css-syntax/declarations-trim-whitespace.html54
-rw-r--r--tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html36
-rw-r--r--tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html37
-rw-r--r--tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html40
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html39
-rw-r--r--tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html46
-rw-r--r--tests/wpt/web-platform-tests/css/cssom-view/scroll-behavior-smooth.html80
-rw-r--r--tests/wpt/web-platform-tests/dom/nodes/Document-constructor.html4
-rw-r--r--tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html (renamed from tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html)0
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/headers/headers-idl.html36
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/idl.any.js18
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/destination/fetch-destination.https.html14
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/request-idl.html88
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/request-reset-attributes.https.html36
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/request-structure.html5
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/resources/hello.txt1
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/request/resources/request-reset-attributes-worker.js19
-rw-r--r--tests/wpt/web-platform-tests/fetch/api/response/response-idl.html68
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/history/the-history-interface/history_pushstate_url.html24
-rw-r--r--tests/wpt/web-platform-tests/html/browsers/offline/browser-state/navigator_online_event-manual.https.html14
-rw-r--r--tests/wpt/web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js22
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html32
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/OWNERS4
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/browsers/firefox/prefs.html7
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini2
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini2
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_and_fail.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_cycle_fail.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_match_fail.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_mismatch_fail.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_ref_timeout.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_timeout.html.ini)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/green-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green-ref.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/green.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/red.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/red.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest.https.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest.https.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail_0-ref.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_0-ref.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_1-ref.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail_0-ref.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match_fail.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match_fail.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch_fail.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_or_0.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_or_0.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-ref.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout-ref.html)1
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_timeout.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_timeout.html)0
-rw-r--r--tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_0.html (renamed from tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_wait_0.html)4
-rw-r--r--tests/wpt/web-platform-tests/interfaces/fetch.idl97
-rw-r--r--tests/wpt/web-platform-tests/interfaces/geometry.idl1
-rw-r--r--tests/wpt/web-platform-tests/lint.whitelist4
-rw-r--r--tests/wpt/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html12
-rw-r--r--tests/wpt/web-platform-tests/payment-request/PaymentCurrencyAmount/currencySystem-member.https.html39
-rw-r--r--tests/wpt/web-platform-tests/resources/idlharness.js5
-rw-r--r--tests/wpt/web-platform-tests/resources/test/conftest.py9
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/add_cleanup.html15
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_count.html4
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err.html9
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err_multi.html9
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/api-tests-1.html37
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/api-tests-2.html9
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/api-tests-3.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/force_timeout.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/generate-callback.html42
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_immutable_prototype.html123
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_primary_interface_of.html27
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html13
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/iframe-callback.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-errors.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-tests.html27
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/iframe-msg.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/order.html5
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/promise-async.html24
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/promise.html14
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/single-page-test-fail.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-assertions.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-body.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/single-page-test-pass.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-handle.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-ignore.html6
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/worker-dedicated.html27
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/worker-service.html24
-rw-r--r--tests/wpt/web-platform-tests/resources/test/tests/worker-shared.html11
-rw-r--r--tests/wpt/web-platform-tests/server-timing/navigation_timing_idl.html14
-rw-r--r--tests/wpt/web-platform-tests/server-timing/resource_timing_idl.html14
-rw-r--r--tests/wpt/web-platform-tests/server-timing/server_timing_header-parsing.html1
-rw-r--r--tests/wpt/web-platform-tests/service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js22
-rw-r--r--tests/wpt/web-platform-tests/service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html36
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html31
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html8
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event.https.html141
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js9
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/resources/install-worker.html22
-rw-r--r--tests/wpt/web-platform-tests/service-workers/service-worker/update-result.https.html23
-rwxr-xr-xtests/wpt/web-platform-tests/tools/ci/ci_taskcluster.sh5
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/tag_master.py39
-rw-r--r--tests/wpt/web-platform-tests/tools/ci/taskgraph.py6
-rwxr-xr-xtests/wpt/web-platform-tests/tools/docker/start.sh2
-rw-r--r--tests/wpt/web-platform-tests/tools/manifest/manifest.py7
-rw-r--r--tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py19
-rw-r--r--tests/wpt/web-platform-tests/tools/webdriver/webdriver/client.py20
-rw-r--r--tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt4
-rw-r--r--tests/wpt/web-platform-tests/tools/wptserve/wptserve/config.py9
-rw-r--r--tests/wpt/web-platform-tests/tools/wptserve/wptserve/request.py20
-rw-r--r--tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html12
-rw-r--r--tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html234
-rw-r--r--tests/wpt/web-platform-tests/webdriver/tests/cookies/get_named_cookie.py84
-rw-r--r--tests/wpt/web-platform-tests/webdriver/tests/element_click/bubbling.py8
-rw-r--r--tests/wpt/web-platform-tests/webmessaging/message-channels/close.html6
-rw-r--r--tests/wpt/web-platform-tests/websockets/Close-1000-reason.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Close-1000.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.any.js20
-rw-r--r--tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.any.js32
-rw-r--r--tests/wpt/web-platform-tests/websockets/Close-undefined.any.js14
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.any.js12
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.any.js12
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-blocked-port.any.js158
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-invalid-urls.any.js42
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.any.js12
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-on-worker-shutdown.any.js4
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-valid-url.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-1000.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-1005.any.js16
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.any.js14
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.any.js28
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.any.js20
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.any.js32
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.any.js14
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.any.js16
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.any.js14
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.any.js54
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-data.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-null.any.js48
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-0byte-data.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-65K-data.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-before-open.any.js10
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.any.js50
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.any.js64
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-binary-blob.any.js54
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-data.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-null.any.js48
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/Send-unicode-data.any.js44
-rw-r--r--tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.any.js28
-rw-r--r--tests/wpt/web-platform-tests/websockets/close-invalid.any.js30
-rw-r--r--tests/wpt/web-platform-tests/websockets/constructor.any.js2
-rw-r--r--tests/wpt/web-platform-tests/websockets/eventhandlers.any.js2
-rw-r--r--tests/wpt/web-platform-tests/xhr/abort-during-open.any.js (renamed from tests/wpt/web-platform-tests/xhr/abort-during-open.js)2
-rw-r--r--tests/wpt/web-platform-tests/xhr/abort-during-open.htm14
-rw-r--r--tests/wpt/web-platform-tests/xhr/abort-during-open.worker.js3
-rw-r--r--tests/wpt/web-platform-tests/xhr/send-send.any.js (renamed from tests/wpt/web-platform-tests/xhr/send-send.js)2
-rw-r--r--tests/wpt/web-platform-tests/xhr/send-send.htm13
-rw-r--r--tests/wpt/web-platform-tests/xhr/send-send.worker.js3
274 files changed, 5754 insertions, 2845 deletions
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index f620be9e011..c9e1fa74b2e 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -15601,6 +15601,18 @@
{}
]
],
+ "service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html": [
+ [
+ "/service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html",
+ {}
+ ]
+ ],
+ "service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html": [
+ [
+ "/service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html",
+ {}
+ ]
+ ],
"service-workers/service-worker/fetch-event-within-sw-manual.https.html": [
[
"/service-workers/service-worker/fetch-event-within-sw-manual.https.html",
@@ -49575,6 +49587,30 @@
{}
]
],
+ "css/CSS2/floats/new-fc-beside-adjoining-float.html": [
+ [
+ "/css/CSS2/floats/new-fc-beside-adjoining-float.html",
+ [
+ [
+ "/css/reference/ref-filled-green-200px-square.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/CSS2/floats/new-fc-separates-from-float.html": [
+ [
+ "/css/CSS2/floats/new-fc-separates-from-float.html",
+ [
+ [
+ "/css/reference/ref-filled-green-200px-square.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/CSS2/floats/zero-width-floats.html": [
[
"/css/CSS2/floats/zero-width-floats.html",
@@ -100555,18 +100591,6 @@
{}
]
],
- "css/css-backgrounds/background-rounded-image-clip.html": [
- [
- "/css/css-backgrounds/background-rounded-image-clip.html",
- [
- [
- "/css/css-backgrounds/reference/background-rounded-image-clip.html",
- "=="
- ]
- ],
- {}
- ]
- ],
"css/css-backgrounds/background-size-002.html": [
[
"/css/css-backgrounds/background-size-002.html",
@@ -113383,6 +113407,18 @@
{}
]
],
+ "css/css-flexbox/percentage-size-subitems-001.html": [
+ [
+ "/css/css-flexbox/percentage-size-subitems-001.html",
+ [
+ [
+ "/css/css-flexbox/reference/percentage-size-subitems-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-flexbox/percentage-widths-001.html": [
[
"/css/css-flexbox/percentage-widths-001.html",
@@ -113787,6 +113823,18 @@
{}
]
],
+ "css/css-fonts/font-display/font-display-preload.html": [
+ [
+ "/css/css-fonts/font-display/font-display-preload.html",
+ [
+ [
+ "/css/css-fonts/font-display/font-display-preload-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-fonts/font-display/font-display.html": [
[
"/css/css-fonts/font-display/font-display.html",
@@ -117531,6 +117579,18 @@
{}
]
],
+ "css/css-grid/grid-items/percentage-size-subitems-001.html": [
+ [
+ "/css/css-grid/grid-items/percentage-size-subitems-001.html",
+ [
+ [
+ "/css/css-grid/grid-items/percentage-size-subitems-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-grid/grid-model/display-grid.html": [
[
"/css/css-grid/grid-model/display-grid.html",
@@ -123255,6 +123315,30 @@
{}
]
],
+ "css/css-position/hypothetical-box-scroll-parent.html": [
+ [
+ "/css/css-position/hypothetical-box-scroll-parent.html",
+ [
+ [
+ "/css/css-position/hypothetical-box-scroll-parent-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-position/hypothetical-box-scroll-viewport.html": [
+ [
+ "/css/css-position/hypothetical-box-scroll-viewport.html",
+ [
+ [
+ "/css/css-position/hypothetical-box-scroll-viewport-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-position/position-relative-table-tbody-left-absolute-child.html": [
[
"/css/css-position/position-relative-table-tbody-left-absolute-child.html",
@@ -128131,6 +128215,30 @@
{}
]
],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html": [
+ [
+ "/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html",
+ [
+ [
+ "/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html": [
+ [
+ "/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html",
+ [
+ [
+ "/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-tables/height-distribution/td-different-subpixel-padding-in-same-row-vertical-rl.html": [
[
"/css/css-tables/height-distribution/td-different-subpixel-padding-in-same-row-vertical-rl.html",
@@ -160343,6 +160451,18 @@
{}
]
],
+ "css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html": [
+ [
+ "/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html",
+ [
+ [
+ "/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-writing-modes/svg-aliasing-001.html": [
[
"/css/css-writing-modes/svg-aliasing-001.html",
@@ -182143,6 +182263,142 @@
{}
]
],
+ "infrastructure/reftest/green-ref.html": [
+ [
+ "/infrastructure/reftest/green-ref.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest.https.html": [
+ [
+ "/infrastructure/reftest/reftest.https.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_and_fail.html": [
+ [
+ "/infrastructure/reftest/reftest_and_fail.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_and_fail_0-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_match.html": [
+ [
+ "/infrastructure/reftest/reftest_match.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_match_fail.html": [
+ [
+ "/infrastructure/reftest/reftest_match_fail.html",
+ [
+ [
+ "/infrastructure/reftest/red.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_mismatch.html": [
+ [
+ "/infrastructure/reftest/reftest_mismatch.html",
+ [
+ [
+ "/infrastructure/reftest/red.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_mismatch_fail.html": [
+ [
+ "/infrastructure/reftest/reftest_mismatch_fail.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_or_0.html": [
+ [
+ "/infrastructure/reftest/reftest_or_0.html",
+ [
+ [
+ "/infrastructure/reftest/red.html",
+ "=="
+ ],
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_ref_timeout.html": [
+ [
+ "/infrastructure/reftest/reftest_ref_timeout.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_ref_timeout-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_timeout.html": [
+ [
+ "/infrastructure/reftest/reftest_timeout.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_wait_0.html": [
+ [
+ "/infrastructure/reftest/reftest_wait_0.html",
+ [
+ [
+ "/infrastructure/reftest/green.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"mathml/presentation-markup/spaces/space-2.html": [
[
"/mathml/presentation-markup/spaces/space-2.html",
@@ -186812,6 +187068,78 @@
],
{}
]
+ ],
+ "infrastructure/reftest/reftest_and_fail_0-ref.html": [
+ [
+ "/infrastructure/reftest/reftest_and_fail_0-ref.html",
+ [
+ [
+ "/infrastructure/reftest/red.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_cycle.html": [
+ [
+ "/infrastructure/reftest/reftest_cycle.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_cycle_0-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_cycle_0-ref.html": [
+ [
+ "/infrastructure/reftest/reftest_cycle_0-ref.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_cycle_1-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_cycle_1-ref.html": [
+ [
+ "/infrastructure/reftest/reftest_cycle_1-ref.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_cycle.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_cycle_fail.html": [
+ [
+ "/infrastructure/reftest/reftest_cycle_fail.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_cycle_fail_0-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_cycle_fail_0-ref.html": [
+ [
+ "/infrastructure/reftest/reftest_cycle_fail_0-ref.html",
+ [
+ [
+ "/infrastructure/reftest/reftest_cycle_fail.html",
+ "!="
+ ]
+ ],
+ {}
+ ]
]
},
"stub": {
@@ -192037,6 +192365,11 @@
{}
]
],
+ "client-hints/accept_ch_malformed_header.https.html.headers": [
+ [
+ {}
+ ]
+ ],
"client-hints/echo_client_hints_received.py": [
[
{}
@@ -215287,21 +215620,11 @@
{}
]
],
- "cookie-store/resources/delete_cookies.js": [
- [
- {}
- ]
- ],
"cookie-store/resources/document_cookie.js": [
[
{}
]
],
- "cookie-store/resources/get_set_get_all.js": [
- [
- {}
- ]
- ],
"cookie-store/resources/http_cookie_and_set_cookie_headers.js": [
[
{}
@@ -238607,11 +238930,6 @@
{}
]
],
- "css/css-backgrounds/reference/background-rounded-image-clip.html": [
- [
- {}
- ]
- ],
"css/css-backgrounds/reference/background-size-002-ref.html": [
[
{}
@@ -240957,6 +241275,11 @@
{}
]
],
+ "css/css-flexbox/reference/percentage-size-subitems-001-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-flexbox/reference/ttwf-reftest-flex-align-content-center-ref.html": [
[
{}
@@ -241337,6 +241660,11 @@
{}
]
],
+ "css/css-fonts/font-display/font-display-preload-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-fonts/font-display/font-display-ref.html": [
[
{}
@@ -249872,6 +250200,11 @@
{}
]
],
+ "css/css-grid/grid-items/percentage-size-subitems-001-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-grid/grid-items/ref-filled-green-100px-square-image.html": [
[
{}
@@ -250062,6 +250395,11 @@
{}
]
],
+ "css/css-images/parsing/resources/parsing-testcommon.js": [
+ [
+ {}
+ ]
+ ],
"css/css-images/support/1x1-green.gif": [
[
{}
@@ -251817,6 +252155,16 @@
{}
]
],
+ "css/css-position/hypothetical-box-scroll-parent-ref.html": [
+ [
+ {}
+ ]
+ ],
+ "css/css-position/hypothetical-box-scroll-viewport-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-position/position-relative-table-left-ref.html": [
[
{}
@@ -253987,6 +254335,16 @@
{}
]
],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html": [
+ [
+ {}
+ ]
+ ],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-tables/height-distribution/td-different-subpixel-padding-in-same-row-ref.html": [
[
{}
@@ -262577,6 +262935,11 @@
{}
]
],
+ "css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-writing-modes/support/100x100-lime.png": [
[
{}
@@ -274017,6 +274380,16 @@
{}
]
],
+ "fetch/api/request/resources/hello.txt": [
+ [
+ {}
+ ]
+ ],
+ "fetch/api/request/resources/request-reset-attributes-worker.js": [
+ [
+ {}
+ ]
+ ],
"fetch/api/resources/authentication.py": [
[
{}
@@ -287567,6 +287940,11 @@
{}
]
],
+ "infrastructure/OWNERS": [
+ [
+ {}
+ ]
+ ],
"infrastructure/README.md": [
[
{}
@@ -287617,16 +287995,71 @@
{}
]
],
+ "infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini": [
+ [
+ {}
+ ]
+ ],
"infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini": [
[
{}
]
],
+ "infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini": [
+ [
+ {}
+ ]
+ ],
"infrastructure/reftest-wait-ref.html": [
[
{}
]
],
+ "infrastructure/reftest/green.html": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/reftest/red.html": [
+ [
+ {}
+ ]
+ ],
+ "infrastructure/reftest/reftest_ref_timeout-ref.html": [
+ [
+ {}
+ ]
+ ],
"infrastructure/webdriver/tests/conftest.py": [
[
{}
@@ -287757,6 +288190,11 @@
{}
]
],
+ "interfaces/fetch.idl": [
+ [
+ {}
+ ]
+ ],
"interfaces/filter-effects.idl": [
[
{}
@@ -293887,6 +294325,11 @@
{}
]
],
+ "service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js": [
+ [
+ {}
+ ]
+ ],
"service-workers/cache-storage/resources/common-worker.js": [
[
{}
@@ -294837,6 +295280,11 @@
{}
]
],
+ "service-workers/service-worker/resources/install-worker.html": [
+ [
+ {}
+ ]
+ ],
"service-workers/service-worker/resources/interfaces-idls.js": [
[
{}
@@ -300872,11 +301320,6 @@
{}
]
],
- "xhr/abort-during-open.js": [
- [
- {}
- ]
- ],
"xhr/folder.txt": [
[
{}
@@ -301367,11 +301810,6 @@
{}
]
],
- "xhr/send-send.js": [
- [
- {}
- ]
- ],
"xhr/xmlhttprequest-sync-block-defer-scripts-subframe.html": [
[
{}
@@ -310942,6 +311380,12 @@
{}
]
],
+ "client-hints/accept_ch_malformed_header.https.html": [
+ [
+ "/client-hints/accept_ch_malformed_header.https.html",
+ {}
+ ]
+ ],
"clipboard-apis/async-interfaces.https.html": [
[
"/clipboard-apis/async-interfaces.https.html",
@@ -313390,6 +313834,12 @@
{}
]
],
+ "cookie-store/cookieStore_delete_basic.tentative.window.js": [
+ [
+ "/cookie-store/cookieStore_delete_basic.tentative.window.html",
+ {}
+ ]
+ ],
"cookie-store/cookieStore_event_arguments.tenative.window.js": [
[
"/cookie-store/cookieStore_event_arguments.tenative.window.html",
@@ -313486,18 +313936,6 @@
{}
]
],
- "cookie-store/delete_cookies.tentative.html": [
- [
- "/cookie-store/delete_cookies.tentative.html",
- {}
- ]
- ],
- "cookie-store/delete_cookies.tentative.https.html": [
- [
- "/cookie-store/delete_cookies.tentative.https.html",
- {}
- ]
- ],
"cookie-store/document_cookie.tentative.html": [
[
"/cookie-store/document_cookie.tentative.html",
@@ -313516,18 +313954,6 @@
{}
]
],
- "cookie-store/get_set_get_all.tentative.html": [
- [
- "/cookie-store/get_set_get_all.tentative.html",
- {}
- ]
- ],
- "cookie-store/get_set_get_all.tentative.https.html": [
- [
- "/cookie-store/get_set_get_all.tentative.https.html",
- {}
- ]
- ],
"cookie-store/http_cookie_and_set_cookie_headers.tentative.html": [
[
"/cookie-store/http_cookie_and_set_cookie_headers.tentative.html",
@@ -313540,6 +313966,12 @@
{}
]
],
+ "cookie-store/httponly_cookies.window.js": [
+ [
+ "/cookie-store/httponly_cookies.window.html",
+ {}
+ ]
+ ],
"cookie-store/idlharness.tentative.html": [
[
"/cookie-store/idlharness.tentative.html",
@@ -316744,6 +317176,78 @@
{}
]
],
+ "css/css-images/parsing/gradient-position-invalid.html": [
+ [
+ "/css/css-images/parsing/gradient-position-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/gradient-position-valid.html": [
+ [
+ "/css/css-images/parsing/gradient-position-valid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-orientation-invalid.html": [
+ [
+ "/css/css-images/parsing/image-orientation-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-orientation-valid.html": [
+ [
+ "/css/css-images/parsing/image-orientation-valid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-rendering-invalid.html": [
+ [
+ "/css/css-images/parsing/image-rendering-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-rendering-valid.html": [
+ [
+ "/css/css-images/parsing/image-rendering-valid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-resolution-invalid.html": [
+ [
+ "/css/css-images/parsing/image-resolution-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/image-resolution-valid.html": [
+ [
+ "/css/css-images/parsing/image-resolution-valid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/object-fit-invalid.html": [
+ [
+ "/css/css-images/parsing/object-fit-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/object-fit-valid.html": [
+ [
+ "/css/css-images/parsing/object-fit-valid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/object-position-invalid.html": [
+ [
+ "/css/css-images/parsing/object-position-invalid.html",
+ {}
+ ]
+ ],
+ "css/css-images/parsing/object-position-valid.html": [
+ [
+ "/css/css-images/parsing/object-position-valid.html",
+ {}
+ ]
+ ],
"css/css-layout-api/at-supports-rule.https.html": [
[
"/css/css-layout-api/at-supports-rule.https.html",
@@ -318040,6 +318544,12 @@
{}
]
],
+ "css/css-syntax/declarations-trim-whitespace.html": [
+ [
+ "/css/css-syntax/declarations-trim-whitespace.html",
+ {}
+ ]
+ ],
"css/css-syntax/ident-three-code-points.html": [
[
"/css/css-syntax/ident-three-code-points.html",
@@ -328454,9 +328964,9 @@
{}
]
],
- "feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html": [
+ "feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html": [
[
- "/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html",
+ "/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html",
{}
]
],
@@ -329088,12 +329598,6 @@
{}
]
],
- "fetch/api/headers/headers-idl.html": [
- [
- "/fetch/api/headers/headers-idl.html",
- {}
- ]
- ],
"fetch/api/headers/headers-normalize.html": [
[
"/fetch/api/headers/headers-normalize.html",
@@ -329122,6 +329626,24 @@
{}
]
],
+ "fetch/api/idl.any.js": [
+ [
+ "/fetch/api/idl.any.html",
+ {}
+ ],
+ [
+ "/fetch/api/idl.any.sharedworker.html",
+ {}
+ ],
+ [
+ "/fetch/api/idl.any.worker.html",
+ {}
+ ],
+ [
+ "/fetch/api/idl.https.any.serviceworker.html",
+ {}
+ ]
+ ],
"fetch/api/policies/csp-blocked-worker.html": [
[
"/fetch/api/policies/csp-blocked-worker.html",
@@ -329426,12 +329948,6 @@
{}
]
],
- "fetch/api/request/request-idl.html": [
- [
- "/fetch/api/request/request-idl.html",
- {}
- ]
- ],
"fetch/api/request/request-init-001.sub.html": [
[
"/fetch/api/request/request-init-001.sub.html",
@@ -329464,6 +329980,12 @@
{}
]
],
+ "fetch/api/request/request-reset-attributes.https.html": [
+ [
+ "/fetch/api/request/request-reset-attributes.https.html",
+ {}
+ ]
+ ],
"fetch/api/request/request-structure.html": [
[
"/fetch/api/request/request-structure.html",
@@ -329530,12 +330052,6 @@
{}
]
],
- "fetch/api/response/response-idl.html": [
- [
- "/fetch/api/response/response-idl.html",
- {}
- ]
- ],
"fetch/api/response/response-init-001.html": [
[
"/fetch/api/response/response-init-001.html",
@@ -330900,12 +331416,6 @@
{}
]
],
- "html/browsers/history/the-history-interface/history_pushstate_url.html": [
- [
- "/html/browsers/history/the-history-interface/history_pushstate_url.html",
- {}
- ]
- ],
"html/browsers/history/the-history-interface/history_replacestate.html": [
[
"/html/browsers/history/the-history-interface/history_replacestate.html",
@@ -332836,6 +333346,12 @@
{}
]
],
+ "html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js": [
+ [
+ "/html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.html",
+ {}
+ ]
+ ],
"html/dom/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext.window.js": [
[
"/html/dom/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext.window.html",
@@ -337262,6 +337778,12 @@
{}
]
],
+ "html/semantics/forms/form-submission-0/constructing-form-data-set.html": [
+ [
+ "/html/semantics/forms/form-submission-0/constructing-form-data-set.html",
+ {}
+ ]
+ ],
"html/semantics/forms/form-submission-0/form-data-set-usv.html": [
[
"/html/semantics/forms/form-submission-0/form-data-set-usv.html",
@@ -342588,6 +343110,12 @@
{}
]
],
+ "infrastructure/browsers/firefox/prefs.html": [
+ [
+ "/infrastructure/browsers/firefox/prefs.html",
+ {}
+ ]
+ ],
"infrastructure/expected-fail/failing-test.html": [
[
"/infrastructure/expected-fail/failing-test.html",
@@ -354668,12 +355196,6 @@
{}
]
],
- "payment-request/PaymentCurrencyAmount/currencySystem-member.https.html": [
- [
- "/payment-request/PaymentCurrencyAmount/currencySystem-member.https.html",
- {}
- ]
- ],
"payment-request/PaymentItem/type_member.https.html": [
[
"/payment-request/PaymentItem/type_member.https.html",
@@ -364120,6 +364642,18 @@
{}
]
],
+ "server-timing/navigation_timing_idl.html": [
+ [
+ "/server-timing/navigation_timing_idl.html",
+ {}
+ ]
+ ],
+ "server-timing/resource_timing_idl.html": [
+ [
+ "/server-timing/resource_timing_idl.html",
+ {}
+ ]
+ ],
"server-timing/server_timing_header-parsing.html": [
[
"/server-timing/server_timing_header-parsing.html",
@@ -364164,6 +364698,12 @@
}
]
],
+ "service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html": [
+ [
+ "/service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html",
+ {}
+ ]
+ ],
"service-workers/cache-storage/serviceworker/cache-keys.https.html": [
[
"/service-workers/cache-storage/serviceworker/cache-keys.https.html",
@@ -365440,6 +365980,12 @@
{}
]
],
+ "service-workers/service-worker/update-result.https.html": [
+ [
+ "/service-workers/service-worker/update-result.https.html",
+ {}
+ ]
+ ],
"service-workers/service-worker/update.https.html": [
[
"/service-workers/service-worker/update.https.html",
@@ -369174,6 +369720,12 @@
{}
]
],
+ "webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html": [
+ [
+ "/webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html",
+ {}
+ ]
+ ],
"webaudio/the-audio-api/the-audiobuffer-interface/idl-test.html": [
[
"/webaudio/the-audio-api/the-audiobuffer-interface/idl-test.html",
@@ -375320,15 +375872,13 @@
{}
]
],
- "xhr/abort-during-open.htm": [
+ "xhr/abort-during-open.any.js": [
[
- "/xhr/abort-during-open.htm",
+ "/xhr/abort-during-open.any.html",
{}
- ]
- ],
- "xhr/abort-during-open.worker.js": [
+ ],
[
- "/xhr/abort-during-open.worker.html",
+ "/xhr/abort-during-open.any.worker.html",
{}
]
],
@@ -376656,15 +377206,13 @@
{}
]
],
- "xhr/send-send.htm": [
+ "xhr/send-send.any.js": [
[
- "/xhr/send-send.htm",
+ "/xhr/send-send.any.html",
{}
- ]
- ],
- "xhr/send-send.worker.js": [
+ ],
[
- "/xhr/send-send.worker.html",
+ "/xhr/send-send.any.worker.html",
{}
]
],
@@ -396450,7 +396998,7 @@
"support"
],
"./.taskcluster.yml": [
- "60dd14af458ca42626ec3f489e243b402fa87e1f",
+ "55bc5218ac0aeecadb401ec84f037ad62aa48399",
"support"
],
"./.travis.yml": [
@@ -396482,7 +397030,7 @@
"support"
],
"./lint.whitelist": [
- "93f2328f5f3d43122505f201ddcb53c8d3d231bf",
+ "64e7ead5a7fa09f59be4dac4ccb5a1e7bf3cb4fc",
"support"
],
"./serve.py": [
@@ -407253,6 +407801,14 @@
"25cd8622db940411b0e8eb39921e6086916e4f36",
"support"
],
+ "client-hints/accept_ch_malformed_header.https.html": [
+ "d0c116ce2a1f8d775bb8d9b800eae05f0bee12f9",
+ "testharness"
+ ],
+ "client-hints/accept_ch_malformed_header.https.html.headers": [
+ "e57611a23dbd0763e1d318af602f05a2593b149e",
+ "support"
+ ],
"client-hints/echo_client_hints_received.py": [
"a6cf24dc7d02b044a27813f50737bb3aff4af8bf",
"support"
@@ -427537,6 +428093,10 @@
"f33ce9a975c759ce6da8a5caa371ca026dd537c4",
"testharness"
],
+ "cookie-store/cookieStore_delete_basic.tentative.window.js": [
+ "c0a5c01ffcdd3755eb3db3dc4a6ec398fd2aba37",
+ "testharness"
+ ],
"cookie-store/cookieStore_event_arguments.tenative.window.js": [
"a61074b6062928c29a83e0f7d456fdce9e3a3d47",
"testharness"
@@ -427601,14 +428161,6 @@
"4d53aaecbf9fea2865ca6492bc69b2ec3a47af79",
"testharness"
],
- "cookie-store/delete_cookies.tentative.html": [
- "9ad9854eb07172eab8103a4131baf0817a926e16",
- "testharness"
- ],
- "cookie-store/delete_cookies.tentative.https.html": [
- "69d05ab73a4692a08aa33ac20aa43cd1f6bb4e52",
- "testharness"
- ],
"cookie-store/document_cookie.tentative.html": [
"23916c5325b2c98875eac4ab7291622b44974daf",
"testharness"
@@ -427621,14 +428173,6 @@
"179f3ffe69715f9767ec2d2ef661c429fef52bc6",
"testharness"
],
- "cookie-store/get_set_get_all.tentative.html": [
- "89c72f73d511ab3510653baebb7c77aab6441f35",
- "testharness"
- ],
- "cookie-store/get_set_get_all.tentative.https.html": [
- "e2164c6e423724be2f91d47c0fa4931944ebff4f",
- "testharness"
- ],
"cookie-store/http_cookie_and_set_cookie_headers.tentative.html": [
"7fb04dc519bafed5f35493f65664b51e23131a1d",
"testharness"
@@ -427637,6 +428181,10 @@
"2ccfc03ad6fedb063e2cd3ff9726b8d482ab5cf0",
"testharness"
],
+ "cookie-store/httponly_cookies.window.js": [
+ "29d9c0bfaa9aa3e7115758731156dbeca9e736dc",
+ "testharness"
+ ],
"cookie-store/idlharness.tentative.html": [
"2a588a0b80a3cee80af52b9109770fe8ec17becd",
"testharness"
@@ -427678,27 +428226,19 @@
"testharness"
],
"cookie-store/resources/cookie-test-helpers.js": [
- "09f5e60fc4b96a0cdb51b69a1c622c3898ad5568",
+ "930479693e3f0d6a32d1297b5da04c36ffc1be0e",
"support"
],
"cookie-store/resources/cookie_helper.py": [
"4b95a4012e36cacceb6737f751e99634bd7326b9",
"support"
],
- "cookie-store/resources/delete_cookies.js": [
- "f698e4dcc887b7e6d231fa0e8aa2aba58c3bda73",
- "support"
- ],
"cookie-store/resources/document_cookie.js": [
- "b34ad56a2afd7f52c52dd0777b15eac2d77c4856",
- "support"
- ],
- "cookie-store/resources/get_set_get_all.js": [
- "235f22721a73a617d0b14068c8e639e93232526a",
+ "3524f8f7fcd21d44f3566d7e0b86f5097613db2d",
"support"
],
"cookie-store/resources/http_cookie_and_set_cookie_headers.js": [
- "12e0d0f889bbc298e47c2450b20df0fe86ffb566",
+ "4217debc054a7c2ce7cf87f8b09959f143c2099f",
"support"
],
"cookie-store/resources/no_name_and_no_value.js": [
@@ -427714,7 +428254,7 @@
"support"
],
"cookie-store/resources/ordering.js": [
- "822567b7eb113c809379dff5b62a2e24c9e9e171",
+ "583b20c4f4427710710e813e96fd7888c33a6a4e",
"support"
],
"cookie-store/serviceworker_cookieStore_arguments.js": [
@@ -429322,7 +429862,7 @@
"support"
],
"css/.gitignore": [
- "3f645ca3bf6a77220d48e3e07b6dc3e1653d883c",
+ "4f3d84d9b91809b0e1b0dd976931d4e46004be3a",
"support"
],
"css/.htaccess": [
@@ -447741,6 +448281,14 @@
"7287e2ce42cab8fda1f63e97c98b664f0b49e9fb",
"reftest"
],
+ "css/CSS2/floats/new-fc-beside-adjoining-float.html": [
+ "f378062671d9de538e54c7dba552c2deab57baa4",
+ "reftest"
+ ],
+ "css/CSS2/floats/new-fc-separates-from-float.html": [
+ "357427f1d71d7137c1ba4c386ae25acc7712928e",
+ "reftest"
+ ],
"css/CSS2/floats/zero-space-between-floats-001.html": [
"59cd6c4ac06a611570a3ec21bac7289345b184f7",
"testharness"
@@ -488889,10 +489437,6 @@
"36050bffda9382cfd978dc82a2f0244a535a6a46",
"support"
],
- "css/css-backgrounds/background-rounded-image-clip.html": [
- "1f3a33ee141f0bf0186875d376bc95414db8dd18",
- "reftest"
- ],
"css/css-backgrounds/background-size-001.html": [
"7cf677bf25a1fcac569bd0accd28dd66e6060a1b",
"testharness"
@@ -491269,10 +491813,6 @@
"1141a4c270ace715755b9b8352dab9baffca27c4",
"support"
],
- "css/css-backgrounds/reference/background-rounded-image-clip.html": [
- "0f98f9c82627977b11cde5f7c8ba536104cccdd2",
- "support"
- ],
"css/css-backgrounds/reference/background-size-002-ref.html": [
"33d8850f315bedabb7024031b091a14177034c1d",
"support"
@@ -497761,6 +498301,10 @@
"210a01e299109975376cef799599967709758481",
"reftest"
],
+ "css/css-flexbox/percentage-size-subitems-001.html": [
+ "61dd606542937054a7e405dbafe860e9dcb24775",
+ "reftest"
+ ],
"css/css-flexbox/percentage-widths-001-ref.html": [
"a139951dbeb1676b7add9a43d154595dc2e9859b",
"support"
@@ -497885,6 +498429,10 @@
"6373725b24ea14339e917284610a8e6f911570a6",
"support"
],
+ "css/css-flexbox/reference/percentage-size-subitems-001-ref.html": [
+ "eb39f554808c8ddff41ef6720df23a95010bf038",
+ "support"
+ ],
"css/css-flexbox/reference/ttwf-reftest-flex-align-content-center-ref.html": [
"497c4dcc25d582efbfd927caf10a561433a615a6",
"support"
@@ -498337,12 +498885,20 @@
"9fbf0c808f338c5d668554ab62f10cfe0ca93c91",
"testharness"
],
+ "css/css-fonts/font-display/font-display-preload-ref.html": [
+ "5e27d8a3211beccce4e8822e5f49267ed7a72ffa",
+ "support"
+ ],
+ "css/css-fonts/font-display/font-display-preload.html": [
+ "d0b61c7ad749c9db74dd3268800f13cb16137666",
+ "reftest"
+ ],
"css/css-fonts/font-display/font-display-ref.html": [
"26fcc2758c649ce922397cd1c4aa862bdbf1e6a0",
"support"
],
"css/css-fonts/font-display/font-display.html": [
- "46e883b5b615b2aa8ba7e8eff3eb197f64614df2",
+ "aed82b64751022903531c88bbd5934557ebece24",
"reftest"
],
"css/css-fonts/font-face-unicode-range-2.html": [
@@ -507593,6 +508149,14 @@
"ca7e5d89d56f33291e83647bef188205bf01ef84",
"reftest"
],
+ "css/css-grid/grid-items/percentage-size-subitems-001-ref.html": [
+ "5d6652ce5649d15ecdeac623fea3541f5271be2a",
+ "support"
+ ],
+ "css/css-grid/grid-items/percentage-size-subitems-001.html": [
+ "0321c064b4d450f243c8c99032e5d006ee47d1b4",
+ "reftest"
+ ],
"css/css-grid/grid-items/ref-filled-green-100px-square-image.html": [
"bf155407f749404c00c2cb31e4b6999044a781e2",
"support"
@@ -507993,6 +508557,58 @@
"9b528f92e662c345e3ab6f7ad5502b97dc77f79f",
"support"
],
+ "css/css-images/parsing/gradient-position-invalid.html": [
+ "5bae73095070f46bc8f38a58fb3808d473d60058",
+ "testharness"
+ ],
+ "css/css-images/parsing/gradient-position-valid.html": [
+ "b939e0d37a56ee607a4b7b4c59721c8facabb049",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-orientation-invalid.html": [
+ "d73028ae4b50467e1a04a80c9b0a33a1f195ba5b",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-orientation-valid.html": [
+ "07a4e4f0d471c1482ec55c1237c39791590158e8",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-rendering-invalid.html": [
+ "b053afe022c8928c8c18dc4e2dbba3c7224fe8c1",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-rendering-valid.html": [
+ "ee2bd095839ad643e8e1fc4e9924d11ee8befc22",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-resolution-invalid.html": [
+ "f48b7620d2e486815c51c616ddfa211739921dd4",
+ "testharness"
+ ],
+ "css/css-images/parsing/image-resolution-valid.html": [
+ "b5306320fe0ab963bfcd81874616d19866d9fea6",
+ "testharness"
+ ],
+ "css/css-images/parsing/object-fit-invalid.html": [
+ "30ce0f8f7a0b3d71c2c9347bfff588024f3f298d",
+ "testharness"
+ ],
+ "css/css-images/parsing/object-fit-valid.html": [
+ "ffbe081c87d23c18001dfd1835675801bb8c7ea2",
+ "testharness"
+ ],
+ "css/css-images/parsing/object-position-invalid.html": [
+ "20d721601fc3f13c6136cf01d41a9dd0372b865e",
+ "testharness"
+ ],
+ "css/css-images/parsing/object-position-valid.html": [
+ "3c9d9c61b0d80d46e939349b46e222dbd35aa454",
+ "testharness"
+ ],
+ "css/css-images/parsing/resources/parsing-testcommon.js": [
+ "b5cc6f7c0c7729328bbbc45ec2a8147dae8d8668",
+ "support"
+ ],
"css/css-images/support/1x1-green.gif": [
"a3c674d4bdde016ea98db01141b2584c67526e4a",
"support"
@@ -511297,6 +511913,22 @@
"8e916c531505de282f4d01170addf7f413a4c818",
"support"
],
+ "css/css-position/hypothetical-box-scroll-parent-ref.html": [
+ "6f0eb6083a94389653b5037ab18d04237eb4ec81",
+ "support"
+ ],
+ "css/css-position/hypothetical-box-scroll-parent.html": [
+ "5294f5513621dac35533e9133c09743ec8c2b66c",
+ "reftest"
+ ],
+ "css/css-position/hypothetical-box-scroll-viewport-ref.html": [
+ "b85b15c076ef7309f59ef88472e2a1f473a4db4b",
+ "support"
+ ],
+ "css/css-position/hypothetical-box-scroll-viewport.html": [
+ "397ca48cd4d5d40ad6458401cbc029cc965305bd",
+ "reftest"
+ ],
"css/css-position/position-relative-table-left-ref.html": [
"044d07924d19f223eaa43950f9e9197d267e6be8",
"support"
@@ -515841,6 +516473,10 @@
"abadfe4da5dc6adc4e40700e84674ec84fc6d744",
"testharness"
],
+ "css/css-syntax/declarations-trim-whitespace.html": [
+ "4e95ed2655816b40c437af2846bf4b513e527f0b",
+ "testharness"
+ ],
"css/css-syntax/ident-three-code-points.html": [
"7ce37259edc09da4e36f40c026ac76f33d829720",
"testharness"
@@ -515949,10 +516585,26 @@
"1d62418c7d244062887ab4237b254ce92121a32c",
"reftest"
],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html": [
+ "6e351eb38a72f6e6d67b73bcae030da73b7034d9",
+ "support"
+ ],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html": [
+ "b8a7f312ff67da23ed7fc212b27f78ae712eec21",
+ "reftest"
+ ],
"css/css-tables/height-distribution/percentage-sizing-of-table-cell-children.html": [
"55a759d84f38e6adf0f091c9c0ecaa69060cb51a",
"testharness"
],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html": [
+ "44b8eefa18e5c99f034b997c40a5245d5b8d8497",
+ "support"
+ ],
+ "css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html": [
+ "9f50c6aacca1d1c5a8ad5814b92566aae707cebd",
+ "reftest"
+ ],
"css/css-tables/height-distribution/td-different-subpixel-padding-in-same-row-ref.html": [
"2bb8a26451a23ebcf548ad147d301ea5d9603c25",
"support"
@@ -537689,6 +538341,14 @@
"2543ef7b6e41b2b0614c32167f4e0a85319dae0c",
"reftest"
],
+ "css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html": [
+ "59177963e949b6c60b3e919f87de243a5ca24522",
+ "support"
+ ],
+ "css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html": [
+ "c558b746bdc80a28371146de9a54ba4822e91088",
+ "reftest"
+ ],
"css/css-writing-modes/support/100x100-lime.png": [
"b02fc2d0ad1d95a2aeb6011022e63928841b183f",
"support"
@@ -539510,7 +540170,7 @@
"support"
],
"css/cssom-view/scroll-behavior-smooth.html": [
- "966ebff69f91c0ea92f4bc2f943df9ef9dc3bcf9",
+ "92b15db94769eccd94ee5b43b233b49ca66f2b9c",
"testharness"
],
"css/cssom-view/scroll-no-layout-box.html": [
@@ -553042,7 +553702,7 @@
"testharness"
],
"dom/nodes/Document-constructor.html": [
- "638599e01c32e6566a4c445c8042e5b129ca60f5",
+ "f759f6b51f3c8324cdf040724f849820ad6fd54a",
"testharness"
],
"dom/nodes/Document-contentType/contentType/contenttype_bmp.html": [
@@ -557265,7 +557925,7 @@
"2ae1da8e026e63625a6168b842303cc156963ced",
"support"
],
- "feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html": [
+ "feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html": [
"fe6000c242c73c81b5fc3c227f7703299fea455c",
"testharness"
],
@@ -557709,10 +558369,6 @@
"71dc2b17b89ab6ec65f775cb6d1cab02808c0bc6",
"testharness"
],
- "fetch/api/headers/headers-idl.html": [
- "42dc60a28c86ef378a8aa614f411f13bae0a081a",
- "testharness"
- ],
"fetch/api/headers/headers-normalize.html": [
"6ccdfba06f9a8692029d72ef81aee16a1996ca01",
"testharness"
@@ -557729,6 +558385,10 @@
"d4c5932358e07e927c5931c304ea37faa7d528ea",
"testharness"
],
+ "fetch/api/idl.any.js": [
+ "a911dfb5cd57f4a23f3641187697ad91a064edfe",
+ "testharness"
+ ],
"fetch/api/policies/csp-blocked-worker.html": [
"f4f80fee9df57af84ec792bbfcd6da0d497a25e0",
"testharness"
@@ -557966,7 +558626,7 @@
"testharness"
],
"fetch/api/request/destination/fetch-destination.https.html": [
- "5b7276e8a10bf91ee7d2a92917176b8e62c3255d",
+ "29e22bbe11b501fa354e90dde671f5f500fcaab3",
"testharness"
],
"fetch/api/request/destination/resources/dummy": [
@@ -558105,10 +558765,6 @@
"ca4f2d4b881202dc965ac13a06609ac6a2684ffc",
"testharness"
],
- "fetch/api/request/request-idl.html": [
- "679ff0c44a0ece1c480f5296e738b7a15f4c79cb",
- "testharness"
- ],
"fetch/api/request/request-init-001.sub.html": [
"49bc4349b4e7a85d88cacd54227355aa986535f1",
"testharness"
@@ -558129,8 +558785,12 @@
"e6c2afd6cef41d358016d4d021b7c3e0e1185704",
"testharness"
],
+ "fetch/api/request/request-reset-attributes.https.html": [
+ "132b917c77c61230f7c5e84c3c9cafe4d1f0b565",
+ "testharness"
+ ],
"fetch/api/request/request-structure.html": [
- "b01d5ae0d56c22d2b86e0efd2cf64ac938770b11",
+ "2af02f3ecf8449c91f2f1d28effc3478a4bfc235",
"testharness"
],
"fetch/api/request/request-type-attribute-historical.html": [
@@ -558141,6 +558801,14 @@
"3cd7d5191fe33b2f2dab571a4b006d8332fdf42e",
"support"
],
+ "fetch/api/request/resources/hello.txt": [
+ "f572d396fae9206628714fb2ce00f72e94f2258f",
+ "support"
+ ],
+ "fetch/api/request/resources/request-reset-attributes-worker.js": [
+ "cde1835ecc64d416df0a25a8cdd1d2bcc3f38431",
+ "support"
+ ],
"fetch/api/request/url-encoding.html": [
"1f8a8e00c5c1ba5ae9995ca6561801479b487b3a",
"testharness"
@@ -558289,10 +558957,6 @@
"06489e75d56cbbdbfee903bea7e39c549310ba3e",
"testharness"
],
- "fetch/api/response/response-idl.html": [
- "d94cfadf60dc146f80f7c1dc9937d7841600f9ef",
- "testharness"
- ],
"fetch/api/response/response-init-001.html": [
"a45bf860ad19e31ff95c3add7b6f4ad7c0573254",
"testharness"
@@ -561105,10 +561769,6 @@
"8add09b76d8662f4343188a1ac36fe71fd4a225d",
"testharness"
],
- "html/browsers/history/the-history-interface/history_pushstate_url.html": [
- "d5e1649c88102f27da5fe1ac16715cfee7f70f84",
- "testharness"
- ],
"html/browsers/history/the-history-interface/history_replacestate.html": [
"91cf4970bfa565ee8b846582bdbe608d38902fe7",
"testharness"
@@ -561670,7 +562330,7 @@
"support"
],
"html/browsers/offline/browser-state/navigator_online_event-manual.https.html": [
- "6ad5311783547501b80d05eea9b7a414348b151a",
+ "0128e846b64f2f06d72300aaa089d1e9c13faa7f",
"manual"
],
"html/browsers/offline/browser-state/navigator_online_online.https.html": [
@@ -563425,6 +564085,10 @@
"a2a5acc9dfe53c7482eeaa4be3a4819238f8e120",
"testharness"
],
+ "html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js": [
+ "1e1c656e1d19c9c459faf16327e099a4c9e13872",
+ "testharness"
+ ],
"html/dom/dynamic-markup-insertion/opening-the-input-stream/type-argument-plaintext-subframe.txt": [
"8d06cea05d408d70c59b1dbc5df3bda374d869a4",
"support"
@@ -573841,6 +574505,10 @@
"da39a3ee5e6b4b0d3255bfef95601890afd80709",
"support"
],
+ "html/semantics/forms/form-submission-0/constructing-form-data-set.html": [
+ "28ddddb0e685b6de4bb1270afdd791865d6bb787",
+ "testharness"
+ ],
"html/semantics/forms/form-submission-0/contains.json": [
"5cb7e225df89561a1137933615b93c9912444006",
"support"
@@ -579313,6 +579981,10 @@
"4e33f8928d27bd64a96d72c32de08ebd483ab888",
"support"
],
+ "infrastructure/OWNERS": [
+ "aaf9297460eae343b6ebfe3bbf9a2b0677740f5e",
+ "support"
+ ],
"infrastructure/README.md": [
"17caa93b8e495a096e26ffcfc229cecca453a644",
"support"
@@ -579381,6 +580053,10 @@
"e7549e915a809b48cac816dacdd7a9bbf476b596",
"support"
],
+ "infrastructure/browsers/firefox/prefs.html": [
+ "32cd95068c1f207719e75f27144ebe74eb7a9c75",
+ "testharness"
+ ],
"infrastructure/expected-fail/failing-test.html": [
"c832afb4826fd43d2fcc4f5e3fd6a773a6ee35f0",
"testharness"
@@ -579389,10 +580065,42 @@
"0f536ac59a959769966d56c5a546f9f2c2557e97",
"support"
],
+ "infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini": [
+ "29d2053e55e60d4e8a15def3a96a3501db03ec54",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini": [
+ "073cc56d2a4655779b55cf543a27ce1daded5936",
+ "support"
+ ],
"infrastructure/metadata/infrastructure/expected-fail/failing-test.html.ini": [
"7eecbfc4845e6befe54b0f007d587a1a003993dc",
"support"
],
+ "infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini": [
+ "b6c1fe38e610a8ffaf843c0c0b791c65fe6d5145",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini": [
+ "36720a54c9121d83c2f42150be8249442f8d4006",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini": [
+ "30338e0d6c39e1ae6150a109166e598330cc467f",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini": [
+ "49250363a779c7f544ce20808c479ed21dfccf34",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini": [
+ "a243788611107b6c2d228c1c793e1b966a91187d",
+ "support"
+ ],
+ "infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini": [
+ "8afb2d014ce4d04b79388feac15416215095b47f",
+ "support"
+ ],
"infrastructure/reftest-wait-ref.html": [
"62552ac6981fc0c7aca84983569717eb2990a31e",
"support"
@@ -579401,6 +580109,86 @@
"1a291b68cdf6edcfc28a2ff22e294e8e8ebc0c42",
"reftest"
],
+ "infrastructure/reftest/green-ref.html": [
+ "13751835b881c199844f514e773df112385a9e13",
+ "reftest"
+ ],
+ "infrastructure/reftest/green.html": [
+ "e698bcd7504f6c9fe04f3a15b5b948ae0fec856e",
+ "support"
+ ],
+ "infrastructure/reftest/red.html": [
+ "9563fe27abd39ec6dab17ab599215a69b2324982",
+ "support"
+ ],
+ "infrastructure/reftest/reftest.https.html": [
+ "b1c85b1eead1885a0fe977e95641b94fa3d6b726",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_and_fail.html": [
+ "641b3d7927737e81ccc480ab6e994a06dc4bd3cf",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_and_fail_0-ref.html": [
+ "52ab7ba703c4dc25a7435344b57c2dc6eef08571",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_cycle.html": [
+ "1775b919ba7e5dc9e44935ace5d53ec25453c7f9",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_cycle_0-ref.html": [
+ "b6faf401dde43e8afcad1278f6243b6b9c484893",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_cycle_1-ref.html": [
+ "7bbd342c126d2e445b83c89df98b3bf43884fa79",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_cycle_fail.html": [
+ "6acd776b1c04a8b069bd8f7bbc5bd001b7cd9d0a",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_cycle_fail_0-ref.html": [
+ "ca6da32889313e85ac1da20ceba8f38cbae50c45",
+ "reftest_node"
+ ],
+ "infrastructure/reftest/reftest_match.html": [
+ "dd0dacd73566a26aed0fb6764d7c1a18b504c2d2",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_match_fail.html": [
+ "b45099526551022cd6ebc834981bd4abebc1d6ac",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_mismatch.html": [
+ "6eb987daabbbacbba7c5bffa7edbd57c8534cc80",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_mismatch_fail.html": [
+ "e5343dc9300974de71f96f0c736b2ff4e5920848",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_or_0.html": [
+ "1beaea5c2f84162bc279a9eb3d5861e509ac61b3",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_ref_timeout-ref.html": [
+ "da36ed75287ab3f4a92a32f82fea7084e3599a2b",
+ "support"
+ ],
+ "infrastructure/reftest/reftest_ref_timeout.html": [
+ "be5bd98927dbda42fd41dfb3e696a2866746cd59",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_timeout.html": [
+ "280c5719094807cb8d80d706585c0dea586b1cd8",
+ "reftest"
+ ],
+ "infrastructure/reftest/reftest_wait_0.html": [
+ "7c39501c8a2ddcd9ee0405af1df84e259205ab04",
+ "reftest"
+ ],
"infrastructure/server/secure-context.https.any.js": [
"6f246bdc6d67a92a6518870542c20d2f8b2b5f5d",
"testharness"
@@ -579549,6 +580337,10 @@
"cba4a18b5a6b69c467067dc4a7ac7449f39be6a1",
"support"
],
+ "interfaces/fetch.idl": [
+ "b84c0af66b1bc37170021af455f85d5b5c0f01b2",
+ "support"
+ ],
"interfaces/filter-effects.idl": [
"901c6d05e91de736ae1d627eca584e5c024786fa",
"support"
@@ -579566,7 +580358,7 @@
"support"
],
"interfaces/geometry.idl": [
- "9aae8525ee6b27797783495e8d918892ee857a78",
+ "c757c625c0f5df3d677b5646bef04ac7075dbb64",
"support"
],
"interfaces/gyroscope.idl": [
@@ -588510,7 +589302,7 @@
"testharness"
],
"offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html": [
- "9be6477f482c1d8613aadfa665f405019233c4cd",
+ "8dafe883a6f52b66e528fcb6a86c72a147f8cf9d",
"testharness"
],
"offscreen-canvas/the-offscreen-canvas/offscreencanvas.constructor.html": [
@@ -589393,10 +590185,6 @@
"1a2bf6b62a5021eec649c0919a35574779e30d09",
"manual"
],
- "payment-request/PaymentCurrencyAmount/currencySystem-member.https.html": [
- "7bfce9810c1afdc53a99fa0036c472f6cfbe5deb",
- "testharness"
- ],
"payment-request/PaymentItem/type_member.https.html": [
"5568f96eac7b0ebf1d91d468bb30b9eaa8b1a9f0",
"testharness"
@@ -598813,6 +599601,14 @@
"661cf7f329590a89aa2644a102a10d1ba34feb75",
"testharness"
],
+ "server-timing/navigation_timing_idl.html": [
+ "191f42a92f0ac135de816275920e54fa50065b15",
+ "testharness"
+ ],
+ "server-timing/resource_timing_idl.html": [
+ "eba493537f5d156b4fb074e24787e522ea3c7971",
+ "testharness"
+ ],
"server-timing/resources/blue.png": [
"7de5cdb5ad04ac365430b3b5f5ba01d2ba57ea23",
"support"
@@ -599502,7 +600298,7 @@
"support"
],
"server-timing/server_timing_header-parsing.html": [
- "bde9c39ce610bd7178800f92f3181bef3cd55918",
+ "10f756bbf749b7ad8f7c6eb4efe752ee79c44b4a",
"testharness"
],
"server-timing/test_server_timing.html": [
@@ -599529,6 +600325,10 @@
"0ddb4f1cf84729ed673295719ec58a3e5d600a12",
"support"
],
+ "service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js": [
+ "27d9ec7d86fcdb50e892321283d36143c5066461",
+ "support"
+ ],
"service-workers/cache-storage/resources/common-worker.js": [
"7683f075e231ee17b3909f5cf96d727908823577",
"support"
@@ -599609,6 +600409,10 @@
"6484fca817f556be3ffead18f162649c0fbfba30",
"testharness"
],
+ "service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html": [
+ "ce03773200d0dc76199b0ea5353bc44be4e86793",
+ "testharness"
+ ],
"service-workers/cache-storage/serviceworker/cache-keys.https.html": [
"c1f638bea1f897b086ce403b7a87fe4fd7b77b25",
"testharness"
@@ -599993,6 +600797,14 @@
"00c90429203c85ae8f10a6a6604cdf9619524f06",
"testharness"
],
+ "service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html": [
+ "9f69732ecf50608ea2695e2fb348d8dff6df6791",
+ "manual"
+ ],
+ "service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html": [
+ "109c975e4c31e5e880b3308967c05623a76aacb4",
+ "manual"
+ ],
"service-workers/service-worker/fetch-event-network-error.https.html": [
"07b81a0af207ee0723a9abae90e49482701f8935",
"testharness"
@@ -600050,7 +600862,7 @@
"testharness"
],
"service-workers/service-worker/fetch-event.https.html": [
- "1a7e0410ef0e486738ca7c76542c2612228d5bd2",
+ "cf2d0ef7275fd08bd0fbd2dde4c8c4ee4a2452d6",
"testharness"
],
"service-workers/service-worker/fetch-frame-resource.https.html": [
@@ -600810,7 +601622,7 @@
"support"
],
"service-workers/service-worker/resources/fetch-event-test-worker.js": [
- "bba096216d8fbca6d4ddb6b7e9352a095a5e5db8",
+ "2cd3893314f0296b4c8260f250cc87b570c7d692",
"support"
],
"service-workers/service-worker/resources/fetch-event-within-sw-worker.js": [
@@ -601005,6 +601817,10 @@
"fd486a19472f142bbd2909929a67ac3d39adc845",
"support"
],
+ "service-workers/service-worker/resources/install-worker.html": [
+ "0f2d441a80fb4641af35ad851e86690b7c02d1f7",
+ "support"
+ ],
"service-workers/service-worker/resources/interfaces-idls.js": [
"2d3ae3bdd1be17a2871aa3af2009daaacf43d3db",
"support"
@@ -601613,6 +602429,10 @@
"aac5705d6844e4a33200418504adb57053a45be2",
"testharness"
],
+ "service-workers/service-worker/update-result.https.html": [
+ "06741e887be9746d7354394f74c054dd920d1b60",
+ "testharness"
+ ],
"service-workers/service-worker/update.https.html": [
"d55da98b05b5885084474ebdbabdf6c0998f8bca",
"testharness"
@@ -608750,7 +609570,7 @@
"testharness"
],
"web-animations/interfaces/KeyframeEffect/setKeyframes.html": [
- "a346e0e004010a6f51e06ffd30d0b6eddd45421d",
+ "c5c631ef4e728ea5f40f14ad5590e4836068f361",
"testharness"
],
"web-animations/interfaces/KeyframeEffect/target.html": [
@@ -609145,6 +609965,10 @@
"da39a3ee5e6b4b0d3255bfef95601890afd80709",
"support"
],
+ "webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html": [
+ "34d9e7ccb333ce23c838126a4e84918321292d33",
+ "testharness"
+ ],
"webaudio/the-audio-api/the-audiobuffer-interface/idl-test.html": [
"0ef05c242d8f987d521c0e9ce474d0f9a46bee28",
"testharness"
@@ -609958,7 +610782,7 @@
"wdspec"
],
"webdriver/tests/cookies/get_named_cookie.py": [
- "e6e265f417d17b4c9d349fbe9aa9fe3923dcfea0",
+ "a3116e826f4db0221224ccb9a0e0d71ecb1f9a85",
"wdspec"
],
"webdriver/tests/document_handling/page_source.py": [
@@ -609970,7 +610794,7 @@
"support"
],
"webdriver/tests/element_click/bubbling.py": [
- "dde7ca3d7b8ee65222af0044f07087d3b0725bb9",
+ "67d9b7aeb95132759d28696cdcc60a279ccb702a",
"wdspec"
],
"webdriver/tests/element_click/select.py": [
@@ -610382,7 +611206,7 @@
"testharness"
],
"webmessaging/message-channels/close.html": [
- "f5e17f831c797f2dac4fc5f75e09c5bb79288a5f",
+ "bcfac9e222374a485ed23433513012733551dafe",
"testharness"
],
"webmessaging/message-channels/worker.html": [
@@ -611066,115 +611890,115 @@
"support"
],
"websockets/Close-1000-reason.any.js": [
- "232e2286e3a5d8017a4da0d6800af6f955e802be",
+ "c73946ea1fd8c159de394e2275d58f7c7ca5f20c",
"testharness"
],
"websockets/Close-1000.any.js": [
- "9aacd24847225cc15883bc97fe6083b1bce87585",
+ "e5084bdfe6473d7f980e841f3c943c16955af48e",
"testharness"
],
"websockets/Close-Reason-124Bytes.any.js": [
- "8fa6ced38fcc2199953370eefcb5007999d8f294",
+ "a9bc7a9db95787e5169df6b17fcf1fff2feba610",
"testharness"
],
"websockets/Close-reason-unpaired-surrogates.any.js": [
- "11a06fcb4b623667e880fa1b8410a0bceb158d13",
+ "e633954d64c77a2d7018592491cc4c8e06951db1",
"testharness"
],
"websockets/Close-undefined.any.js": [
- "e83fdcf0a96ff04974ab87cf103f1c6aa0da816d",
+ "4c3eb3b1fb0f2b5a86778473790b4ad01ba7913d",
"testharness"
],
"websockets/Create-Secure-extensions-empty.any.js": [
- "29649e1db7331a95da9f62b19d31bc072ee6fe81",
+ "8a9fa5df9c663bc03ea4a3c95a07ed03716c4d03",
"testharness"
],
"websockets/Create-Secure-url-with-space.any.js": [
- "06ac8bf7174529557116aade3a716a340e9d1500",
+ "7bb26f1f8a0508aa5e63e13a3944069ed4f664c0",
"testharness"
],
"websockets/Create-Secure-valid-url-array-protocols.any.js": [
- "242bf917d9ac4dcf6f11a8a9d1b597f956a4ef9e",
+ "5f03fbef258dceab738c9bab5a27b9e76d54cfd3",
"testharness"
],
"websockets/Create-Secure-valid-url-binaryType-blob.any.js": [
- "d0129913180eb49c7836672274386b26e1a26c09",
+ "64f5fdb17f8c8def458c6758e44ad5ec36fa64da",
"testharness"
],
"websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js": [
- "e12b21a173d36dc1ecf06317f99e3dab212e5f53",
+ "f4ce408dcfb8df678635d9f47238ff3c37052297",
"testharness"
],
"websockets/Create-Secure-valid-url-protocol-string.any.js": [
- "34690bcf8232fe3ea672325af804e40025263fd5",
+ "9e257d2bf6e91198a1dc68d638505cdee5d861c9",
"testharness"
],
"websockets/Create-Secure-valid-url.any.js": [
- "c88bfec8807165df66fe07c9f45e84c4ce407a27",
+ "82d84cd25acb8ff4c5d821d19ee399dd8eeeeb54",
"testharness"
],
"websockets/Create-Secure-verify-url-set-non-default-port.any.js": [
- "3d5c48e01b37a39e47b9192e30d38d21d7278326",
+ "30d65805f43d04019390c3cc44be510cb6940f50",
"testharness"
],
"websockets/Create-asciiSep-protocol-string.any.js": [
- "b0778289d527b2a580788d91415ea70ca329caa2",
+ "1923df0d3f148f95ed38c58c800994dbda645cf6",
"testharness"
],
"websockets/Create-blocked-port.any.js": [
- "b2fba708f014738eee1efcceeb4c396ebf5ca5e8",
+ "e09fb109af886f9f85a7ba94556158e0d8a19a52",
"testharness"
],
"websockets/Create-invalid-urls.any.js": [
- "a61ec657e6b8e81b7ea3fd196f1553cf001c0b51",
+ "f856b70ef0d75e488dbf2d8f1e7d4f782f33ba66",
"testharness"
],
"websockets/Create-non-absolute-url.any.js": [
- "43a74d73fe628dce359ae02a549ac6eebde63c04",
+ "19ba28b0d4398943fdc99136015086822923ee8b",
"testharness"
],
"websockets/Create-nonAscii-protocol-string.any.js": [
- "7354ded8647d934361f297eac82e6c35c332e3de",
+ "25f712f43f31a6af798beb1a42d0192c33a8bb32",
"testharness"
],
"websockets/Create-on-worker-shutdown.any.js": [
- "44ebfd931d7db3e79dcd6c4869809d6812b6d3ec",
+ "a3770c937d8c97584cc380b21c1fb56a8db44c43",
"testharness"
],
"websockets/Create-protocol-with-space.any.js": [
- "0952d876349721a3ce7d8f444310265b56714e31",
+ "758bd4553fffbe2be5772fa7899ed47df124d233",
"testharness"
],
"websockets/Create-protocols-repeated-case-insensitive.any.js": [
- "119f105406ffd23d5e061907dfd05a033ab063a6",
+ "9849c576fc21afd75e890d258e511c85b7716c31",
"testharness"
],
"websockets/Create-protocols-repeated.any.js": [
- "7d9693702e2c00b5ad4f5f20ced8ee6d4f5b995e",
+ "25d5a390c53ba31893c9a4e38b865bdf129226d1",
"testharness"
],
"websockets/Create-valid-url-array-protocols.any.js": [
- "ef97eccc11ffd79158008ccbe5a883cc71e0bb2e",
+ "1e91ac9f1a048fddfa12cfd00a7f8f05df7dc55a",
"testharness"
],
"websockets/Create-valid-url-protocol-empty.any.js": [
- "0a373bbf19d2632d56ae7a798b628a2590544625",
+ "895ef38f0243b76b7cf82105bc33aac09ab8d692",
"testharness"
],
"websockets/Create-valid-url-protocol.any.js": [
- "7781737cf28ba7d96fdbf5db96c461b3f1b784ca",
+ "8771222d6b7f90890c17770d4848d5ac339d8fbd",
"testharness"
],
"websockets/Create-valid-url.any.js": [
- "5fd613b75c784f6c8c3f73775701afc132460167",
+ "bf76962a23369386bfe330df6643f157907bae1c",
"testharness"
],
"websockets/Create-verify-url-set-non-default-port.any.js": [
- "395dcc95796f3208ef4c70f02f3b9ef968f52ad9",
+ "48d6c6bcafe581b4ad6a958fdfd78cd1804e603b",
"testharness"
],
"websockets/Create-wrong-scheme.any.js": [
- "972ee46955f31fa402fcd0c83e528f2a803cad5b",
+ "d304ef9fac5ff9fe0ed78f3afd5705587dd126b4",
"testharness"
],
"websockets/OWNERS": [
@@ -611186,171 +612010,171 @@
"support"
],
"websockets/Secure-Close-1000-reason.any.js": [
- "fbca7237aa1fcd8d93e61f1a25ce54e42ef947fe",
+ "8221d0691dc86d29a7dee193e20513c00ea46b00",
"testharness"
],
"websockets/Secure-Close-1000-verify-code.any.js": [
- "218c68a257e21c5f60dcf2d92e418e48955586a6",
+ "4e2249b7acb742493f6a9d55f4fd56a9d3cf63d1",
"testharness"
],
"websockets/Secure-Close-1000.any.js": [
- "c6c4580f1b8da8e1ad36cb143601495362bfd508",
+ "4f63153e506021917ce40a1d4a5c53e13d6c3ef4",
"testharness"
],
"websockets/Secure-Close-1005-verify-code.any.js": [
- "f0bf3684d5aeb48bd86fba2c02efd9f8190181f5",
+ "580df1d1e6e8f66b0bbc71f6c5d4990ff3b02c41",
"testharness"
],
"websockets/Secure-Close-1005.any.js": [
- "e23e64eccd5a030e894f09ffe798d3ddb67de995",
+ "339ba6a21ca5d866e495b795f231a9daee82a8fb",
"testharness"
],
"websockets/Secure-Close-2999-reason.any.js": [
- "683f82a05bac2622bda9f6a45d78174d49451541",
+ "c2bf627158d2ec8451e422361c63120483ac9111",
"testharness"
],
"websockets/Secure-Close-3000-reason.any.js": [
- "2d7d21e6e694f95493b6bb29af9e917b5bc87c3e",
+ "fa6643162dcb0625e334e30bfc5c37366642a7b5",
"testharness"
],
"websockets/Secure-Close-3000-verify-code.any.js": [
- "163a79159ada3cfb3ace3198b6e4374b9d46478a",
+ "b3c3d45983381ae71812a11b9c40f68025eaf952",
"testharness"
],
"websockets/Secure-Close-4999-reason.any.js": [
- "fce275a67d48f16dd383e4a1e40c9aae20604d56",
+ "84aa123efd5eabf160fd177da8660902cca41bac",
"testharness"
],
"websockets/Secure-Close-Reason-124Bytes.any.js": [
- "f92ea585dd90a6e2a7d60c1199aa55c053e1d0fd",
+ "0f105f09a7ac90e83cf84c2bfc1d9a7aaab8ec95",
"testharness"
],
"websockets/Secure-Close-Reason-Unpaired-surrogates.any.js": [
- "8d8499fe89fb9391011851d02a2a1cc87f3091d5",
+ "7ba712430ddc2ff7186f22f5b0f6137861344422",
"testharness"
],
"websockets/Secure-Close-onlyReason.any.js": [
- "094f560d486ed7d46c583f8412b27d4aa472cf3c",
+ "2ce5d4482f03c8ba76c2cd47bd3c817640420fee",
"testharness"
],
"websockets/Secure-Close-readyState-Closed.any.js": [
- "38acc8f3a4469183285601cf9345a924488e45c9",
+ "50ca1c7d19b7f857c85efd876a1813d55c7bae1f",
"testharness"
],
"websockets/Secure-Close-readyState-Closing.any.js": [
- "aded4a277b4c64b8c3ded0a4f4b0779d08b3cea6",
+ "6dff428424d3b91c431a858435ce9336a091d734",
"testharness"
],
"websockets/Secure-Close-server-initiated-close.any.js": [
- "1d87d57a4d15f4b811a2c420af673365a107b407",
+ "50d25f9ff3866cc534114ac2b709c01e9e40dce5",
"testharness"
],
"websockets/Secure-Close-undefined.any.js": [
- "3e508273245b39ea92e0cf3ab9d593627520368b",
+ "79ea9f2a46dda082fb368ac11d04176310a5186f",
"testharness"
],
"websockets/Secure-Send-65K-data.any.js": [
- "d104efed7f007b3f7de3caae01fe806e1c530880",
+ "4d237d1718c1a6befe7a437abeeccf6fd5c0bec9",
"testharness"
],
"websockets/Secure-Send-binary-65K-arraybuffer.any.js": [
- "e9266889aee0cdfcf086582583ed93a14f6385b3",
+ "166093627308dc67db01f49d124d2ec5645a7d17",
"testharness"
],
"websockets/Secure-Send-binary-arraybuffer.any.js": [
- "cc091b222b393d6d909362c156e8eaa72152188f",
+ "3675bebc4bc0b714eed1d68bed8aa71d3d480749",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-float32.any.js": [
- "59517667216000d2478a85b1d7b055cebf4a754b",
+ "06f1ec6d8d9c460c1c4adb7b621645cbad6bd298",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-float64.any.js": [
- "b7ae95fa2dd0ab49debc4d6642a419ee4a7f35ce",
+ "603b86abe929f38d560944602bbb1e14ce335ce3",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-int32.any.js": [
- "4ef004ec08824b203f6cbdc975389a9dff654cb0",
+ "6b53dfeab2b33c534a658b44979af0e91adae204",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js": [
- "c781ce38ea37f957d4d137736030b966721631f0",
+ "b43580e7e84b5a413a2fabf0b8c166c1a46320b5",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js": [
- "39cea2900157e85cf65872050800d0ea7d466a55",
+ "353ad1ce837ae296cbb9704e6455f43d37c9dfb8",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js": [
- "e106db1dc4ca7a06fa774be241095e4e6deb60e8",
+ "97da4f658e030ac313bca0d1a0bd1bbb886453bd",
"testharness"
],
"websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js": [
- "8f9e231fe07f0ed7e567f24c534333cfb9cb32fb",
+ "050785f65ee4929b693b2f10c13b686a40dd1ef1",
"testharness"
],
"websockets/Secure-Send-binary-blob.any.js": [
- "a1a21715d21201d6fad1f0335a5ea0e51e31cd1b",
+ "9f87909c3a863306a0000934f92a8878a4ab90e9",
"testharness"
],
"websockets/Secure-Send-data.any.js": [
- "b10e32b6d25283cfe95d00a142b389610b646862",
+ "26b24fae3ecfcc5c54e0369994aa5cbea35b8aa2",
"testharness"
],
"websockets/Secure-Send-null.any.js": [
- "eb112f60b553a387ac8a27f53b58e96afa4de1aa",
+ "f1890361335c1aabc1e169b95ee23bcd35196394",
"testharness"
],
"websockets/Secure-Send-paired-surrogates.any.js": [
- "aa67cb57c54847413d87f367d49079e92a0062a8",
+ "2ceb927d3e4252b58759e38f1462be8f0b8b7009",
"testharness"
],
"websockets/Secure-Send-unicode-data.any.js": [
- "f745957aac340a3125bb70548063dd16ed681ead",
+ "fe879468ca28a2b9dc74a2eb863905885f33d472",
"testharness"
],
"websockets/Secure-Send-unpaired-surrogates.any.js": [
- "44db96d250737541d81b85c16bfc13814b213ef9",
+ "0a04efcfafd84ceb1686dc41ef5ddabff3ff0fe9",
"testharness"
],
"websockets/Send-0byte-data.any.js": [
- "2c21aa13b8ce7b4baf94ef0bb8b583be9608e10e",
+ "547a4daeef60c2e509a8ab136e5f6e6e839691bc",
"testharness"
],
"websockets/Send-65K-data.any.js": [
- "4ef718a1e4211c5e96c7ef54568ced94a05fc0ff",
+ "f1f9b1da0de2910fba3ab0b2f27ccd6ecbf58e96",
"testharness"
],
"websockets/Send-Unpaired-Surrogates.any.js": [
- "565ec0feb15b7e71df3be3fd8b5ec049cd40b43d",
+ "cdf08b6708090bbff835f1e240736b5e594c2594",
"testharness"
],
"websockets/Send-before-open.any.js": [
- "8a3f6d4560e087962406377082b5be13851adfec",
+ "a782a3a149e527c1d298fe06ad14a75d74936483",
"testharness"
],
"websockets/Send-binary-65K-arraybuffer.any.js": [
- "6ef670a54495dec8beb8f64cf94316b2a02d7a0e",
+ "ce3e5fb8d8e090654984f32730abbd83d21ddc29",
"testharness"
],
"websockets/Send-binary-arraybuffer.any.js": [
- "68e1aea078f7f9584727a59e2e6b4de3c65dc124",
+ "8c11cfdbe0538787e9511ca083909c1b081dc0b2",
"testharness"
],
"websockets/Send-binary-arraybufferview-int16-offset.any.js": [
- "4e3e87ed3db6af233a42eaa701922447a12db386",
+ "719a0982190474eaa21d39ea62377a9edbfd8868",
"testharness"
],
"websockets/Send-binary-arraybufferview-int8.any.js": [
- "03b5defa1ec4c48b91f70b49cc6ea97a405c71b2",
+ "a7ab13227f528bb95a6d50ab34b78722222a253d",
"testharness"
],
"websockets/Send-binary-blob.any.js": [
- "04e9e6a6bf04008e30687723bf9ffcfdc44096c1",
+ "1a72e7872cc281cc371bf5d458a2f7e7c8982eb1",
"testharness"
],
"websockets/Send-data.any.js": [
- "91c1ceaacb5851b9b440d07788a8eef33d2d6005",
+ "dfbfbdf8355b48f87d33eecc057ef5ace354c427",
"testharness"
],
"websockets/Send-data.worker.js": [
@@ -611358,15 +612182,15 @@
"testharness"
],
"websockets/Send-null.any.js": [
- "ebffe5099f644882956b1625f9017622a2f1f05f",
+ "2a7f3263f2485b7fd55b0a760a7f8a7ecea450a1",
"testharness"
],
"websockets/Send-paired-surrogates.any.js": [
- "196a425e64e9ec7d4e40bb72723abc349d3ed929",
+ "cc69d672f6a5d73600f4907382ae6ddee8c082e6",
"testharness"
],
"websockets/Send-unicode-data.any.js": [
- "5408066bfb2939cf2e6c2ce5f03dd0fb86c17e60",
+ "4c23d6be59d3f08645664e5b6ca3b856dd130f22",
"testharness"
],
"websockets/binary/001.html": [
@@ -611386,11 +612210,11 @@
"testharness"
],
"websockets/binaryType-wrong-value.any.js": [
- "2dd693107e5bf29112bd3d08b45c6eccb081569e",
+ "81270d4f5bf218b58bbd399dacfb228d0722a127",
"testharness"
],
"websockets/close-invalid.any.js": [
- "d50557d4578f2d96080748315dcc8ffc7d6b7485",
+ "0e3c8c4c1220bc98b1d086eccb1a6596b5255291",
"testharness"
],
"websockets/closing-handshake/002.html": [
@@ -611410,7 +612234,7 @@
"support"
],
"websockets/constructor.any.js": [
- "657960be0311f8859d64d69bfba00ffd493e135f",
+ "92fc1ff4b09dfc7cf045d7f278b435a4b5977da8",
"testharness"
],
"websockets/constructor/001.html": [
@@ -611526,7 +612350,7 @@
"support"
],
"websockets/eventhandlers.any.js": [
- "ca5ba116d24a47d5903d1d76333fc7ae2da68cb0",
+ "7e46185674a47f12277346635469fa73df4f8606",
"testharness"
],
"websockets/extended-payload-length.html": [
@@ -616645,16 +617469,8 @@
"d536b0f1b6cd251a3ee1812501bf60e25130b543",
"testharness"
],
- "xhr/abort-during-open.htm": [
- "bc528083ac09ef3666eb07d294bc2b48dc142791",
- "testharness"
- ],
- "xhr/abort-during-open.js": [
- "f46bf95a38cc79fe499f4990457fcf1eaa193068",
- "support"
- ],
- "xhr/abort-during-open.worker.js": [
- "94180bce348fa9fd3826a8993d701936141b8b0b",
+ "xhr/abort-during-open.any.js": [
+ "8b86a0c9cb405aa6bbc934cc99e3bdc0d5e23d85",
"testharness"
],
"xhr/abort-during-unsent.htm": [
@@ -617941,16 +618757,8 @@
"3e1788b46878b452f4417eb72dc16b80bcbad46c",
"testharness"
],
- "xhr/send-send.htm": [
- "8090983cb88c47209dd3e8a22883434401811985",
- "testharness"
- ],
- "xhr/send-send.js": [
- "c802b56486b0967c4ede9d15dc64a546a627ef4a",
- "support"
- ],
- "xhr/send-send.worker.js": [
- "f2de076a4fd8e7987aeb57b8f7cc44706d0cfa88",
+ "xhr/send-send.any.js": [
+ "2c667c5a4901d91b491c34c90d57cd01eb37a7b3",
"testharness"
],
"xhr/send-sync-blocks-async.htm": [
diff --git a/tests/wpt/metadata/css/CSS2/floats/new-fc-beside-adjoining-float.html.ini b/tests/wpt/metadata/css/CSS2/floats/new-fc-beside-adjoining-float.html.ini
new file mode 100644
index 00000000000..042b5c8181a
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/floats/new-fc-beside-adjoining-float.html.ini
@@ -0,0 +1,2 @@
+[new-fc-beside-adjoining-float.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/CSS2/floats/new-fc-separates-from-float.html.ini b/tests/wpt/metadata/css/CSS2/floats/new-fc-separates-from-float.html.ini
new file mode 100644
index 00000000000..75f0028b81a
--- /dev/null
+++ b/tests/wpt/metadata/css/CSS2/floats/new-fc-separates-from-float.html.ini
@@ -0,0 +1,2 @@
+[new-fc-separates-from-float.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-backgrounds/background-size-025.html.ini b/tests/wpt/metadata/css/css-backgrounds/background-size-025.html.ini
new file mode 100644
index 00000000000..4143512af62
--- /dev/null
+++ b/tests/wpt/metadata/css/css-backgrounds/background-size-025.html.ini
@@ -0,0 +1,2 @@
+[background-size-025.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-flexbox/percentage-size-subitems-001.html.ini b/tests/wpt/metadata/css/css-flexbox/percentage-size-subitems-001.html.ini
new file mode 100644
index 00000000000..737426ab549
--- /dev/null
+++ b/tests/wpt/metadata/css/css-flexbox/percentage-size-subitems-001.html.ini
@@ -0,0 +1,2 @@
+[percentage-size-subitems-001.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-fonts/font-display/font-display-preload.html.ini b/tests/wpt/metadata/css/css-fonts/font-display/font-display-preload.html.ini
new file mode 100644
index 00000000000..c48b125c49d
--- /dev/null
+++ b/tests/wpt/metadata/css/css-fonts/font-display/font-display-preload.html.ini
@@ -0,0 +1,2 @@
+[font-display-preload.html]
+ expected: TIMEOUT
diff --git a/tests/wpt/metadata/css/css-fonts/variations/at-font-face-font-matching.html.ini b/tests/wpt/metadata/css/css-fonts/variations/at-font-face-font-matching.html.ini
index 9dd1e41db13..8462217d346 100644
--- a/tests/wpt/metadata/css/css-fonts/variations/at-font-face-font-matching.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/variations/at-font-face-font-matching.html.ini
@@ -323,3 +323,6 @@
[Matching font-style: 'oblique 21deg' should prefer 'oblique 30deg 60deg' over 'oblique 40deg 50deg']
expected: FAIL
+ [Descriptor mathcing priority: Style has higher priority than weight]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-fonts/variations/font-parse-numeric-stretch-style-weight.html.ini b/tests/wpt/metadata/css/css-fonts/variations/font-parse-numeric-stretch-style-weight.html.ini
index ce924174648..db1ad73a768 100644
--- a/tests/wpt/metadata/css/css-fonts/variations/font-parse-numeric-stretch-style-weight.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/variations/font-parse-numeric-stretch-style-weight.html.ini
@@ -1,5 +1,4 @@
[font-parse-numeric-stretch-style-weight.html]
-
[Valid value 100 matches 100 for weight in @font-face.]
expected: FAIL
diff --git a/tests/wpt/metadata/css/css-fonts/variations/font-stretch.html.ini b/tests/wpt/metadata/css/css-fonts/variations/font-stretch.html.ini
index 3412ec0c36c..ed3f777dc72 100644
--- a/tests/wpt/metadata/css/css-fonts/variations/font-stretch.html.ini
+++ b/tests/wpt/metadata/css/css-fonts/variations/font-stretch.html.ini
@@ -1,5 +1,4 @@
[font-stretch.html]
-
[@getComputedStyle: 1e9% - huge legal percentage]
expected: FAIL
diff --git a/tests/wpt/metadata/css/css-images/parsing/gradient-position-invalid.html.ini b/tests/wpt/metadata/css/css-images/parsing/gradient-position-invalid.html.ini
new file mode 100644
index 00000000000..3b7cc7d1d16
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/gradient-position-invalid.html.ini
@@ -0,0 +1,25 @@
+[gradient-position-invalid.html]
+ [e.style['background-image'\] = "radial-gradient(at center left 1px, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at center top 2px, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at right 3% center, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at left 4px top, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at right top 5px, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at bottom 6% center, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at bottom 7% left, red, blue)" should not set the property value]
+ expected: FAIL
+
+ [e.style['background-image'\] = "radial-gradient(at bottom right 8%, red, blue)" should not set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/image-orientation-invalid.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-orientation-invalid.html.ini
new file mode 100644
index 00000000000..6336724c635
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/image-orientation-invalid.html.ini
@@ -0,0 +1,28 @@
+[image-orientation-invalid.html]
+ [e.style['image-orientation'\] = "auto" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "none" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "0" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "0 flip" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "0deg from-image" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "flip 0deg" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "flip from-image" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "from-image 0deg" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-orientation'\] = "from-image flip" should not set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/image-orientation-valid.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-orientation-valid.html.ini
new file mode 100644
index 00000000000..4eb18a63cba
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/image-orientation-valid.html.ini
@@ -0,0 +1,4 @@
+[image-orientation-valid.html]
+ [e.style['image-orientation'\] = "flip" should set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/image-rendering-valid.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-rendering-valid.html.ini
new file mode 100644
index 00000000000..d577cd8f20f
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/image-rendering-valid.html.ini
@@ -0,0 +1,7 @@
+[image-rendering-valid.html]
+ [e.style['image-rendering'\] = "smooth" should set the property value]
+ expected: FAIL
+
+ [e.style['image-rendering'\] = "high-quality" should set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/image-resolution-invalid.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-resolution-invalid.html.ini
new file mode 100644
index 00000000000..d20b6a85fd2
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/image-resolution-invalid.html.ini
@@ -0,0 +1,16 @@
+[image-resolution-invalid.html]
+ [e.style['image-resolution'\] = "auto" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-resolution'\] = "100%" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-resolution'\] = "2" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-resolution'\] = "3dpi snap from-image" should not set the property value]
+ expected: FAIL
+
+ [e.style['image-resolution'\] = "from-image snap 4dppx" should not set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/object-fit-invalid.html.ini b/tests/wpt/metadata/css/css-images/parsing/object-fit-invalid.html.ini
new file mode 100644
index 00000000000..9df443d9ec4
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/object-fit-invalid.html.ini
@@ -0,0 +1,16 @@
+[object-fit-invalid.html]
+ [e.style['object-fit'\] = "auto" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-fit'\] = "contain cover" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-fit'\] = "fill scale-down" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-fit'\] = "contain fill" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-fit'\] = "cover none" should not set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/object-position-invalid.html.ini b/tests/wpt/metadata/css/css-images/parsing/object-position-invalid.html.ini
new file mode 100644
index 00000000000..a6b7292a4af
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/object-position-invalid.html.ini
@@ -0,0 +1,37 @@
+[object-position-invalid.html]
+ [e.style['object-position'\] = "auto" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "1px 2px 3px" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "left right" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom 10% top 20%" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "center left 1px" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "center top 2px" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "right 3% center" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "left 4px top" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "right top 5px" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom 6% center" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom 7% left" should not set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom right 8%" should not set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-images/parsing/object-position-valid.html.ini b/tests/wpt/metadata/css/css-images/parsing/object-position-valid.html.ini
new file mode 100644
index 00000000000..df6b365d30d
--- /dev/null
+++ b/tests/wpt/metadata/css/css-images/parsing/object-position-valid.html.ini
@@ -0,0 +1,22 @@
+[object-position-valid.html]
+ [e.style['object-position'\] = "10%" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom 10% right 20%" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "bottom right" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "center left" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "left" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "top" should set the property value]
+ expected: FAIL
+
+ [e.style['object-position'\] = "top center" should set the property value]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/css/css-text/astral-bidi/adlam-anti-ref.html.ini b/tests/wpt/metadata/css/css-text/astral-bidi/adlam-anti-ref.html.ini
index 9b2cdade18e..6c003765cca 100644
--- a/tests/wpt/metadata/css/css-text/astral-bidi/adlam-anti-ref.html.ini
+++ b/tests/wpt/metadata/css/css-text/astral-bidi/adlam-anti-ref.html.ini
@@ -1,3 +1,2 @@
[adlam-anti-ref.html]
- expected:
- if os == "mac": FAIL
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/css-text/astral-bidi/cypriot-anti-ref.html.ini b/tests/wpt/metadata/css/css-text/astral-bidi/cypriot-anti-ref.html.ini
index c9a7054423d..ee5080fa97d 100644
--- a/tests/wpt/metadata/css/css-text/astral-bidi/cypriot-anti-ref.html.ini
+++ b/tests/wpt/metadata/css/css-text/astral-bidi/cypriot-anti-ref.html.ini
@@ -1,3 +1,2 @@
[cypriot-anti-ref.html]
- expected:
- if os == "mac": FAIL
+ expected: FAIL
diff --git a/tests/wpt/metadata/css/cssom-view/scroll-behavior-smooth.html.ini b/tests/wpt/metadata/css/cssom-view/scroll-behavior-smooth.html.ini
index e1a609649d6..08d8292ecc4 100644
--- a/tests/wpt/metadata/css/cssom-view/scroll-behavior-smooth.html.ini
+++ b/tests/wpt/metadata/css/cssom-view/scroll-behavior-smooth.html.ini
@@ -3,3 +3,9 @@
[scroll-behavior: smooth on DIV element]
expected: FAIL
+ [Instant scrolling while doing history navigation.]
+ expected: TIMEOUT
+
+ [Smooth scrolling while doing history navigation.]
+ expected: NOTRUN
+
diff --git a/tests/wpt/metadata/dom/nodes/Document-constructor.html.ini b/tests/wpt/metadata/dom/nodes/Document-constructor.html.ini
deleted file mode 100644
index d86bc27bc9a..00000000000
--- a/tests/wpt/metadata/dom/nodes/Document-constructor.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[Document-constructor.html]
- type: testharness
- [new Document(): URL parsing]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/fetch/api/headers/headers-idl.html.ini b/tests/wpt/metadata/fetch/api/headers/headers-idl.html.ini
deleted file mode 100644
index a302e07f15d..00000000000
--- a/tests/wpt/metadata/fetch/api/headers/headers-idl.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[headers-idl.html]
- type: testharness
- [Testing Symbol.iterator property of iterable interface Headers]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/fetch/api/idl.any.js.ini b/tests/wpt/metadata/fetch/api/idl.any.js.ini
new file mode 100644
index 00000000000..07becda3091
--- /dev/null
+++ b/tests/wpt/metadata/fetch/api/idl.any.js.ini
@@ -0,0 +1,19 @@
+[idl.any.worker.html]
+ [Untitled]
+ expected: FAIL
+
+
+[idl.any.html]
+ [Untitled]
+ expected: FAIL
+
+
+[idl.any.sharedworker.html]
+ [Untitled]
+ expected: FAIL
+
+
+[idl.https.any.serviceworker.html]
+ [Untitled]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/fetch/api/request/request-idl.html.ini b/tests/wpt/metadata/fetch/api/request/request-idl.html.ini
deleted file mode 100644
index f233e7214f9..00000000000
--- a/tests/wpt/metadata/fetch/api/request/request-idl.html.ini
+++ /dev/null
@@ -1,32 +0,0 @@
-[request-idl.html]
- type: testharness
- [Request interface: operation arrayBuffer()]
- expected: FAIL
-
- [Request interface: operation blob()]
- expected: FAIL
-
- [Request interface: operation formData()]
- expected: FAIL
-
- [Request interface: operation json()]
- expected: FAIL
-
- [Request interface: operation text()]
- expected: FAIL
-
- [Request interface: new Request("") must inherit property "arrayBuffer" with the proper type (14)]
- expected: FAIL
-
- [Request interface: attribute body]
- expected: FAIL
-
- [Request interface: new Request("") must inherit property "body" with the proper type (13)]
- expected: FAIL
-
- [Request interface: new Request("") must inherit property "arrayBuffer" with the proper type (15)]
- expected: FAIL
-
- [Request interface: new Request("") must inherit property "body" with the proper type]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/fetch/api/request/request-reset-attributes.https.html.ini b/tests/wpt/metadata/fetch/api/request/request-reset-attributes.https.html.ini
new file mode 100644
index 00000000000..9530f90dd12
--- /dev/null
+++ b/tests/wpt/metadata/fetch/api/request/request-reset-attributes.https.html.ini
@@ -0,0 +1,4 @@
+[request-reset-attributes.https.html]
+ [Untitled]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/fetch/api/response/response-idl.html.ini b/tests/wpt/metadata/fetch/api/response/response-idl.html.ini
deleted file mode 100644
index e0eb81482e9..00000000000
--- a/tests/wpt/metadata/fetch/api/response/response-idl.html.ini
+++ /dev/null
@@ -1,44 +0,0 @@
-[response-idl.html]
- type: testharness
- [Response interface: attribute body]
- expected: FAIL
-
- [Response interface: operation arrayBuffer()]
- expected: FAIL
-
- [Response interface: operation blob()]
- expected: FAIL
-
- [Response interface: operation formData()]
- expected: FAIL
-
- [Response interface: operation json()]
- expected: FAIL
-
- [Response interface: operation text()]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "body" with the proper type (8)]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "body" with the proper type (9)]
- expected: FAIL
-
- [Response interface: attribute trailer]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "trailer" with the proper type (8)]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "body" with the proper type (10)]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "arrayBuffer" with the proper type (12)]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "trailer" with the proper type]
- expected: FAIL
-
- [Response interface: new Response() must inherit property "body" with the proper type]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/dom/elements/global-attributes/dir_auto-N-EN.html.ini b/tests/wpt/metadata/html/dom/elements/global-attributes/dir_auto-N-EN.html.ini
new file mode 100644
index 00000000000..019363e9530
--- /dev/null
+++ b/tests/wpt/metadata/html/dom/elements/global-attributes/dir_auto-N-EN.html.ini
@@ -0,0 +1,2 @@
+[dir_auto-N-EN.html]
+ expected: FAIL
diff --git a/tests/wpt/metadata/html/dom/self-origin.sub.html.ini b/tests/wpt/metadata/html/dom/self-origin.sub.html.ini
index 805d0aa634d..053ca2c72ed 100644
--- a/tests/wpt/metadata/html/dom/self-origin.sub.html.ini
+++ b/tests/wpt/metadata/html/dom/self-origin.sub.html.ini
@@ -16,9 +16,6 @@
[Should have the right origin for sandboxed iframe]
expected: NOTRUN
- [We should have the right origin for our page]
- expected: FAIL
-
[about:blank subframe origins]
expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini
index 559c27de134..d0913a41225 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini
@@ -172,63 +172,63 @@
[XHTML img usemap="http://example.org/#garbage-before-hash-id"]
expected: FAIL
- [HTML (quirks) IMG usemap="no-hash-name"]
+ [XHTML img usemap="no-hash-name"]
expected: FAIL
- [HTML (quirks) IMG usemap="no-hash-id"]
+ [XHTML img usemap="no-hash-id"]
expected: FAIL
- [HTML (quirks) IMG usemap="hash-last#"]
+ [XHTML img usemap="hash-last#"]
expected: FAIL
- [HTML (quirks) IMG usemap=""]
+ [XHTML img usemap=""]
expected: FAIL
- [HTML (quirks) IMG usemap="#"]
+ [XHTML img usemap="#"]
expected: FAIL
- [HTML (quirks) IMG usemap="#percent-escape-name-%41"]
+ [XHTML img usemap="#percent-escape-name-%41"]
expected: FAIL
- [HTML (quirks) IMG usemap="#percent-escape-id-%41"]
+ [XHTML img usemap="#percent-escape-id-%41"]
expected: FAIL
- [HTML (quirks) IMG usemap="#no-such-map"]
+ [XHTML img usemap="#no-such-map"]
expected: FAIL
- [HTML (quirks) IMG usemap="#different-CASE-name"]
+ [XHTML img usemap="#different-CASE-name"]
expected: FAIL
- [HTML (quirks) IMG usemap="#different-CASE-id"]
+ [XHTML img usemap="#different-CASE-id"]
expected: FAIL
- [XHTML img usemap="no-hash-name"]
+ [HTML (standards) IMG usemap="no-hash-name"]
expected: FAIL
- [XHTML img usemap="no-hash-id"]
+ [HTML (standards) IMG usemap="no-hash-id"]
expected: FAIL
- [XHTML img usemap="hash-last#"]
+ [HTML (standards) IMG usemap="hash-last#"]
expected: FAIL
- [XHTML img usemap=""]
+ [HTML (standards) IMG usemap=""]
expected: FAIL
- [XHTML img usemap="#"]
+ [HTML (standards) IMG usemap="#"]
expected: FAIL
- [XHTML img usemap="#percent-escape-name-%41"]
+ [HTML (standards) IMG usemap="#percent-escape-name-%41"]
expected: FAIL
- [XHTML img usemap="#percent-escape-id-%41"]
+ [HTML (standards) IMG usemap="#percent-escape-id-%41"]
expected: FAIL
- [XHTML img usemap="#no-such-map"]
+ [HTML (standards) IMG usemap="#no-such-map"]
expected: FAIL
- [XHTML img usemap="#different-CASE-name"]
+ [HTML (standards) IMG usemap="#different-CASE-name"]
expected: FAIL
- [XHTML img usemap="#different-CASE-id"]
+ [HTML (standards) IMG usemap="#different-CASE-id"]
expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini b/tests/wpt/metadata/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini
new file mode 100644
index 00000000000..6de08d39d43
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/forms/form-submission-0/constructing-form-data-set.html.ini
@@ -0,0 +1,7 @@
+[constructing-form-data-set.html]
+ [FormData constructor always produces UTF-8 _charset_ value.]
+ expected: FAIL
+
+ [_charset_ control sets the expected encoding name.]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/xhr/abort-during-open.any.js.ini b/tests/wpt/metadata/xhr/abort-during-open.any.js.ini
new file mode 100644
index 00000000000..db9cfa6ab19
--- /dev/null
+++ b/tests/wpt/metadata/xhr/abort-during-open.any.js.ini
@@ -0,0 +1,9 @@
+[abort-during-open.any.worker.html]
+ [XMLHttpRequest: abort() during OPEN]
+ expected: FAIL
+
+
+[abort-during-open.any.html]
+ [XMLHttpRequest: abort() during OPEN]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/xhr/abort-during-open.htm.ini b/tests/wpt/metadata/xhr/abort-during-open.htm.ini
deleted file mode 100644
index eac211dc538..00000000000
--- a/tests/wpt/metadata/xhr/abort-during-open.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[abort-during-open.htm]
- type: testharness
- [XMLHttpRequest: abort() during OPEN]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/xhr/abort-during-open.worker.js.ini b/tests/wpt/metadata/xhr/abort-during-open.worker.js.ini
deleted file mode 100644
index de95cce12e0..00000000000
--- a/tests/wpt/metadata/xhr/abort-during-open.worker.js.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[abort-during-open.worker.html]
- type: testharness
- [Untitled]
- expected: FAIL
-
diff --git a/tests/wpt/web-platform-tests/.taskcluster.yml b/tests/wpt/web-platform-tests/.taskcluster.yml
index 0d5c1744bda..11109a544a0 100644
--- a/tests/wpt/web-platform-tests/.taskcluster.yml
+++ b/tests/wpt/web-platform-tests/.taskcluster.yml
@@ -15,9 +15,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 1 6"]
+ \ chrome reftest 1 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -33,9 +33,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 2 6"]
+ \ chrome reftest 2 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -51,9 +51,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 3 6"]
+ \ chrome reftest 3 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -69,9 +69,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 4 6"]
+ \ chrome reftest 4 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -87,9 +87,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 5 6"]
+ \ chrome reftest 5 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -105,9 +105,81 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome reftest 6 6"]
+ \ chrome reftest 6 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-reftest-7, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome reftest 7 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-reftest-8, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome reftest 8 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-reftest-9, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome reftest 9 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-reftest-10, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome reftest 10 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -125,7 +197,7 @@ tasks:
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
\ chrome wdspec 1 1"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -141,9 +213,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 1 12"]
+ \ chrome testharness 1 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -159,9 +231,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 2 12"]
+ \ chrome testharness 2 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -177,9 +249,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 3 12"]
+ \ chrome testharness 3 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -195,9 +267,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 4 12"]
+ \ chrome testharness 4 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -213,9 +285,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 5 12"]
+ \ chrome testharness 5 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -231,9 +303,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 6 12"]
+ \ chrome testharness 6 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -249,9 +321,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 7 12"]
+ \ chrome testharness 7 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -267,9 +339,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 8 12"]
+ \ chrome testharness 8 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -285,9 +357,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 9 12"]
+ \ chrome testharness 9 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -303,9 +375,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 10 12"]
+ \ chrome testharness 10 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -321,9 +393,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 11 12"]
+ \ chrome testharness 11 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -339,9 +411,63 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ chrome testharness 12 12"]
+ \ chrome testharness 12 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-testharness-13, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome testharness 13 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-testharness-14, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome testharness 14 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-chrome-dev-testharness-15, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ chrome testharness 15 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -357,9 +483,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 1 6"]
+ \ firefox reftest 1 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -375,9 +501,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 2 6"]
+ \ firefox reftest 2 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -393,9 +519,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 3 6"]
+ \ firefox reftest 3 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -411,9 +537,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 4 6"]
+ \ firefox reftest 4 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -429,9 +555,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 5 6"]
+ \ firefox reftest 5 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -447,9 +573,81 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox reftest 6 6"]
+ \ firefox reftest 6 10"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-reftest-7, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox reftest 7 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-reftest-8, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox reftest 8 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-reftest-9, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox reftest 9 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-reftest-10, owner: '{{ event.head.user.email
+ }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox reftest 10 10"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -467,7 +665,7 @@ tasks:
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
\ firefox wdspec 1 1"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -483,9 +681,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 1 12"]
+ \ firefox testharness 1 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -501,9 +699,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 2 12"]
+ \ firefox testharness 2 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -519,9 +717,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 3 12"]
+ \ firefox testharness 3 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -537,9 +735,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 4 12"]
+ \ firefox testharness 4 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -555,9 +753,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 5 12"]
+ \ firefox testharness 5 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -573,9 +771,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 6 12"]
+ \ firefox testharness 6 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -591,9 +789,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 7 12"]
+ \ firefox testharness 7 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -609,9 +807,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 8 12"]
+ \ firefox testharness 8 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -627,9 +825,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 9 12"]
+ \ firefox testharness 9 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -645,9 +843,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 10 12"]
+ \ firefox testharness 10 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -663,9 +861,9 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 11 12"]
+ \ firefox testharness 11 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
- extra:
@@ -681,9 +879,63 @@ tasks:
\ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
\ &&\n git config advice.detachedHead false &&\n git\
\ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
- \ firefox testharness 12 12"]
+ \ firefox testharness 12 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-testharness-13, owner: '{{
+ event.head.user.email }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox testharness 13 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-testharness-14, owner: '{{
+ event.head.user.email }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox testharness 14 15"]
+ image: harjgam/web-platform-tests:0.6
+ maxRunTime: 7200
+ provisionerId: '{{ taskcluster.docker.provisionerId }}'
+ workerType: '{{ taskcluster.docker.workerType }}'
+- extra:
+ github:
+ branches: [master]
+ events: [push]
+ metadata: {description: '', name: wpt-firefox-nightly-testharness-15, owner: '{{
+ event.head.user.email }}', source: '{{ event.head.repo.url }}'}
+ payload:
+ artifacts:
+ public/results: {path: /home/test/artifacts, type: directory}
+ command: [/bin/bash, --login, -c, ">-\n ~/start.sh &&\n \
+ \ cd /home/test/web-platform-tests &&\n git fetch {{event.head.repo.url}}\
+ \ &&\n git config advice.detachedHead false &&\n git\
+ \ checkout {{event.head.sha}} &&\n ./tools/ci/ci_taskcluster.sh\
+ \ firefox testharness 15 15"]
image: harjgam/web-platform-tests:0.6
- maxRunTime: 5400
+ maxRunTime: 7200
provisionerId: '{{ taskcluster.docker.provisionerId }}'
workerType: '{{ taskcluster.docker.workerType }}'
version: 0
diff --git a/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html b/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html
new file mode 100644
index 00000000000..3de78b7cff8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html
@@ -0,0 +1,23 @@
+<html>
+<body>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+
+<script>
+
+promise_test(t => {
+ return fetch("/client-hints/echo_client_hints_received.py").then(r => {
+ assert_equals(r.status, 200)
+ // Verify that the browser does not include client hints in the headers
+ // since Accept-CH is malformed (includes whitespace between attributes
+ // instead of comma).
+ assert_false(r.headers.has("device-memory-received"), "device-memory-received");
+ assert_false(r.headers.has("dpr-received"), "dpr-received");
+ assert_false(r.headers.has("viewport-width-received"), "viewport-width-received");
+ });
+}, "Accept-CH header test");
+
+</script>
+
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html.headers b/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html.headers
new file mode 100644
index 00000000000..6d23758273b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/client-hints/accept_ch_malformed_header.https.html.headers
@@ -0,0 +1 @@
+Accept-CH: device-memory dpr \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/cookie-store/cookieStore_delete_basic.tentative.window.js b/tests/wpt/web-platform-tests/cookie-store/cookieStore_delete_basic.tentative.window.js
new file mode 100644
index 00000000000..8a3f7ed66da
--- /dev/null
+++ b/tests/wpt/web-platform-tests/cookie-store/cookieStore_delete_basic.tentative.window.js
@@ -0,0 +1,10 @@
+'use strict';
+
+promise_test(async testCase => {
+ const p = cookieStore.delete('cookie-name');
+ assert_true(p instanceof Promise,
+ 'cookieStore.delete() returns a promise');
+ const result = await p;
+ assert_equals(result, undefined,
+ 'cookieStore.delete() promise resolves to undefined');
+}, 'cookieStore.delete return type is Promise<void>');
diff --git a/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.html b/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.html
deleted file mode 100644
index 9fa0ee4ff13..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Async Cookies: delete cookies</title>
-<meta name="help" href="https://github.com/WICG/cookie-store/">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="resources/cookie-test-helpers.js"></script>
-<script src="resources/delete_cookies.js"></script>
diff --git a/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.https.html b/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.https.html
deleted file mode 100644
index 192f79be599..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/delete_cookies.tentative.https.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Async Cookies: delete cookies (HTTPS)</title>
-<meta name="help" href="https://github.com/WICG/cookie-store/">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="resources/cookie-test-helpers.js"></script>
-<script src="resources/delete_cookies.js"></script>
diff --git a/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.html b/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.html
deleted file mode 100644
index a88d032bcac..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Async Cookies: get, set, getAll</title>
-<meta name="help" href="https://github.com/WICG/cookie-store/">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="resources/cookie-test-helpers.js"></script>
-<script src="resources/get_set_get_all.js"></script>
diff --git a/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.https.html b/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.https.html
deleted file mode 100644
index 1769b166ecb..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/get_set_get_all.tentative.https.html
+++ /dev/null
@@ -1,8 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Async Cookies: get, set, getAll (HTTPS)</title>
-<meta name="help" href="https://github.com/WICG/cookie-store/">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script src="resources/cookie-test-helpers.js"></script>
-<script src="resources/get_set_get_all.js"></script>
diff --git a/tests/wpt/web-platform-tests/cookie-store/httponly_cookies.window.js b/tests/wpt/web-platform-tests/cookie-store/httponly_cookies.window.js
new file mode 100644
index 00000000000..01239aec58f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/cookie-store/httponly_cookies.window.js
@@ -0,0 +1,47 @@
+// META: script=resources/cookie-test-helpers.js
+
+'use strict';
+
+cookie_test(async t => {
+ let eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringHttp('HTTPONLY-cookie=value; path=/; httponly');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'HttpOnly cookie we wrote using HTTP in cookie jar' +
+ ' is invisible to script');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'HTTPONLY-cookie=value',
+ 'HttpOnly cookie we wrote using HTTP in HTTP cookie jar');
+
+ await setCookieStringHttp('HTTPONLY-cookie=new-value; path=/; httponly');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'HttpOnly cookie we overwrote using HTTP in cookie jar' +
+ ' is invisible to script');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'HTTPONLY-cookie=new-value',
+ 'HttpOnly cookie we overwrote using HTTP in HTTP cookie jar');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringHttp(
+ 'HTTPONLY-cookie=DELETED; path=/; max-age=0; httponly');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'Empty cookie jar after HTTP cookie-clearing using max-age=0');
+ assert_equals(
+ await getCookieStringHttp(),
+ undefined,
+ 'Empty HTTP cookie jar after HTTP cookie-clearing using max-age=0');
+
+ // HTTPONLY cookie changes should not have been observed; perform
+ // a dummy change to verify that nothing else was queued up.
+ await cookieStore.set('TEST', 'dummy');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'TEST', value: 'dummy'}]},
+ 'HttpOnly cookie deletion was not observed');
+}, 'HttpOnly cookies are not observed');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/cookie-test-helpers.js b/tests/wpt/web-platform-tests/cookie-store/resources/cookie-test-helpers.js
index 20f67e3f876..178947ad6ec 100644
--- a/tests/wpt/web-platform-tests/cookie-store/resources/cookie-test-helpers.js
+++ b/tests/wpt/web-platform-tests/cookie-store/resources/cookie-test-helpers.js
@@ -11,41 +11,6 @@ const kIsUnsecured = location.protocol !== 'https:';
const kCookieHelperCgi = 'resources/cookie_helper.py';
-// Async wrapper for an async function or promise that is expected
-// reject in an unsecured (non-https:) context and work in a secured
-// (https:) context.
-//
-// Parameters:
-//
-// - testCase: (TestCase) test case context
-// - code: (Error class or number) expected rejection type in unsecured context
-// - promise: (thenable) test code
-// - message: (optional; string) message to forward to promise_rejects in
-// unsecured context
-async function promise_rejects_when_unsecured(
- testCase,
- code,
- promise,
- message = 'Feature unavailable from unsecured contexts') {
- if (kIsUnsecured)
- await promise_rejects(testCase, code, promise, message);
- else await promise;
-};
-
-// Converts a list of cookie records {name, value} to [name=]value; ... as
-// seen in Cookie: and document.cookie.
-//
-// Parameters:
-// - cookies: (array of {name, value}) records to convert
-//
-// Returns a string serializing the records, or undefined if no records were
-// given.
-function cookieString(cookies) {
- return cookies.length ? cookies.map((
- {name, value}) => (name ? (name + '=') : '') + value).join('; ') :
- undefined;
-}
-
// Approximate async equivalent to the document.cookie getter but with
// important differences: optional additional getAll arguments are
// forwarded, and an empty cookie jar returns undefined.
@@ -56,7 +21,11 @@ function cookieString(cookies) {
// using parsed cookie jar contents and also allows expectations to be
// written more compactly.
async function getCookieString(...args) {
- return cookieString(await cookieStore.getAll(...args));
+ const cookies = await cookieStore.getAll(...args);
+ return cookies.length
+ ? cookies.map(({name, value}) =>
+ (name ? (name + '=') : '') + value).join('; ')
+ : undefined;
}
// Approximate async equivalent to the document.cookie getter but from
@@ -240,31 +209,18 @@ async function verifyCookieChangeEvent(eventPromise, expected, description) {
async function cookie_test(func, description) {
// Wipe cookies used by tests before and after the test.
- async function deleteTestCookies() {
- await cookieStore.delete('');
- await cookieStore.delete('TEST');
- await cookieStore.delete('META-🍪');
- await cookieStore.delete('DOCUMENT-🍪');
- await cookieStore.delete('HTTP-🍪');
- await setCookieStringHttp(
- 'HTTPONLY-🍪=DELETED; path=/; max-age=0; httponly');
- if (!kIsUnsecured) {
- await cookieStore.delete('__Host-COOKIENAME');
- await cookieStore.delete('__Host-1🍪');
- await cookieStore.delete('__Host-2🌟');
- await cookieStore.delete('__Host-3🌱');
- await cookieStore.delete('__Host-unordered1🍪');
- await cookieStore.delete('__Host-unordered2🌟');
- await cookieStore.delete('__Host-unordered3🌱');
- }
+ async function deleteAllCookies() {
+ (await cookieStore.getAll()).forEach(({name, value}) => {
+ cookieStore.delete(name);
+ });
}
return promise_test(async t => {
- await deleteTestCookies();
+ await deleteAllCookies();
try {
return await func(t);
} finally {
- await deleteTestCookies();
+ await deleteAllCookies();
}
}, description);
}
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/delete_cookies.js b/tests/wpt/web-platform-tests/cookie-store/resources/delete_cookies.js
deleted file mode 100644
index 21adadbda9c..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/resources/delete_cookies.js
+++ /dev/null
@@ -1,44 +0,0 @@
-'use strict';
-
-cookie_test(async testCase => {
- // TODO: This test doesn't create cookies and doesn't assert
- // the behavior of delete(). Improve or remove it.
-
- await cookieStore.delete('');
- await cookieStore.delete('TEST');
- await cookieStore.delete('META-🍪');
- await cookieStore.delete('DOCUMENT-🍪');
- await cookieStore.delete('HTTP-🍪');
-
- await setCookieStringHttp(
- 'HTTPONLY-🍪=DELETED; path=/; max-age=0; httponly');
-
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-COOKIENAME'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-1🍪'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-2🌟'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-3🌱'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-unordered1🍪'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-unordered2🌟'));
- await promise_rejects_when_unsecured(
- testCase,
- new TypeError(),
- cookieStore.delete('__Host-unordered3🌱'));
-}, 'Test cookieStore.delete');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/document_cookie.js b/tests/wpt/web-platform-tests/cookie-store/resources/document_cookie.js
index 1809b883501..980347f1d18 100644
--- a/tests/wpt/web-platform-tests/cookie-store/resources/document_cookie.js
+++ b/tests/wpt/web-platform-tests/cookie-store/resources/document_cookie.js
@@ -2,25 +2,43 @@
cookie_test(async t => {
let eventPromise = observeNextCookieChangeEvent();
- await setCookieStringDocument('DOCUMENT-🍪=🔵; path=/');
+ await setCookieStringDocument('DOCUMENT-cookie=value; path=/');
assert_equals(
await getCookieString(),
- 'DOCUMENT-🍪=🔵',
+ 'DOCUMENT-cookie=value',
'Cookie we wrote using document.cookie in cookie jar');
assert_equals(
await getCookieStringHttp(),
- 'DOCUMENT-🍪=🔵',
+ 'DOCUMENT-cookie=value',
'Cookie we wrote using document.cookie in HTTP cookie jar');
assert_equals(
await getCookieStringDocument(),
- 'DOCUMENT-🍪=🔵',
+ 'DOCUMENT-cookie=value',
'Cookie we wrote using document.cookie in document.cookie');
await verifyCookieChangeEvent(
- eventPromise, {changed: [{name: 'DOCUMENT-🍪', value: '🔵'}]},
+ eventPromise, {changed: [{name: 'DOCUMENT-cookie', value: 'value'}]},
'Cookie we wrote using document.cookie is observed');
eventPromise = observeNextCookieChangeEvent();
- await setCookieStringDocument('DOCUMENT-🍪=DELETED; path=/; max-age=0');
+ await setCookieStringDocument('DOCUMENT-cookie=new-value; path=/');
+ assert_equals(
+ await getCookieString(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using document.cookie in cookie jar');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using document.cookie in HTTP cookie jar');
+ assert_equals(
+ await getCookieStringDocument(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using document.cookie in document.cookie');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'DOCUMENT-cookie', value: 'new-value'}]},
+ 'Cookie we overwrote using document.cookie is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringDocument('DOCUMENT-cookie=DELETED; path=/; max-age=0');
assert_equals(
await getCookieString(),
undefined,
@@ -37,7 +55,103 @@ cookie_test(async t => {
'Empty document.cookie cookie jar after document.cookie' +
' cookie-clearing using max-age=0');
await verifyCookieChangeEvent(
+ eventPromise, {deleted: [{name: 'DOCUMENT-cookie'}]},
+ 'Deletion observed after document.cookie cookie-clearing' +
+ ' using max-age=0');
+}, 'document.cookie set/overwrite/delete observed by CookieStore');
+
+cookie_test(async t => {
+ let eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.set('DOCUMENT-cookie', 'value');
+ assert_equals(
+ await getCookieString(),
+ 'DOCUMENT-cookie=value',
+ 'Cookie we wrote using CookieStore in cookie jar');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'DOCUMENT-cookie=value',
+ 'Cookie we wrote using CookieStore in HTTP cookie jar');
+ assert_equals(
+ await getCookieStringDocument(),
+ 'DOCUMENT-cookie=value',
+ 'Cookie we wrote using CookieStore in document.cookie');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'DOCUMENT-cookie', value: 'value'}]},
+ 'Cookie we wrote using CookieStore is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.set('DOCUMENT-cookie', 'new-value');
+ assert_equals(
+ await getCookieString(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using CookieStore in cookie jar');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using CookieStore in HTTP cookie jar');
+ assert_equals(
+ await getCookieStringDocument(),
+ 'DOCUMENT-cookie=new-value',
+ 'Cookie we overwrote using CookieStore in document.cookie');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'DOCUMENT-cookie', value: 'new-value'}]},
+ 'Cookie we overwrote using CookieStore is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.delete('DOCUMENT-cookie');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'Empty cookie jar after CookieStore delete');
+ assert_equals(
+ await getCookieStringHttp(),
+ undefined,
+ 'Empty HTTP cookie jar after CookieStore delete');
+ assert_equals(
+ await getCookieStringDocument(),
+ undefined,
+ 'Empty document.cookie cookie jar after CookieStore delete');
+ await verifyCookieChangeEvent(
+ eventPromise, {deleted: [{name: 'DOCUMENT-cookie'}]},
+ 'Deletion observed after CookieStore delete');
+}, 'CookieStore set/overwrite/delete observed by document.cookie');
+
+
+cookie_test(async t => {
+ let eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringDocument('DOCUMENT-🍪=🔵; path=/');
+ assert_equals(
+ await getCookieString(),
+ 'DOCUMENT-🍪=🔵',
+ 'Cookie we wrote using document.cookie in cookie jar');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'DOCUMENT-🍪', value: '🔵'}]},
+ 'Cookie we wrote using document.cookie is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringDocument('DOCUMENT-🍪=DELETED; path=/; max-age=0');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'Empty cookie jar after document.cookie' +
+ ' cookie-clearing using max-age=0');
+ await verifyCookieChangeEvent(
eventPromise, {deleted: [{name: 'DOCUMENT-🍪'}]},
'Deletion observed after document.cookie cookie-clearing' +
' using max-age=0');
-}, 'Verify interoperability of document.cookie with other APIs.');
+}, 'CookieStore agrees with document.cookie on encoding non-ASCII cookies');
+
+
+cookie_test(async t => {
+ await cookieStore.set('DOCUMENT-🍪', '🔵');
+ assert_equals(
+ await getCookieStringDocument(),
+ 'DOCUMENT-🍪=🔵',
+ 'Cookie we wrote using CookieStore in document.cookie');
+
+ await cookieStore.delete('DOCUMENT-🍪');
+ assert_equals(
+ await getCookieStringDocument(),
+ undefined,
+ 'Empty cookie jar after CookieStore delete');
+}, 'document.cookie agrees with CookieStore on encoding non-ASCII cookies');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/get_set_get_all.js b/tests/wpt/web-platform-tests/cookie-store/resources/get_set_get_all.js
deleted file mode 100644
index 7c9a094d3e8..00000000000
--- a/tests/wpt/web-platform-tests/cookie-store/resources/get_set_get_all.js
+++ /dev/null
@@ -1,74 +0,0 @@
-'use strict';
-
-cookie_test(async t => {
- let eventPromise = observeNextCookieChangeEvent();
- await cookieStore.set('TEST', 'value0');
- assert_equals(
- await getCookieString(),
- 'TEST=value0',
- 'Cookie jar contains only cookie we set');
- assert_equals(
- await getCookieStringHttp(),
- 'TEST=value0',
- 'HTTP cookie jar contains only cookie we set');
- await verifyCookieChangeEvent(
- eventPromise,
- {changed: [{name: 'TEST', value: 'value0'}]},
- 'Observed value that was set');
-
- eventPromise = observeNextCookieChangeEvent();
- await cookieStore.set('TEST', 'value');
- assert_equals(
- await getCookieString(),
- 'TEST=value',
- 'Cookie jar contains only cookie we overwrote');
- await verifyCookieChangeEvent(
- eventPromise,
- {changed: [{name: 'TEST', value: 'value'}]},
- 'Observed value that was overwritten');
-
- let allCookies = await cookieStore.getAll();
- assert_equals(
- allCookies[0].name,
- 'TEST',
- 'First entry in allCookies should be named TEST');
- assert_equals(
- allCookies[0].value,
- 'value',
- 'First entry in allCookies should have value "value"');
- assert_equals(
- allCookies.length,
- 1,
- 'Only one cookie should exist in allCookies');
- let firstCookie = await cookieStore.get();
- assert_equals(
- firstCookie.name,
- 'TEST',
- 'First cookie should be named TEST');
- assert_equals(
- firstCookie.value,
- 'value',
- 'First cookie should have value "value"');
- let allCookies_TEST = await cookieStore.getAll('TEST');
- assert_equals(
- allCookies_TEST[0].name,
- 'TEST',
- 'First entry in allCookies_TEST should be named TEST');
- assert_equals(
- allCookies_TEST[0].value,
- 'value',
- 'First entry in allCookies_TEST should have value "value"');
- assert_equals(
- allCookies_TEST.length,
- 1,
- 'Only one cookie should exist in allCookies_TEST');
- let firstCookie_TEST = await cookieStore.get('TEST');
- assert_equals(
- firstCookie_TEST.name,
- 'TEST',
- 'First TEST cookie should be named TEST');
- assert_equals(
- firstCookie_TEST.value,
- 'value',
- 'First TEST cookie should have value "value"');
-}, 'Get/set/get all cookies in store');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/http_cookie_and_set_cookie_headers.js b/tests/wpt/web-platform-tests/cookie-store/resources/http_cookie_and_set_cookie_headers.js
index 73534c743ce..0fcf6b60429 100644
--- a/tests/wpt/web-platform-tests/cookie-store/resources/http_cookie_and_set_cookie_headers.js
+++ b/tests/wpt/web-platform-tests/cookie-store/resources/http_cookie_and_set_cookie_headers.js
@@ -2,21 +2,35 @@
cookie_test(async t => {
let eventPromise = observeNextCookieChangeEvent();
- await setCookieStringHttp('HTTP-🍪=🔵; path=/');
+ await setCookieStringHttp('HTTP-cookie=value; path=/');
assert_equals(
await getCookieString(),
- 'HTTP-🍪=🔵',
+ 'HTTP-cookie=value',
'Cookie we wrote using HTTP in cookie jar');
assert_equals(
await getCookieStringHttp(),
- 'HTTP-🍪=🔵',
+ 'HTTP-cookie=value',
'Cookie we wrote using HTTP in HTTP cookie jar');
await verifyCookieChangeEvent(
- eventPromise, {changed: [{name: 'HTTP-🍪', value: '🔵'}]},
+ eventPromise, {changed: [{name: 'HTTP-cookie', value: 'value'}]},
'Cookie we wrote using HTTP is observed');
eventPromise = observeNextCookieChangeEvent();
- await setCookieStringHttp('HTTP-🍪=DELETED; path=/; max-age=0');
+ await setCookieStringHttp('HTTP-cookie=new-value; path=/');
+ assert_equals(
+ await getCookieString(),
+ 'HTTP-cookie=new-value',
+ 'Cookie we overwrote using HTTP in cookie jar');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'HTTP-cookie=new-value',
+ 'Cookie we overwrote using HTTP in HTTP cookie jar');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'HTTP-cookie', value: 'new-value'}]},
+ 'Cookie we overwrote using HTTP is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await setCookieStringHttp('HTTP-cookie=DELETED; path=/; max-age=0');
assert_equals(
await getCookieString(),
undefined,
@@ -26,72 +40,149 @@ cookie_test(async t => {
undefined,
'Empty HTTP cookie jar after HTTP cookie-clearing using max-age=0');
await verifyCookieChangeEvent(
- eventPromise, {deleted: [{name: 'HTTP-🍪'}]},
+ eventPromise, {deleted: [{name: 'HTTP-cookie'}]},
'Deletion observed after HTTP cookie-clearing using max-age=0');
- await cookieStore.delete('HTTP-🍪');
-}, 'Interoperability of HTTP Set-Cookie: with other APIs');
+}, 'HTTP set/overwrite/delete observed in CookieStore');
+
cookie_test(async t => {
let eventPromise = observeNextCookieChangeEvent();
- await setCookieStringHttp('HTTPONLY-🍪=🔵; path=/; httponly');
+ await setCookieStringHttp('HTTP-🍪=🔵; path=/');
assert_equals(
await getCookieString(),
- undefined,
- 'HttpOnly cookie we wrote using HTTP in cookie jar' +
- ' is invisible to script');
- assert_equals(
- await getCookieStringHttp(),
- 'HTTPONLY-🍪=🔵',
- 'HttpOnly cookie we wrote using HTTP in HTTP cookie jar');
+ 'HTTP-🍪=🔵',
+ 'Cookie we wrote using HTTP in cookie jar');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'HTTP-🍪', value: '🔵'}]},
+ 'Cookie we wrote using HTTP is observed');
eventPromise = observeNextCookieChangeEvent();
- await setCookieStringHttp(
- 'HTTPONLY-🍪=DELETED; path=/; max-age=0; httponly');
+ await setCookieStringHttp('HTTP-🍪=DELETED; path=/; max-age=0');
assert_equals(
await getCookieString(),
undefined,
- 'Empty cookie jar after HTTP cookie-clearing using max-age=0');
+ 'Empty cookie jar after HTTP cookie-clearing using max-age=0');
+ await verifyCookieChangeEvent(
+ eventPromise, {deleted: [{name: 'HTTP-🍪'}]},
+ 'Deletion observed after HTTP cookie-clearing using max-age=0');
+
+}, 'CookieStore agreed with HTTP headers agree on encoding non-ASCII cookies');
+
+
+cookie_test(async t => {
+ let eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.set('TEST', 'value0');
assert_equals(
- await getCookieStringHttp(),
- undefined,
- 'Empty HTTP cookie jar after HTTP cookie-clearing using max-age=0');
+ await getCookieString(),
+ 'TEST=value0',
+ 'Cookie jar contains only cookie we set');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'TEST=value0',
+ 'HTTP cookie jar contains only cookie we set');
+ await verifyCookieChangeEvent(
+ eventPromise,
+ {changed: [{name: 'TEST', value: 'value0'}]},
+ 'Observed value that was set');
- // HTTPONLY cookie changes should not have been observed; perform
- // a dummy change to verify that nothing else was queued up.
- await cookieStore.set('TEST', 'dummy');
+ eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.set('TEST', 'value');
+ assert_equals(
+ await getCookieString(),
+ 'TEST=value',
+ 'Cookie jar contains only cookie we set');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'TEST=value',
+ 'HTTP cookie jar contains only cookie we set');
await verifyCookieChangeEvent(
- eventPromise, {changed: [{name: 'TEST', value: 'dummy'}]},
- 'HttpOnly cookie deletion was not observed');
-}, 'HttpOnly cookies are not observed');
+ eventPromise,
+ {changed: [{name: 'TEST', value: 'value'}]},
+ 'Observed value that was overwritten');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await cookieStore.delete('TEST');
+ assert_equals(
+ await getCookieString(),
+ undefined,
+ 'Cookie jar does not contain cookie we deleted');
+ assert_equals(
+ await getCookieStringHttp(),
+ undefined,
+ 'HTTP cookie jar does not contain cookie we deleted');
+ await verifyCookieChangeEvent(
+ eventPromise,
+ {deleted: [{name: 'TEST'}]},
+ 'Observed cookie that was deleted');
+}, 'CookieStore set/overwrite/delete observed in HTTP headers');
+
+
+cookie_test(async t => {
+ await cookieStore.set('🍪', '🔵');
+ assert_equals(
+ await getCookieStringHttp(),
+ '🍪=🔵',
+ 'HTTP cookie jar contains only cookie we set');
+
+ await cookieStore.delete('🍪');
+ assert_equals(
+ await getCookieStringHttp(),
+ undefined,
+ 'HTTP cookie jar does not contain cookie we deleted');
+}, 'HTTP headers agreed with CookieStore on encoding non-ASCII cookies');
+
cookie_test(async t => {
// Non-UTF-8 byte sequences cause the Set-Cookie to be dropped.
let eventPromise = observeNextCookieChangeEvent();
await setCookieBinaryHttp(
- unescape(encodeURIComponent('HTTP-🍪=🔵')) + '\xef\xbf\xbd; path=/');
+ unescape(encodeURIComponent('HTTP-cookie=value')) + '\xef\xbf\xbd; path=/');
assert_equals(
await getCookieString(),
- 'HTTP-🍪=🔵\ufffd',
+ 'HTTP-cookie=value\ufffd',
'Binary cookie we wrote using HTTP in cookie jar');
assert_equals(
await getCookieStringHttp(),
- 'HTTP-🍪=🔵\ufffd',
+ 'HTTP-cookie=value\ufffd',
'Binary cookie we wrote using HTTP in HTTP cookie jar');
assert_equals(
decodeURIComponent(escape(await getCookieBinaryHttp())),
- 'HTTP-🍪=🔵\ufffd',
+ 'HTTP-cookie=value\ufffd',
'Binary cookie we wrote in binary HTTP cookie jar');
assert_equals(
await getCookieBinaryHttp(),
- unescape(encodeURIComponent('HTTP-🍪=🔵')) + '\xef\xbf\xbd',
+ unescape(encodeURIComponent('HTTP-cookie=value')) + '\xef\xbf\xbd',
'Binary cookie we wrote in binary HTTP cookie jar');
await verifyCookieChangeEvent(
- eventPromise, {changed: [{name: 'HTTP-🍪', value: '🔵\ufffd'}]},
+ eventPromise, {changed: [{name: 'HTTP-cookie', value: 'value\ufffd'}]},
'Binary cookie we wrote using HTTP is observed');
eventPromise = observeNextCookieChangeEvent();
await setCookieBinaryHttp(
- unescape(encodeURIComponent('HTTP-🍪=DELETED; path=/; max-age=0')));
+ unescape(encodeURIComponent('HTTP-cookie=new-value')) + '\xef\xbf\xbd; path=/');
+ assert_equals(
+ await getCookieString(),
+ 'HTTP-cookie=new-value\ufffd',
+ 'Binary cookie we overwrote using HTTP in cookie jar');
+ assert_equals(
+ await getCookieStringHttp(),
+ 'HTTP-cookie=new-value\ufffd',
+ 'Binary cookie we overwrote using HTTP in HTTP cookie jar');
+ assert_equals(
+ decodeURIComponent(escape(await getCookieBinaryHttp())),
+ 'HTTP-cookie=new-value\ufffd',
+ 'Binary cookie we overwrote in binary HTTP cookie jar');
+ assert_equals(
+ await getCookieBinaryHttp(),
+ unescape(encodeURIComponent('HTTP-cookie=new-value')) + '\xef\xbf\xbd',
+ 'Binary cookie we overwrote in binary HTTP cookie jar');
+ await verifyCookieChangeEvent(
+ eventPromise, {changed: [{name: 'HTTP-cookie', value: 'new-value\ufffd'}]},
+ 'Binary cookie we overwrote using HTTP is observed');
+
+ eventPromise = observeNextCookieChangeEvent();
+ await setCookieBinaryHttp(
+ unescape(encodeURIComponent('HTTP-cookie=DELETED; path=/; max-age=0')));
assert_equals(
await getCookieString(),
undefined,
@@ -107,6 +198,6 @@ cookie_test(async t => {
'Empty binary HTTP cookie jar after' +
' binary HTTP cookie-clearing using max-age=0');
await verifyCookieChangeEvent(
- eventPromise, {deleted: [{name: 'HTTP-🍪'}]},
+ eventPromise, {deleted: [{name: 'HTTP-cookie'}]},
'Deletion observed after binary HTTP cookie-clearing using max-age=0');
-}, 'Binary HTTP cookies');
+}, 'Binary HTTP set/overwrite/delete observed in CookieStore');
diff --git a/tests/wpt/web-platform-tests/cookie-store/resources/ordering.js b/tests/wpt/web-platform-tests/cookie-store/resources/ordering.js
index 884361b9df0..86babd95edb 100644
--- a/tests/wpt/web-platform-tests/cookie-store/resources/ordering.js
+++ b/tests/wpt/web-platform-tests/cookie-store/resources/ordering.js
@@ -1,40 +1,38 @@
'use strict';
-// TODO(jsbell): Does this test really need simple origin ('__Host-') cookies?
-
cookie_test(async t => {
- await cookieStore.set('__Host-1🍪', '🔵cookie-value1🔴');
- await cookieStore.set('__Host-2🌟', '🌠cookie-value2🌠');
- await cookieStore.set('__Host-3🌱', '🔶cookie-value3🔷');
+ await cookieStore.set('ordered-1', 'cookie-value1');
+ await cookieStore.set('ordered-2', 'cookie-value2');
+ await cookieStore.set('ordered-3', 'cookie-value3');
// NOTE: this assumes no concurrent writes from elsewhere; it also
// uses three separate cookie jar read operations where a single getAll
// would be more efficient, but this way the CookieStore does the filtering
// for us.
- const matchingValues = await Promise.all([ '1🍪', '2🌟', '3🌱' ].map(
- async suffix => (await cookieStore.get('__Host-' + suffix)).value));
+ const matchingValues = await Promise.all(['1', '2', '3'].map(
+ async suffix => (await cookieStore.get('ordered-' + suffix)).value));
const actual = matchingValues.join(';');
- const expected = '🔵cookie-value1🔴;🌠cookie-value2🌠;🔶cookie-value3🔷';
+ const expected = 'cookie-value1;cookie-value2;cookie-value3';
assert_equals(actual, expected);
}, 'Set three simple origin session cookies sequentially and ensure ' +
'they all end up in the cookie jar in order.');
cookie_test(async t => {
await Promise.all([
- cookieStore.set('__Host-unordered1🍪', '🔵unordered-cookie-value1🔴'),
- cookieStore.set('__Host-unordered2🌟', '🌠unordered-cookie-value2🌠'),
- cookieStore.set('__Host-unordered3🌱', '🔶unordered-cookie-value3🔷')
+ cookieStore.set('ordered-unordered1', 'unordered-cookie-value1'),
+ cookieStore.set('ordered-unordered2', 'unordered-cookie-value2'),
+ cookieStore.set('ordered-unordered3', 'unordered-cookie-value3')
]);
// NOTE: this assumes no concurrent writes from elsewhere; it also
// uses three separate cookie jar read operations where a single getAll
// would be more efficient, but this way the CookieStore does the filtering
// for us and we do not need to sort.
- const matchingCookies = await Promise.all([ '1🍪', '2🌟', '3🌱' ].map(
- suffix => cookieStore.get('__Host-unordered' + suffix)));
+ const matchingCookies = await Promise.all(['1', '2', '3'].map(
+ suffix => cookieStore.get('ordered-unordered' + suffix)));
const actual = matchingCookies.map(({ value }) => value).join(';');
const expected =
- '🔵unordered-cookie-value1🔴;' +
- '🌠unordered-cookie-value2🌠;' +
- '🔶unordered-cookie-value3🔷';
+ 'unordered-cookie-value1;' +
+ 'unordered-cookie-value2;' +
+ 'unordered-cookie-value3';
assert_equals(actual, expected);
}, 'Set three simple origin session cookies in undefined order using ' +
'Promise.all and ensure they all end up in the cookie jar in any ' +
diff --git a/tests/wpt/web-platform-tests/css/.gitignore b/tests/wpt/web-platform-tests/css/.gitignore
index 20072eb659e..3ed165f4bd6 100644
--- a/tests/wpt/web-platform-tests/css/.gitignore
+++ b/tests/wpt/web-platform-tests/css/.gitignore
@@ -2,6 +2,7 @@ dist
dist_last
build-temp
tools/cache
+tools/_virtualenv
*.xcodeproj
*.DS_Store
*.pyc
diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-beside-adjoining-float.html b/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-beside-adjoining-float.html
new file mode 100644
index 00000000000..91adbfce2d3
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-beside-adjoining-float.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<title>A new formatting context that fits beside an adjoining float, and thus pulls down the float with its top margin</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#bfc-next-to-float" title="9.5 Floats">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property">
+<meta name="assert" content="The float is adjoining with the box that establishes a new formatting context when it fits beside it, and will therefore be affected by its margin">
+<link rel="match" href="../../reference/ref-filled-green-200px-square.html">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="overflow:hidden; width:200px; background:green;">
+ <div style="width:300px; margin-top:50px; background:red;">
+ <div>
+ <div style="float:left; width:200px; height:10px; background:green;"></div>
+ </div>
+ <div style="margin-top:190px; overflow:hidden; width:100px; height:10px; background:red;"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-separates-from-float.html b/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-separates-from-float.html
new file mode 100644
index 00000000000..89ee7516ecf
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/CSS2/floats/new-fc-separates-from-float.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<title>A new formatting context that doesn't fit beside a float make the float non-adjoining</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#bfc-next-to-float" title="9.5 Floats">
+<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property">
+<meta name="assert" content="Although the 'clear' property isn't specified in this test, a new formatting context that doesn't fit below a float that would otherwise be adjoining will need to separate its margin from the float, so that it doesn't affect the float. This is very similar to clearance.">
+<link rel="match" href="../../reference/ref-filled-green-200px-square.html">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="overflow:hidden; width:200px; background:red;">
+ <div>
+ <div>
+ <div style="float:left; width:200px; height:200px; background:green;"></div>
+ </div>
+ <div style="margin-top:200px; overflow:hidden; width:200px; height:1px; background:white;"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/background-rounded-image-clip.html b/tests/wpt/web-platform-tests/css/css-backgrounds/background-rounded-image-clip.html
deleted file mode 100644
index 1179ba54996..00000000000
--- a/tests/wpt/web-platform-tests/css/css-backgrounds/background-rounded-image-clip.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Background Clip Follows Rounded Corner</title>
-<link rel="match" href="reference/background-rounded-image-clip.html">
-<link rel="help" href="https://drafts.csswg.org/css-backgrounds-3/#corner-clipping">
-<style>
- html {
- background-color: green;
- }
- #a {
- top: 20px;
- left: 20px;
- position: absolute;
- width: 20px;
- height: 20px;
- background-color: black;
- }
-
- #b {
- position: absolute;
- width: 300px;
- height: 200px;
- background-image: linear-gradient(green, green);
- background-clip: content-box;
- border-top-left-radius: 90px;
- border-width: 10px;
- border-style: solid;
- border-color: transparent;
- }
-</style>
-<div id="a"></div>
-<div id="b"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-rounded-image-clip.html b/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-rounded-image-clip.html
deleted file mode 100644
index 2436bedad50..00000000000
--- a/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-rounded-image-clip.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html>
-<meta charset="utf-8">
-<title>Corner Clipped Background Color</title>
-<style>
- html {
- background-color: green;
- }
- #a {
- top: 20px;
- left: 20px;
- position: absolute;
- width: 20px;
- height: 20px;
- background-color: black;
- }
-</style>
-<div id="a"></div>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/percentage-size-subitems-001.html b/tests/wpt/web-platform-tests/css/css-flexbox/percentage-size-subitems-001.html
new file mode 100644
index 00000000000..70f3953052a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/percentage-size-subitems-001.html
@@ -0,0 +1,93 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Flexbox Test: Percentage size on child of a flex item with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#flex-items">
+<link rel="match" href="reference/percentage-size-subitems-001-ref.html">
+<meta name="assert" content="Checks that flex items children resolve properly their percentage sizes, even when the flex item has margin, border, padding and scrollbar.">
+<style>
+.flex {
+ display: inline-flex;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+ margin: 10px;
+ vertical-align: top;
+}
+
+.item {
+ flex: 1;
+ overflow: scroll;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ background: cyan;
+}
+
+.subitem {
+ width: 100%;
+ height: 100%;
+ background: yellow;
+}
+
+.horizontalTB { writing-mode: horizontal-tb; }
+.verticalLR { writing-mode: vertical-lr; }
+.verticalRL { writing-mode: vertical-rl; }
+</style>
+
+<p>The test passes if in the different examples you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-flexbox/reference/percentage-size-subitems-001-ref.html b/tests/wpt/web-platform-tests/css/css-flexbox/reference/percentage-size-subitems-001-ref.html
new file mode 100644
index 00000000000..b9883c5f2e7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-flexbox/reference/percentage-size-subitems-001-ref.html
@@ -0,0 +1,92 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Refttest Reference: Percentage size on child of a flex item with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<style>
+.flex {
+ display: inline-block;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+ margin: 10px;
+ vertical-align: top;
+}
+
+.item {
+ overflow: scroll;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ background: cyan;
+ width: calc(100% - 6px);
+ height: calc(100% - 4px);
+ box-sizing: border-box;
+}
+
+.subitem {
+ width: 100%;
+ height: 100%;
+ background: yellow;
+}
+
+.horizontalTB { writing-mode: horizontal-tb; }
+.verticalLR { writing-mode: vertical-lr; }
+.verticalRL { writing-mode: vertical-rl; }
+</style>
+
+<p>The test passes if in the different examples you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item horizontalTB">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalLR">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="flex">
+ <div class="item verticalRL">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload-ref.html
new file mode 100644
index 00000000000..e3ba8caa32f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload-ref.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<title>font-display should work for preloaded fonts</title>
+<style>
+ .arial {
+ height: 20px;
+ font-family: Arial;
+ }
+</style>
+<div id="container">
+ <div class="arial"></div>
+ <div class="arial"></div>
+ <div class="arial">Swap</div>
+ <div class="arial">Fallback</div>
+ <div class="arial">Optional</div>
+</div>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload.html b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload.html
new file mode 100644
index 00000000000..46f392ff847
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display-preload.html
@@ -0,0 +1,51 @@
+<!DOCTYPE html>
+<html class="reftest-wait">
+<title>font-display should work for preloaded fonts</title>
+<link id="link" href="/fonts/Ahem.ttf?pipe=trickle(d5)" as="font" type="font/ttf" crossorigin>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#font-display-desc">
+<link rel="match" href="font-display-preload-ref.html">
+<style>
+ @font-face {
+ font-family: 'Auto';
+ src: url('/fonts/Ahem.ttf?pipe=trickle(d5)');
+ font-display: auto;
+ }
+ @font-face {
+ font-family: 'Block';
+ src: url('/fonts/Ahem.ttf?pipe=trickle(d5)');
+ font-display: block;
+ }
+ @font-face {
+ font-family: 'Swap';
+ src: url('/fonts/Ahem.ttf?pipe=trickle(d5)');
+ font-display: swap;
+ }
+ @font-face {
+ font-family: 'Fallback';
+ src: url('/fonts/Ahem.ttf?pipe=trickle(d5)');
+ font-display: fallback;
+ }
+ @font-face {
+ font-family: 'Optional';
+ src: url('/fonts/Ahem.ttf?pipe=trickle(d5)');
+ font-display: optional;
+ }
+</style>
+<div id="container" hidden>
+ <div style="height: 20px; font-family: 'Auto', Arial">Auto</div>
+ <div style="height: 20px; font-family: 'Block', Arial">Block</div>
+ <div style="height: 20px; font-family: 'Swap', Arial">Swap</div>
+ <div style="height: 20px; font-family: 'Fallback', Arial">Fallback</div>
+ <div style="height: 20px; font-family: 'Optional', Arial">Optional</div>
+</div>
+<script>
+ window.onload = () => {
+ document.getElementById('link').rel = 'preload';
+ document.getElementById('container').hidden = false;
+ const timeoutMsec = 200; // Between the short limit and the long limit
+ setTimeout(() => {
+ document.documentElement.classList.remove("reftest-wait");
+ }, timeoutMsec);
+ };
+</script>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display.html b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display.html
index 9336377e88a..7b174607efa 100644
--- a/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display.html
+++ b/tests/wpt/web-platform-tests/css/css-fonts/font-display/font-display.html
@@ -1,6 +1,7 @@
<!DOCTYPE html>
<html class="reftest-wait">
<title>Test for font-display @font-face descriptor</title>
+<link rel="help" href="https://drafts.csswg.org/css-fonts-4/#font-display-desc">
<link rel="match" href="font-display-ref.html">
<style>
.hidden { display: none; }
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001-ref.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001-ref.html
new file mode 100644
index 00000000000..939504e81d2
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001-ref.html
@@ -0,0 +1,93 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Refttest Reference: Percentage size on child of a grid item with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<style>
+.grid {
+ display: inline-block;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+ margin: 10px;
+ vertical-align: top;
+}
+
+.item {
+ overflow: scroll;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ background: cyan;
+ width: calc(100% - 6px);
+ height: calc(100% - 4px);
+ box-sizing: border-box;
+}
+
+.subitem {
+ width: 100%;
+ height: 100%;
+ background: yellow;
+ font: 20px/1 Ahem;
+}
+
+.horizontalTB { writing-mode: horizontal-tb; }
+.verticalLR { writing-mode: vertical-lr; }
+.verticalRL { writing-mode: vertical-rl; }
+</style>
+
+<p>The test passes if in the different examples you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html b/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html
new file mode 100644
index 00000000000..ad009906191
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html
@@ -0,0 +1,91 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Test: Percentage size on child of a grid item with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-items">
+<link rel="match" href="percentage-size-subitems-001-ref.html">
+<meta name="assert" content="Checks that grid items children resolve properly their percentage sizes, even when the grid item has margin, border, padding and scrollbar.">
+<style>
+.grid {
+ display: inline-grid;
+ border: solid 5px black;
+ grid: 100px / 150px;
+ margin: 10px;
+ vertical-align: top;
+}
+
+.item {
+ overflow: scroll;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ background: cyan;
+}
+
+.subitem {
+ width: 100%;
+ height: 100%;
+ background: yellow;
+}
+
+.horizontalTB { writing-mode: horizontal-tb; }
+.verticalLR { writing-mode: vertical-lr; }
+.verticalRL { writing-mode: vertical-rl; }
+</style>
+
+<p>The test passes if in the different examples you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item horizontalTB">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalLR">
+ <div class="subitem verticalRL"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem horizontalTB"></div>
+ </div>
+</div>
+
+<div class="grid">
+ <div class="item verticalRL">
+ <div class="subitem verticalLR"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-invalid.html
new file mode 100644
index 00000000000..e53486e62d1
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-invalid.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing gradients with invalid position values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#typedef-position">
+<meta name="assert" content="gradient positions support only the '<position>' grammar.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// The following were supported in an earlier version of the spec.
+// https://github.com/w3c/csswg-drafts/issues/2140
+// Deprecated in Blink with support to be removed in M68, around July 2018.
+test_invalid_value("background-image", "radial-gradient(at center left 1px, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at center top 2px, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at right 3% center, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at left 4px top, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at right top 5px, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at bottom 6% center, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at bottom 7% left, red, blue)");
+test_invalid_value("background-image", "radial-gradient(at bottom right 8%, red, blue)");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-valid.html
new file mode 100644
index 00000000000..6eae484752c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/gradient-position-valid.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing gradients with valid position values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-values-4/#typedef-position">
+<meta name="assert" content="gradient positions support the full '<position>' grammar.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// Where two values are shown, the first serialization is being used by Blink/Firefox/WebKit and the second by Edge.
+
+test_valid_value("background-image", "radial-gradient(at 10%, red, blue)", ["radial-gradient(at 10% center, red, blue)", "radial-gradient(at 10%, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at 20% 30px, red, blue)");
+test_valid_value("background-image", "radial-gradient(at 30px center, red, blue)", ["radial-gradient(at 30px center, red, blue)", "radial-gradient(at 30px, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at 40px top, red, blue)");
+test_valid_value("background-image", "radial-gradient(at bottom 10% right 20%, red, blue)", "radial-gradient(at right 20% bottom 10%, red, blue)");
+test_valid_value("background-image", "radial-gradient(at bottom right, red, blue)", "radial-gradient(at right bottom, red, blue)");
+test_valid_value("background-image", "radial-gradient(at center, red, blue)", ["radial-gradient(at center center, red, blue)", "radial-gradient(at center, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at center 50px, red, blue)");
+test_valid_value("background-image", "radial-gradient(at center bottom, red, blue)", ["radial-gradient(at center bottom, red, blue)", "radial-gradient(at bottom, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at center center, red, blue)", ["radial-gradient(at center center, red, blue)", "radial-gradient(at center, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at center left, red, blue)", ["radial-gradient(at left center, red, blue)", "radial-gradient(at left, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at left, red, blue)", ["radial-gradient(at left center, red, blue)", "radial-gradient(at left, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at left bottom, red, blue)");
+test_valid_value("background-image", "radial-gradient(at left center, red, blue)", ["radial-gradient(at left center, red, blue)", "radial-gradient(at left, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at right 40%, red, blue)");
+test_valid_value("background-image", "radial-gradient(at right 30% top 60px, red, blue)");
+test_valid_value("background-image", "radial-gradient(at top, red, blue)", ["radial-gradient(at center top, red, blue)", "radial-gradient(at top, red, blue)"]);
+test_valid_value("background-image", "radial-gradient(at top center, red, blue)", ["radial-gradient(at center top, red, blue)", "radial-gradient(at top, red, blue)"]);
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-invalid.html
new file mode 100644
index 00000000000..b36d9b7dd55
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-invalid.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing image-orientation with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-image-orientation">
+<meta name="assert" content="image-orientation supports only the grammar 'from-image | <angle> | [ <angle>? flip ]'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("image-orientation", "auto");
+test_invalid_value("image-orientation", "none");
+test_invalid_value("image-orientation", "0");
+test_invalid_value("image-orientation", "0 flip");
+test_invalid_value("image-orientation", "0deg from-image");
+test_invalid_value("image-orientation", "flip 0deg");
+test_invalid_value("image-orientation", "flip from-image");
+test_invalid_value("image-orientation", "from-image 0deg");
+test_invalid_value("image-orientation", "from-image flip");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-valid.html
new file mode 100644
index 00000000000..1ed7548834d
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-orientation-valid.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing image-orientation with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-image-orientation">
+<meta name="assert" content="image-orientation supports the full grammar 'from-image | <angle> | [ <angle>? flip ]'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("image-orientation", "from-image");
+test_valid_value("image-orientation", "30deg");
+test_valid_value("image-orientation", "flip", "0deg flip"); // "0deg flip" in Firefox.
+test_valid_value("image-orientation", "-1.25turn flip");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-invalid.html
new file mode 100644
index 00000000000..84b0727572e
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-invalid.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing image-rendering with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-image-rendering">
+<meta name="assert" content="image-rendering supports only the grammar 'auto | smooth | high-quality | crisp-edges | pixelated'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("image-rendering", "none");
+test_invalid_value("image-rendering", "high-quality crisp-edges");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-valid.html
new file mode 100644
index 00000000000..80ea1c446da
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-rendering-valid.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing image-rendering with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-image-rendering">
+<meta name="assert" content="image-rendering supports the full grammar 'auto | smooth | high-quality | crisp-edges | pixelated'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("image-rendering", "auto");
+test_valid_value("image-rendering", "smooth");
+test_valid_value("image-rendering", "high-quality");
+test_valid_value("image-rendering", "crisp-edges");
+test_valid_value("image-rendering", "pixelated");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-invalid.html
new file mode 100644
index 00000000000..332ad154317
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-invalid.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 4: parsing image-resolution with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-4/#propdef-image-resolution">
+<meta name="assert" content="image-resolution supports only the grammar '[ from-image || <resolution> ] && snap?'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("image-resolution", "auto");
+test_invalid_value("image-resolution", "100%");
+test_invalid_value("image-resolution", "2");
+test_invalid_value("image-resolution", "3dpi snap from-image");
+test_invalid_value("image-resolution", "from-image snap 4dppx");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-valid.html
new file mode 100644
index 00000000000..9317902c822
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/image-resolution-valid.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 4: parsing image-resolution with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-4/#propdef-image-resolution">
+<meta name="assert" content="image-resolution supports the full grammar '[ from-image || <resolution> ] && snap?'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+
+
+
+test_valid_value("image-resolution", "1dpi");
+test_valid_value("image-resolution", "2dpcm from-image");
+test_valid_value("image-resolution", "3dppx from-image snap");
+test_valid_value("image-resolution", "4dpi snap");
+test_valid_value("image-resolution", "from-image");
+test_valid_value("image-resolution", "from-image 5dpcm");
+test_valid_value("image-resolution", "from-image 6dppx snap");
+test_valid_value("image-resolution", "from-image snap");
+test_valid_value("image-resolution", "snap 7.5dpi");
+test_valid_value("image-resolution", "snap -8dpcm from-image");
+test_valid_value("image-resolution", "snap from-image");
+test_valid_value("image-resolution", "snap from-image 0dppx");
+
+
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-invalid.html
new file mode 100644
index 00000000000..e4a298b91a3
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-invalid.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 4: parsing object-fit with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-4/#propdef-object-fit">
+<meta name="assert" content="object-fit supports only the grammar 'fill | none | [contain | cover] || scale-down'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("object-fit", "auto");
+test_invalid_value("object-fit", "contain cover");
+test_invalid_value("object-fit", "fill scale-down");
+test_invalid_value("object-fit", "contain fill");
+test_invalid_value("object-fit", "cover none");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-valid.html
new file mode 100644
index 00000000000..0f73cfe256c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/object-fit-valid.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 4: parsing object-fit with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-4/#propdef-object-fit">
+<meta name="assert" content="object-fit supports the full grammar 'fill | none | [contain | cover] || scale-down'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("object-fit", "contain");
+test_valid_value("object-fit", "contain scale-down");
+test_valid_value("object-fit", "cover");
+test_valid_value("object-fit", "cover scale-down");
+test_valid_value("object-fit", "fill");
+test_valid_value("object-fit", "none");
+test_valid_value("object-fit", "scale-down");
+test_valid_value("object-fit", "scale-down contain");
+test_valid_value("object-fit", "scale-down cover");
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-invalid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-invalid.html
new file mode 100644
index 00000000000..87de7b9231a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-invalid.html
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing object-position with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-object-position">
+<meta name="assert" content="object-position supports only the '<position>' grammar.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("object-position", "auto");
+test_invalid_value("object-position", "1px 2px 3px");
+test_invalid_value("object-position", "left right");
+test_invalid_value("object-position", "bottom 10% top 20%");
+
+// The following were supported in an earlier version of the spec.
+// https://github.com/w3c/csswg-drafts/issues/2140
+// Deprecated in Blink with support to be removed in M68, around July 2018.
+test_invalid_value("object-position", "center left 1px");
+test_invalid_value("object-position", "center top 2px");
+test_invalid_value("object-position", "right 3% center");
+test_invalid_value("object-position", "left 4px top");
+test_invalid_value("object-position", "right top 5px");
+test_invalid_value("object-position", "bottom 6% center");
+test_invalid_value("object-position", "bottom 7% left");
+test_invalid_value("object-position", "bottom right 8%");
+
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-valid.html b/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-valid.html
new file mode 100644
index 00000000000..f78f67e6326
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/object-position-valid.html
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Images Module Level 3: parsing object-position with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-images-3/#propdef-object-position">
+<meta name="assert" content="object-position supports the full '<position>' grammar.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// First serialization is being returned by Blink/Firefox/WebKit, second by Edge.
+test_valid_value("object-position", "10%", ["10% center", "10% 50%"]);
+test_valid_value("object-position", "right 30% top 60px"); // "calc(70%) 60px" in Edge.
+test_valid_value("object-position", "20% 30px");
+test_valid_value("object-position", "30px center", ["30px center", "30px 50%"]);
+test_valid_value("object-position", "40px top", ["40px top", "40px 0%"]);
+test_valid_value("object-position", "bottom 10% right 20%", "right 20% bottom 10%"); // "calc(80%) calc(90%)" in Edge.
+test_valid_value("object-position", "bottom right", ["right bottom", "100% 100%"]);
+test_valid_value("object-position", "center 50px", ["center 50px", "50% 50px"]);
+test_valid_value("object-position", "center bottom", ["center bottom", "50% 100%"]);
+test_valid_value("object-position", "center left", ["left center", "0% 50%"]);
+test_valid_value("object-position", "left", ["left center", "0% 50%"]);
+test_valid_value("object-position", "left bottom", ["left bottom", "0% 100%"]);
+test_valid_value("object-position", "left center", ["left center", "0% 50%"]);
+test_valid_value("object-position", "right 40%", ["right 40%", "100% 40%"]);
+test_valid_value("object-position", "top", ["center top", "50% 0%"]);
+test_valid_value("object-position", "top center", ["center top", "50% 0%"]);
+
+// ["center center"] in Blink and Firefox, "center" in WebKit, "50% 50%" in Edge.
+test_valid_value("object-position", "center", ["center center", "center", "50% 50%"]);
+test_valid_value("object-position", "center center", ["center center", "center", "50% 50%"]);
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-images/parsing/resources/parsing-testcommon.js b/tests/wpt/web-platform-tests/css/css-images/parsing/resources/parsing-testcommon.js
new file mode 100644
index 00000000000..9427f53d81b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-images/parsing/resources/parsing-testcommon.js
@@ -0,0 +1,39 @@
+'use strict';
+
+// serializedValue can be the expected serialization of value,
+// or an array of permitted serializations,
+// or omitted if value should serialize as value.
+function test_valid_value(property, value, serializedValue) {
+ if (arguments.length < 3)
+ serializedValue = value;
+
+ var stringifiedValue = JSON.stringify(value);
+
+ test(function(){
+ var div = document.createElement('div');
+ div.style[property] = value;
+ assert_not_equals(div.style[property], "", "property should be set");
+
+ var div = document.createElement('div');
+ div.style[property] = value;
+ var readValue = div.style[property];
+ if (serializedValue instanceof Array)
+ assert_true(serializedValue.includes(readValue), "serialization should be sound");
+ else
+ assert_equals(readValue, serializedValue, "serialization should be canonical");
+
+ div.style[property] = readValue;
+ assert_equals(div.style[property], readValue, "serialization should round-trip");
+
+ }, "e.style['" + property + "'] = " + stringifiedValue + " should set the property value");
+}
+
+function test_invalid_value(property, value) {
+ var stringifiedValue = JSON.stringify(value);
+
+ test(function(){
+ var div = document.createElement('div');
+ div.style[property] = value;
+ assert_equals(div.style[property], "");
+ }, "e.style['" + property + "'] = " + stringifiedValue + " should not set the property value");
+}
diff --git a/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent-ref.html b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent-ref.html
new file mode 100644
index 00000000000..86956adf1de
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent-ref.html
@@ -0,0 +1,12 @@
+<!doctype html>
+<meta charset=utf-8>
+<!-- Our target div should be placed as if it were a child of the overflowing --
+ -- thing; this is simplest to accomplish by just having the overflowing thing --
+ -- absolutely positioned so the target div is placed as if it were not there -->
+<div style="overflow: auto; height: 100px; width: 200px; position: absolute">
+ <div style="width: 400px; height: 10px"></div>
+</div>
+<div id="target">Modified text</div>
+<script>
+ document.querySelector("div").scrollLeft = 1000;
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent.html b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent.html
new file mode 100644
index 00000000000..e342e8c2750
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-parent.html
@@ -0,0 +1,17 @@
+<!doctype html>
+<meta charset=utf-8>
+<title></title>
+<link rel=match href=hypothetical-box-scroll-parent-ref.html>
+<link rel="help"
+ href="https://www.w3.org/TR/CSS2/visudet.html#abs-non-replaced-width">
+<div style="overflow: auto; height: 100px; width: 200px">
+ <div id="target" style="position: absolute">Original text</div>
+ <div style="width: 400px; height: 10px"></div>
+</div>
+<script>
+ // Scroll the parent.
+ document.querySelector("div").scrollLeft = 1000;
+
+ // Now force relayout of the abs pos div.
+ document.getElementById("target").textContent = "Modified text";
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport-ref.html b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport-ref.html
new file mode 100644
index 00000000000..368da5f6d42
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport-ref.html
@@ -0,0 +1,7 @@
+<!doctype html>
+<meta charset=utf-8>
+<div>Modified text</div>
+<div style="width: 200vw; height: 10px"></div>
+<script>
+ window.scrollTo(window.innerWidth * 2, 0);
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport.html b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport.html
new file mode 100644
index 00000000000..9ccb822f107
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-position/hypothetical-box-scroll-viewport.html
@@ -0,0 +1,15 @@
+<!doctype html>
+<meta charset=utf-8>
+<title></title>
+<link rel=match href=hypothetical-box-scroll-viewport-ref.html>
+<link rel="help"
+ href="https://www.w3.org/TR/CSS2/visudet.html#abs-non-replaced-width">
+<div style="position: absolute">Original text</div>
+<div style="width: 200vw; height: 10px"></div>
+<script>
+ // Scroll the viewport.
+ window.scrollTo(window.innerWidth * 2, 0);
+
+ // Now force relayout of the abs pos div.
+ document.querySelector("div").textContent = "Modified text";
+</script>
diff --git a/tests/wpt/web-platform-tests/css/css-syntax/declarations-trim-whitespace.html b/tests/wpt/web-platform-tests/css/css-syntax/declarations-trim-whitespace.html
new file mode 100644
index 00000000000..a7d69d149e7
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-syntax/declarations-trim-whitespace.html
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Declarations trim whitespace from their beginning/ending</title>
+<meta name="author" title="Tab Atkins-Bittner">
+<link rel=help href="https://drafts.csswg.org/css-syntax/#consume-declaration">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<body>
+ <div id="log"></div>
+ <style id="style-el">
+ #foo {
+ --foo-1:bar;
+ --foo-2: bar;
+ --foo-3:bar ;
+ --foo-4: bar ;
+ --foo-5: bar !important;
+ --foo-6: bar !important ;
+ --foo-7:bar!important;
+ --foo-8:bar!important ;
+ --foo-9:bar
+ }
+ </style>
+ <p id=foo>foo</p>
+ <script>
+ let stylesheet = getComputedStyle(document.querySelector("#foo"));
+ let canonical = "bar";
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-1"), canonical);
+ }, "--foo-1:bar;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-2"), canonical);
+ }, "--foo-2: bar;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-3"), canonical);
+ }, "--foo-3:bar ;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-4"), canonical);
+ }, "--foo-4: bar ;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-5"), canonical);
+ }, "--foo-5: bar !important;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-6"), canonical);
+ }, "--foo-6: bar !important ;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-7"), canonical);
+ }, "--foo-7:bar!important;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-8"), canonical);
+ }, "--foo-8:bar!important ;");
+ test(function() {
+ assert_equals(stylesheet.getPropertyValue("--foo-9"), canonical);
+ }, "--foo-9:bar (then ws until end of rule)");
+ </script>
diff --git a/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html
new file mode 100644
index 00000000000..37fe964e9ab
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002-ref.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reftest Reference: Percentage sizing of table cell children with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<style>
+.table {
+ display: block;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+}
+
+.td {
+ background: cyan;
+ overflow: scroll;
+ padding: 5px 15px 10px 20px;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ height: 100px;
+ box-sizing: border-box;
+}
+
+.child {
+ background: yellow;
+ width: 100%;
+ height: 100%;
+}
+</style>
+
+<p>The test passes if you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="table">
+ <div class="td">
+ <div class="child"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html
new file mode 100644
index 00000000000..814aa2791d8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-children-002.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Table Test: Percentage sizing of table cell children with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-tables-3/#content-measure">
+<link rel="match" href="percentage-sizing-of-table-cell-children-002-ref.html">
+<meta name="assert" content="Checks that table cell children resolve properly their percentage sizes, even when the table cell has margin, border, padding and scrollbar.">
+<style>
+.table {
+ display: table;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+}
+
+.td {
+ display: table-cell;
+ background: cyan;
+ overflow: scroll;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+}
+
+.child {
+ background: yellow;
+ width: 100%;
+ height: 100%;
+}
+</style>
+
+<p>The test passes if you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="table">
+ <div class="td">
+ <div class="child"></div>
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html
new file mode 100644
index 00000000000..3919e1e24a6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001-ref.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reftest Reference: Percentage sizing of table cell children with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<style>
+.table {
+ display: block;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+}
+
+.td {
+ background: cyan;
+ overflow: scroll;
+ padding: 5px 15px 10px 20px;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+ height: 100px;
+ box-sizing: border-box;
+}
+
+img {
+ display: block;
+ background: yellow;
+ width: 100%;
+ height: 100%;
+}
+</style>
+
+<p>The test passes if you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="table">
+ <div class="td">
+ <img />
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html
new file mode 100644
index 00000000000..2d3673800b5
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-tables/height-distribution/percentage-sizing-of-table-cell-replaced-children-001.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Table Test: Percentage sizing of table cell replaced children with margin, border, padding and scrollbar</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-tables-3/#content-measure">
+<link rel="match" href="percentage-sizing-of-table-cell-replaced-children-001-ref.html">
+<meta name="assert" content="Checks that table cell replaced children resolve properly their percentage sizes, even when the table cell has margin, border, padding and scrollbar.">
+<style>
+.table {
+ display: table;
+ border: solid 5px black;
+ width: 150px;
+ height: 100px;
+}
+
+.td {
+ display: table-cell;
+ background: cyan;
+ overflow: scroll;
+ margin: 1px 2px 3px 4px;
+ padding: 5px 15px 10px 20px;
+ border: solid magenta;
+ border-width: 12px 9px 6px 3px;
+}
+
+img {
+ display: block;
+ background: yellow;
+ width: 100%;
+ height: 100%;
+}
+</style>
+
+<p>The test passes if you see scrollbars but there's no overflow, so you cannot actually scroll.</p>
+
+<div class="table">
+ <div class="td">
+ <img />
+ </div>
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html b/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html
new file mode 100644
index 00000000000..0fd818c5a35
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001-ref.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Reftest Reference: Percentage size on orthogonal replaced elements</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<style>
+.container {
+ display: inline-block;
+ border: solid 5px black;
+ margin: 10px;
+ vertical-align: top;
+ width: 200px;
+ height: 100px;
+}
+
+img {
+ display: block;
+ width: 200px;
+ height: 100px;
+}
+
+</style>
+
+<p>The test passes if you see four filled lime rectangles with black border and <strong>no red</strong>.</p>
+
+<div class="container">
+ <img src="support/100x100-lime.png" />
+</div>
+
+<div class="container">
+ <img src="support/100x100-lime.png" />
+</div>
+
+<div class="container">
+ <img src="support/100x100-lime.png" />
+</div>
+
+<div class="container">
+ <img src="support/100x100-lime.png" />
+</div>
diff --git a/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html b/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html
new file mode 100644
index 00000000000..6829920c802
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-writing-modes/sizing-percentages-replaced-orthogonal-001.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Writing Modes Test: Percentage size on orthogonal replaced elements</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-writing-modes-3/#orthogonal-auto">
+<link rel="match" href="sizing-percentages-replaced-orthogonal-001-ref.html">
+<meta name="assert" content="Checks that orthogonal replaced elements resolve properly their percentage sizes against the expected axis from their containing block.">
+<style>
+.container {
+ display: inline-block;
+ border: solid 5px black;
+ margin: 10px;
+ vertical-align: top;
+ width: 200px;
+ height: 100px;
+ background: red;
+}
+
+img {
+ display: block;
+ width: 100%;
+ height: 100%;
+}
+
+.horizontalTB { writing-mode: horizontal-tb; }
+.verticalLR { writing-mode: vertical-lr; }
+.verticalRL { writing-mode: vertical-rl; }
+</style>
+
+<p>The test passes if you see four filled lime rectangles with black border and <strong>no red</strong>.</p>
+
+<div class="container horizontalTB">
+ <img class="verticalLR" src="support/100x100-lime.png" />
+</div>
+
+<div class="container horizontalTB">
+ <img class="verticalRL" src="support/100x100-lime.png" />
+</div>
+
+<div class="container verticalLR">
+ <img class="horizontalTB" src="support/100x100-lime.png" />
+</div>
+
+<div class="container verticalRL">
+ <img class="horizontalTB" src="support/100x100-lime.png" />
+</div>
diff --git a/tests/wpt/web-platform-tests/css/cssom-view/scroll-behavior-smooth.html b/tests/wpt/web-platform-tests/css/cssom-view/scroll-behavior-smooth.html
index f144a5f61cd..e1a7a6a1680 100644
--- a/tests/wpt/web-platform-tests/css/cssom-view/scroll-behavior-smooth.html
+++ b/tests/wpt/web-platform-tests/css/cssom-view/scroll-behavior-smooth.html
@@ -56,5 +56,85 @@
window.scrollTo(0, 0);
}, "BODY element scroll-behavior should not propagate to viewport");
+ var instantHistoryNavigationTest =
+ async_test("Instant scrolling while doing history navigation.");
+ var smoothHistoryNavigationTest =
+ async_test("Smooth scrolling while doing history navigation.");
+
+ function instant() {
+ document.documentElement.className = "";
+ document.body.className = "";
+ window.scrollTo(0, 0);
+ var p = document.createElement("pre");
+ p.textContent = new Array(1000).join("newline\n");
+ var a = document.createElement("a");
+ a.href = "#";
+ a.name = "foo";
+ a.textContent = "foo";
+ p.appendChild(a);
+ document.body.appendChild(p);
+ window.onhashchange = function() {
+ window.onhashchange = function() {
+ instantHistoryNavigationTest.step(function() {
+ assert_equals(location.hash, "", "Shouldn't be scrolled to a fragment.");
+ assert_equals(window.scrollY, 0, "Shouldn't be scrolled back to top yet.");
+ });
+ p.remove();
+ instantHistoryNavigationTest.done();
+ smooth();
+ }
+
+ instantHistoryNavigationTest.step(function() {
+ assert_equals(location.hash, "#foo", "Should be scrolled to a fragment.");
+ assert_not_equals(window.scrollY, 0, "Shouldn't be scrolled to top anymore.");
+ });
+ history.back();
+ }
+
+ instantHistoryNavigationTest.step(function() {
+ assert_equals(window.scrollY, 0, "Should be scrolled to top.");
+ assert_equals(location.hash, "", "Shouldn't be scrolled to a fragment.");
+ });
+ location.hash = "foo";
+ };
+ instant();
+
+ function smooth() {
+ document.documentElement.className = "";
+ document.body.className = "";
+ window.scrollTo(0, 0);
+ var p = document.createElement("pre");
+ p.textContent = new Array(1000).join("newline\n");
+ var a = document.createElement("a");
+ a.href = "#";
+ a.name = "bar";
+ a.textContent = "bar";
+ p.appendChild(a);
+ document.body.appendChild(p);
+ window.onhashchange = function() {
+ window.onhashchange = function() {
+ smoothHistoryNavigationTest.step(function() {
+ assert_equals(location.hash, "", "Shouldn't be scrolled to a fragment.");
+ assert_not_equals(window.scrollY, 0, "Shouldn't be scrolled back to top yet.");
+ });
+ p.remove();
+ smoothHistoryNavigationTest.done();
+ }
+
+ smoothHistoryNavigationTest.step(function() {
+ assert_equals(location.hash, "#bar", "Should be scrolled to a fragment.");
+ assert_not_equals(window.scrollY, 0, "Shouldn't be scrolled to top anymore.");
+ });
+ history.back();
+ }
+
+ smoothHistoryNavigationTest.step(function() {
+ assert_equals(window.scrollY, 0, "Should be scrolled to top.");
+ assert_equals(location.hash, "", "Shouldn't be scrolled to a fragment.");
+ });
+ location.hash = "bar";
+ document.documentElement.className = "smooth";
+ };
+
testContainer.style.display = "none";
</script>
diff --git a/tests/wpt/web-platform-tests/dom/nodes/Document-constructor.html b/tests/wpt/web-platform-tests/dom/nodes/Document-constructor.html
index 2f26982c965..ceb41926f85 100644
--- a/tests/wpt/web-platform-tests/dom/nodes/Document-constructor.html
+++ b/tests/wpt/web-platform-tests/dom/nodes/Document-constructor.html
@@ -36,6 +36,7 @@ test(function() {
assert_equals(doc.contentType, "application/xml");
assert_equals(doc.origin, document.origin);
assert_equals(doc.createElement("DIV").localName, "DIV");
+ assert_equals(doc.createElement("a").constructor, Element);
}, "new Document(): metadata")
test(function() {
@@ -47,7 +48,8 @@ test(function() {
test(function() {
var doc = new Document();
- var a = doc.createElement("a");
+ var a = doc.createElementNS("http://www.w3.org/1999/xhtml", "a");
+ assert_equals(a.constructor, HTMLAnchorElement);
// In UTF-8: 0xC3 0xA4
a.href = "http://example.org/?\u00E4";
assert_equals(a.href, "http://example.org/?%C3%A4");
diff --git a/tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html b/tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html
index e9c7cba2022..e9c7cba2022 100644
--- a/tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.sub.html
+++ b/tests/wpt/web-platform-tests/feature-policy/experimental-features/vertical-scroll-scrollintoview.tentative.html
diff --git a/tests/wpt/web-platform-tests/fetch/api/headers/headers-idl.html b/tests/wpt/web-platform-tests/fetch/api/headers/headers-idl.html
deleted file mode 100644
index 078c9d01495..00000000000
--- a/tests/wpt/web-platform-tests/fetch/api/headers/headers-idl.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <meta charset="utf-8">
- <title>Headers idl interface</title>
- <meta name="help" href="https://fetch.spec.whatwg.org/#response">
- <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/resources/WebIDLParser.js"></script>
- <script src="/resources/idlharness.js"></script>
- </head>
- <body>
- <script id="headers-idl" type="text/plain">
- typedef (sequence<sequence<ByteString>> or record<ByteString, ByteString>) HeadersInit;
-
- [Constructor(optional HeadersInit init),
- Exposed=(Window,Worker)]
- interface Headers {
- void append(ByteString name, ByteString value);
- void delete(ByteString name);
- ByteString? get(ByteString name);
- boolean has(ByteString name);
- void set(ByteString name, ByteString value);
- iterable<ByteString, ByteString>;
- };
- </script>
- <script>
- var idlsArray = new IdlArray();
- var idl = document.getElementById("headers-idl").textContent
- idlsArray.add_idls(idl);
- idlsArray.add_objects({ Headers: ['new Headers()'] });
- idlsArray.test();
- </script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/fetch/api/idl.any.js b/tests/wpt/web-platform-tests/fetch/api/idl.any.js
new file mode 100644
index 00000000000..cae5ca3769a
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/api/idl.any.js
@@ -0,0 +1,18 @@
+// META: global=window,worker
+// META: script=/resources/WebIDLParser.js
+// META: script=/resources/idlharness.js
+
+promise_test(async() => {
+ const text = await (await fetch("/interfaces/fetch.idl")).text();
+ const idl_array = new IdlArray();
+ idl_array.add_idls(text);
+ idl_array.add_untested_idls("[Exposed=(Window,Worker)] interface AbortSignal {};");
+ idl_array.add_untested_idls("[Exposed=(Window,Worker)] interface ReadableStream {};");
+ idl_array.add_untested_idls("enum ReferrerPolicy {};");
+ idl_array.add_objects({
+ Headers: ["new Headers()"],
+ Request: ["new Request('about:blank')"],
+ Response: ["new Response()"],
+ });
+ idl_array.test();
+}, "Fetch Standard IDL");
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/destination/fetch-destination.https.html b/tests/wpt/web-platform-tests/fetch/api/request/destination/fetch-destination.https.html
index 27b510268dd..5d9f7173591 100644
--- a/tests/wpt/web-platform-tests/fetch/api/request/destination/fetch-destination.https.html
+++ b/tests/wpt/web-platform-tests/fetch/api/request/destination/fetch-destination.https.html
@@ -425,4 +425,18 @@ promise_test(async t => {
});
}, 'HTMLLinkElement with rel=preload and as=manifest fetches with a "manifest" Request.destination');
+// HTMLLinkElement with rel=prefetch - empty string destination
+promise_test(async t => {
+ await new Promise((resolve, reject) => {
+ let node = frame.contentWindow.document.createElement("link");
+ node.rel = "prefetch";
+ node.onload = resolve;
+ node.onerror = reject;
+ node.href = "dummy?dest=";
+ frame.contentWindow.document.body.appendChild(node);
+ }).catch(() => {
+ assert_unreached("Fetch errored.");
+ });
+}, 'HTMLLinkElement with rel=prefetch fetches with an empty string Request.destination');
+
</script>
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-idl.html b/tests/wpt/web-platform-tests/fetch/api/request/request-idl.html
deleted file mode 100644
index f7833779ce2..00000000000
--- a/tests/wpt/web-platform-tests/fetch/api/request/request-idl.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <meta charset="utf-8">
- <title>Request idl interface</title>
- <meta name="help" href="https://fetch.spec.whatwg.org/#response">
- <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/resources/WebIDLParser.js"></script>
- <script src="/resources/idlharness.js"></script>
- </head>
- <body>
- <script id="body-idl" type="text/plain">
- typedef any JSON;
- typedef (Blob or BufferSource or FormData or URLSearchParams or USVString) BodyInit;
-
- interface mixin Body {
- readonly attribute ReadableStream? body;
- readonly attribute boolean bodyUsed;
- [NewObject] Promise<ArrayBuffer> arrayBuffer();
- [NewObject] Promise<Blob> blob();
- [NewObject] Promise<FormData> formData();
- [NewObject] Promise<JSON> json();
- [NewObject] Promise<USVString> text();
- };
- </script>
- <script id="request-idl" type="text/plain">
- typedef (Request or USVString) RequestInfo;
-
- [Constructor(RequestInfo input, optional RequestInit init),
- Exposed=(Window,Worker)]
- interface Request {
- readonly attribute ByteString method;
- readonly attribute USVString url;
- [SameObject] readonly attribute Headers headers;
-
- readonly attribute RequestDestination destination;
- readonly attribute USVString referrer;
- readonly attribute ReferrerPolicy referrerPolicy;
- readonly attribute RequestMode mode;
- readonly attribute RequestCredentials credentials;
- readonly attribute RequestCache cache;
- readonly attribute RequestRedirect redirect;
- readonly attribute DOMString integrity;
-
- [NewObject] Request clone();
- };
- Request includes Body;
-
- dictionary RequestInit {
- ByteString method;
- HeadersInit headers;
- BodyInit? body;
- USVString referrer;
- ReferrerPolicy referrerPolicy;
- RequestMode mode;
- RequestCredentials credentials;
- RequestCache cache;
- RequestRedirect redirect;
- DOMString integrity;
- any window; // can only be set to null
- };
-
- enum RequestType { "", "audio", "font", "image", "script", "style", "track", "video" };
- enum RequestDestination { "", "document", "sharedworker", "subresource", "unknown", "worker" };
- enum RequestMode { "navigate", "same-origin", "no-cors", "cors" };
- enum RequestCredentials { "omit", "same-origin", "include" };
- enum RequestCache { "default", "no-store", "reload", "no-cache", "force-cache", "only-if-cached" };
- enum RequestRedirect { "follow", "error", "manual" };
- enum ReferrerPolicy {
- "", "no-referrer", "no-referrer-when-downgrade", "origin",
- "origin-when-cross-origin", "unsafe-url", "same-origin", "strict-origin",
- "strict-origin-when-cross-origin"
- };
- </script>
- <script>
- var idlsArray = new IdlArray();
- var idl = document.getElementById("body-idl").textContent
- idl += document.getElementById("request-idl").textContent
-
- idlsArray.add_idls(idl);
- idlsArray.add_untested_idls("interface Headers {};");
- idlsArray.add_objects({ Request: ['new Request("")'] });
- idlsArray.test();
- </script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-reset-attributes.https.html b/tests/wpt/web-platform-tests/fetch/api/request/request-reset-attributes.https.html
new file mode 100644
index 00000000000..ba04d19a877
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/api/request/request-reset-attributes.https.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="/service-workers/service-worker/resources/test-helpers.sub.js"></script>
+<body>
+<script>
+const worker = 'resources/request-reset-attributes-worker.js';
+
+promise_test(async (t) => {
+ const scope = 'resources/hello.txt?name=isReloadNavigation';
+ let frame;
+ let reg;
+
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'old: false, new: false');
+ await new Promise((resolve) => {
+ frame.onload = resolve;
+ frame.contentWindow.location.reload();
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'old: true, new: false');
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+ }, 'Request.isReloadNavigation is reset with non-empty RequestInit');
+</script>
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/request-structure.html b/tests/wpt/web-platform-tests/fetch/api/request/request-structure.html
index ccdb707795c..3f82e9c448b 100644
--- a/tests/wpt/web-platform-tests/fetch/api/request/request-structure.html
+++ b/tests/wpt/web-platform-tests/fetch/api/request/request-structure.html
@@ -99,6 +99,11 @@
newValue = true;
break;
+ case "isReloadNavigation":
+ defaultValue = false;
+ newValue = true;
+ break;
+
default:
return;
}
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/resources/hello.txt b/tests/wpt/web-platform-tests/fetch/api/request/resources/hello.txt
new file mode 100644
index 00000000000..ce013625030
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/api/request/resources/hello.txt
@@ -0,0 +1 @@
+hello
diff --git a/tests/wpt/web-platform-tests/fetch/api/request/resources/request-reset-attributes-worker.js b/tests/wpt/web-platform-tests/fetch/api/request/resources/request-reset-attributes-worker.js
new file mode 100644
index 00000000000..4b264ca2fec
--- /dev/null
+++ b/tests/wpt/web-platform-tests/fetch/api/request/resources/request-reset-attributes-worker.js
@@ -0,0 +1,19 @@
+self.addEventListener('fetch', (event) => {
+ const params = new URL(event.request.url).searchParams;
+ if (params.has('ignore')) {
+ return;
+ }
+ if (!params.has('name')) {
+ event.respondWith(Promise.reject(TypeError('No name is provided.')));
+ return;
+ }
+
+ const name = params.get('name');
+ const old_attribute = event.request[name];
+ // If any of |init|'s member is present...
+ const init = {cache: 'no-store'}
+ const new_attribute = (new Request(event.request, init))[name];
+
+ event.respondWith(
+ new Response(`old: ${old_attribute}, new: ${new_attribute}`));
+ });
diff --git a/tests/wpt/web-platform-tests/fetch/api/response/response-idl.html b/tests/wpt/web-platform-tests/fetch/api/response/response-idl.html
deleted file mode 100644
index bd265fa203d..00000000000
--- a/tests/wpt/web-platform-tests/fetch/api/response/response-idl.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <meta charset="utf-8">
- <title>Response idl interface</title>
- <meta name="help" href="https://fetch.spec.whatwg.org/#response">
- <meta name="author" title="Canon Research France" href="https://www.crf.canon.fr">
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <script src="/resources/WebIDLParser.js"></script>
- <script src="/resources/idlharness.js"></script>
- </head>
- <body>
- <script id="body-idl" type="text/plain">
- typedef any JSON;
- typedef (Blob or BufferSource or FormData or URLSearchParams or USVString) BodyInit;
-
- interface mixin Body {
- readonly attribute ReadableStream? body;
- readonly attribute boolean bodyUsed;
- [NewObject] Promise<ArrayBuffer> arrayBuffer();
- [NewObject] Promise<Blob> blob();
- [NewObject] Promise<FormData> formData();
- [NewObject] Promise<JSON> json();
- [NewObject] Promise<USVString> text();
- };
- </script>
- <script id="response-idl" type="text/plain">
- [Constructor(optional BodyInit body, optional ResponseInit init),
- Exposed=(Window,Worker)]
- interface Response {
- [NewObject] static Response error();
- [NewObject] static Response redirect(USVString url, optional unsigned short status = 302);
-
- readonly attribute ResponseType type;
-
- readonly attribute USVString url;
- readonly attribute unsigned short status;
- readonly attribute boolean ok;
- readonly attribute ByteString statusText;
- [SameObject] readonly attribute Headers headers;
- readonly attribute Promise<Headers> trailer;
-
- [NewObject] Response clone();
- };
- Response includes Body;
-
- dictionary ResponseInit {
- unsigned short status = 200;
- ByteString statusText = "OK";
- HeadersInit headers;
- };
-
- enum ResponseType { "basic", "cors", "default", "error", "opaque", "opaqueredirect" };
- </script>
- <script>
- var idlsArray = new IdlArray();
- var idl = document.getElementById("body-idl").textContent
- idl += document.getElementById("response-idl").textContent
-
- idlsArray.add_idls(idl);
- idlsArray.add_untested_idls("interface Headers {};");
- idlsArray.add_untested_idls("interface ReadableStream {};");
- idlsArray.add_objects({ Response: ['new Response()'] });
- idlsArray.test();
- </script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/browsers/history/the-history-interface/history_pushstate_url.html b/tests/wpt/web-platform-tests/html/browsers/history/the-history-interface/history_pushstate_url.html
deleted file mode 100644
index cfbca35bfdf..00000000000
--- a/tests/wpt/web-platform-tests/html/browsers/history/the-history-interface/history_pushstate_url.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<!doctype html>
-<html>
-<head>
-<meta charset="utf-8">
-<title>History pushState sets the url</title>
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-</head>
-<body>
-<div id="log"></div>
-<script>
-async_test(function(t) {
- var oldLocation = window.location.toString();
- window.history.pushState(null, "", "#hash");
- assert_equals(oldLocation + "#hash", window.location.toString(), "pushState updates url");
- history.back();
- window.onhashchange = () => {
- assert_equals(oldLocation, window.location.toString(), 'history traversal restores old url');
- t.done();
- };
-}, "history pushState sets url");
-</script>
-</body>
-</html>
diff --git a/tests/wpt/web-platform-tests/html/browsers/offline/browser-state/navigator_online_event-manual.https.html b/tests/wpt/web-platform-tests/html/browsers/offline/browser-state/navigator_online_event-manual.https.html
index b100f177eb1..81cad4f4fe2 100644
--- a/tests/wpt/web-platform-tests/html/browsers/offline/browser-state/navigator_online_event-manual.https.html
+++ b/tests/wpt/web-platform-tests/html/browsers/offline/browser-state/navigator_online_event-manual.https.html
@@ -25,12 +25,18 @@
</div>
<script>
- function showOnline() {
- document.getElementById('actualMsg').innerHTML = 'online event is raised.';
+ function showOnline(e) {
+ let msg = 'online event is raised';
+ if (e.target != window)
+ msg += ' (on the WRONG target)';
+ document.getElementById('actualMsg').innerHTML = msg + '.';
}
- function showOffline() {
- document.getElementById('actualMsg').innerHTML = 'offline event is raised.';
+ function showOffline(e) {
+ let msg = 'offline event is raised';
+ if (e.target != window)
+ msg += ' (on the WRONG target)';
+ document.getElementById('actualMsg').innerHTML = msg + '.';
}
window.addEventListener("online", showOnline, false);
diff --git a/tests/wpt/web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js b/tests/wpt/web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js
new file mode 100644
index 00000000000..5c8e7d68e23
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/mutation-events.window.js
@@ -0,0 +1,22 @@
+// In an ideal world this test would eventually be obsolete due to mutation events disappearing. Or
+// would have to change to account for mutation events not firing synchronously. Neither seems
+// realistic to the author though.
+
+test(t => {
+ const frame = document.body.appendChild(document.createElement("iframe"));
+ frame.contentWindow.addEventListener("DOMNodeInserted", t.unreached_func());
+ frame.contentWindow.addEventListener("DOMNodeInserted", t.unreached_func(), true);
+ frame.contentWindow.addEventListener("DOMNodeInsertedIntoDocument", t.unreached_func(), true);
+ frame.contentWindow.addEventListener("DOMNodeRemoved", t.unreached_func());
+ frame.contentWindow.addEventListener("DOMNodeRemoved", t.unreached_func(), true);
+ frame.contentWindow.addEventListener("DOMNodeRemovedFromDocument", t.unreached_func(), true);
+ frame.contentWindow.addEventListener("DOMSubtreeModified", t.unreached_func());
+ frame.contentWindow.addEventListener("DOMSubtreeModified", t.unreached_func(), true);
+ assert_equals(frame.contentDocument.documentElement.localName, "html");
+ frame.contentDocument.open();
+ assert_equals(frame.contentDocument.documentElement, null);
+ frame.contentDocument.write("<div>heya</div>");
+ frame.contentDocument.close();
+ assert_equals(frame.contentDocument.documentElement.localName, "html");
+ frame.remove();
+}, "document.open(), the HTML parser, and mutation events");
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html
new file mode 100644
index 00000000000..0fe91713869
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/constructing-form-data-set.html
@@ -0,0 +1,32 @@
+<!DOCTYPE html>
+<head>
+<meta charset="utf-8">
+<link rel="help" href="https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#constructing-the-form-data-set">
+<link ref="help" href="https://xhr.spec.whatwg.org/#dom-formdata">
+<link rel="help" href="https://fetch.spec.whatwg.org/#concept-bodyinit-extract">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+</head>
+<body>
+
+<iframe name="frame1"></iframe>
+<form accept-charset="iso-8859-1" target="frame1" action="/common/blank.html">
+<input type="hidden" name="_charset_">
+</form>
+
+<script>
+test(() => {
+ let formData = new FormData(document.querySelector('form'));
+ assert_equals(formData.get('_charset_'), 'UTF-8');
+}, 'FormData constructor always produces UTF-8 _charset_ value.');
+
+let t = async_test('_charset_ control sets the expected encoding name.');
+t.step(() => {
+ let iframe = document.querySelector('iframe');
+ iframe.onload = t.step_func_done(() => {
+ assert_not_equals(iframe.contentDocument.URL.indexOf('_charset_=windows-1252'), -1);
+ });
+ document.querySelector('form').submit();
+});
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/infrastructure/OWNERS b/tests/wpt/web-platform-tests/infrastructure/OWNERS
new file mode 100644
index 00000000000..684dcf3c014
--- /dev/null
+++ b/tests/wpt/web-platform-tests/infrastructure/OWNERS
@@ -0,0 +1,4 @@
+@gsnedders
+@jgraham
+@jugglinmike
+@kereliuk
diff --git a/tests/wpt/web-platform-tests/infrastructure/browsers/firefox/prefs.html b/tests/wpt/web-platform-tests/infrastructure/browsers/firefox/prefs.html
new file mode 100644
index 00000000000..64a985a4d1b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/infrastructure/browsers/firefox/prefs.html
@@ -0,0 +1,7 @@
+<title>Ensure that setting gecko prefs works</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+assert_equals(getComputedStyle(document.documentElement).color, "rgb(0, 255, 0)")
+</script>
+<p>This should be green</p>
diff --git a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini
new file mode 100644
index 00000000000..3e0ed18107c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/__dir__.ini
@@ -0,0 +1,2 @@
+disabled:
+ if product != "firefox": true \ No newline at end of file
diff --git a/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini
new file mode 100644
index 00000000000..7b78d216de8
--- /dev/null
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/browsers/firefox/prefs.html.ini
@@ -0,0 +1,2 @@
+[prefs.html]
+ prefs: ["browser.display.foreground_color:#00FF00"]
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_and_fail.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini
index 81aef049cd1..81aef049cd1 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_and_fail.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_and_fail.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_cycle_fail.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini
index 472b33f7764..472b33f7764 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_cycle_fail.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_cycle_fail.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_match_fail.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini
index f3dc3362fac..f3dc3362fac 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_match_fail.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_match_fail.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_mismatch_fail.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini
index 1055337e2d6..1055337e2d6 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_mismatch_fail.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_mismatch_fail.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_ref_timeout.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini
index 8936241ad29..8936241ad29 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_ref_timeout.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_ref_timeout.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_timeout.html.ini b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini
index 0d1b9bade95..0d1b9bade95 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/metadata/reftest/reftest_timeout.html.ini
+++ b/tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/reftest/reftest_timeout.html.ini
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/green-ref.html
index 0e145d60b55..0e145d60b55 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/green-ref.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green.html b/tests/wpt/web-platform-tests/infrastructure/reftest/green.html
index 38167bb58d5..38167bb58d5 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/green.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/green.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/red.html b/tests/wpt/web-platform-tests/infrastructure/reftest/red.html
index 2b677e00634..2b677e00634 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/red.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/red.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest.https.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest.https.html
index 5a45f10f35e..5a45f10f35e 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest.https.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest.https.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail.html
index 29601953562..29601953562 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail_0-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html
index 04fb9aa1517..04fb9aa1517 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_and_fail_0-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_and_fail_0-ref.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle.html
index 4a84a3b6741..4a84a3b6741 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_0-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html
index 118bfd88447..118bfd88447 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_0-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_0-ref.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_1-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html
index 59be0b641de..59be0b641de 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_1-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_1-ref.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html
index 175e76c4cc9..175e76c4cc9 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail_0-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html
index c8e548c4622..c8e548c4622 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_cycle_fail_0-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_cycle_fail_0-ref.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match.html
index 333cc6c1ecd..333cc6c1ecd 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match_fail.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match_fail.html
index a9272ef74da..a9272ef74da 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_match_fail.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_match_fail.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch.html
index af5fa0750d8..af5fa0750d8 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch_fail.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html
index 8d160c4fc20..8d160c4fc20 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_mismatch_fail.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_mismatch_fail.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_or_0.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_or_0.html
index 3a51de21644..3a51de21644 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_or_0.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_or_0.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout-ref.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-ref.html
index 04cbb71e0c3..2f52c05979f 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout-ref.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout-ref.html
@@ -1,6 +1,5 @@
<html class="reftest-wait">
<title>rel=match that should time out in the ref</title>
-<link rel=match href=reftest_ref_timeout-ref.html>
<style>
:root {background-color:green}
</style>
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html
index aaf68f5cb5f..aaf68f5cb5f 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_ref_timeout.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_ref_timeout.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_timeout.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_timeout.html
index b10e676bf00..b10e676bf00 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_timeout.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_timeout.html
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_wait_0.html b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_0.html
index 4f92715c61e..fec62a3cae0 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/test/testdata/reftest/reftest_wait_0.html
+++ b/tests/wpt/web-platform-tests/infrastructure/reftest/reftest_wait_0.html
@@ -1,6 +1,6 @@
<html class="reftest-wait">
-<title>rel=match that should fail</title>
-<link rel=match href=red.html>
+<title>Test with reftest-wait</title>
+<link rel=match href=green.html>
<style>
:root {background-color:red}
</style>
diff --git a/tests/wpt/web-platform-tests/interfaces/fetch.idl b/tests/wpt/web-platform-tests/interfaces/fetch.idl
new file mode 100644
index 00000000000..346d1b08819
--- /dev/null
+++ b/tests/wpt/web-platform-tests/interfaces/fetch.idl
@@ -0,0 +1,97 @@
+typedef (sequence<sequence<ByteString>> or record<ByteString, ByteString>) HeadersInit;
+
+[Constructor(optional HeadersInit init),
+ Exposed=(Window,Worker)]
+interface Headers {
+ void append(ByteString name, ByteString value);
+ void delete(ByteString name);
+ ByteString? get(ByteString name);
+ boolean has(ByteString name);
+ void set(ByteString name, ByteString value);
+ iterable<ByteString, ByteString>;
+};
+typedef (Blob or BufferSource or FormData or URLSearchParams or ReadableStream or USVString) BodyInit;
+interface mixin Body {
+ readonly attribute ReadableStream? body;
+ readonly attribute boolean bodyUsed;
+ [NewObject] Promise<ArrayBuffer> arrayBuffer();
+ [NewObject] Promise<Blob> blob();
+ [NewObject] Promise<FormData> formData();
+ [NewObject] Promise<any> json();
+ [NewObject] Promise<USVString> text();
+};
+typedef (Request or USVString) RequestInfo;
+
+[Constructor(RequestInfo input, optional RequestInit init),
+ Exposed=(Window,Worker)]
+interface Request {
+ readonly attribute ByteString method;
+ readonly attribute USVString url;
+ [SameObject] readonly attribute Headers headers;
+
+ readonly attribute RequestDestination destination;
+ readonly attribute USVString referrer;
+ readonly attribute ReferrerPolicy referrerPolicy;
+ readonly attribute RequestMode mode;
+ readonly attribute RequestCredentials credentials;
+ readonly attribute RequestCache cache;
+ readonly attribute RequestRedirect redirect;
+ readonly attribute DOMString integrity;
+ readonly attribute boolean keepalive;
+ readonly attribute boolean isReloadNavigation;
+ readonly attribute AbortSignal signal;
+
+ [NewObject] Request clone();
+};
+Request includes Body;
+
+dictionary RequestInit {
+ ByteString method;
+ HeadersInit headers;
+ BodyInit? body;
+ USVString referrer;
+ ReferrerPolicy referrerPolicy;
+ RequestMode mode;
+ RequestCredentials credentials;
+ RequestCache cache;
+ RequestRedirect redirect;
+ DOMString integrity;
+ boolean keepalive;
+ AbortSignal? signal;
+ any window; // can only be set to null
+};
+
+enum RequestDestination { "", "audio", "audioworklet", "document", "embed", "font", "image", "manifest", "object", "paintworklet", "report", "script", "sharedworker", "style", "track", "video", "worker", "xslt" };
+enum RequestMode { "navigate", "same-origin", "no-cors", "cors" };
+enum RequestCredentials { "omit", "same-origin", "include" };
+enum RequestCache { "default", "no-store", "reload", "no-cache", "force-cache", "only-if-cached" };
+enum RequestRedirect { "follow", "error", "manual" };
+[Constructor(optional BodyInit? body = null, optional ResponseInit init), Exposed=(Window,Worker)]
+interface Response {
+ [NewObject] static Response error();
+ [NewObject] static Response redirect(USVString url, optional unsigned short status = 302);
+
+ readonly attribute ResponseType type;
+
+ readonly attribute USVString url;
+ readonly attribute boolean redirected;
+ readonly attribute unsigned short status;
+ readonly attribute boolean ok;
+ readonly attribute ByteString statusText;
+ [SameObject] readonly attribute Headers headers;
+ readonly attribute Promise<Headers> trailer;
+
+ [NewObject] Response clone();
+};
+Response includes Body;
+
+dictionary ResponseInit {
+ unsigned short status = 200;
+ ByteString statusText = "OK";
+ HeadersInit headers;
+};
+
+enum ResponseType { "basic", "cors", "default", "error", "opaque", "opaqueredirect" };
+partial interface mixin WindowOrWorkerGlobalScope {
+ [NewObject] Promise<Response> fetch(RequestInfo input, optional RequestInit init);
+};
diff --git a/tests/wpt/web-platform-tests/interfaces/geometry.idl b/tests/wpt/web-platform-tests/interfaces/geometry.idl
index 7ee2a5a0561..be1d56b26dc 100644
--- a/tests/wpt/web-platform-tests/interfaces/geometry.idl
+++ b/tests/wpt/web-platform-tests/interfaces/geometry.idl
@@ -80,7 +80,6 @@ dictionary DOMRectInit {
unrestricted double height = 0;
};
-[LegacyArrayClass]
interface DOMRectList {
readonly attribute unsigned long length;
getter DOMRect? item(unsigned long index);
diff --git a/tests/wpt/web-platform-tests/lint.whitelist b/tests/wpt/web-platform-tests/lint.whitelist
index bc385953ae2..e7e1af82901 100644
--- a/tests/wpt/web-platform-tests/lint.whitelist
+++ b/tests/wpt/web-platform-tests/lint.whitelist
@@ -309,6 +309,7 @@ GENERATE_TESTS: shadow-dom/untriaged/shadow-trees/upper-boundary-encapsulation/w
SET TIMEOUT: css/css-fonts/font-display/font-display.html
SET TIMEOUT: css/css-fonts/font-display/font-display-change.html
SET TIMEOUT: css/css-fonts/font-display/font-display-change-ref.html
+SET TIMEOUT: css/css-fonts/font-display/font-display-preload.html
SET TIMEOUT: html/browsers/windows/auxiliary-browsing-contexts/resources/close-opener.html
SET TIMEOUT: html/dom/documents/dom-tree-accessors/Document.currentScript.html
SET TIMEOUT: html/webappapis/timers/*
@@ -779,6 +780,8 @@ CSS-COLLIDING-REF-NAME: css/CSS2/visuren/inline-formatting-context-001-ref.xht
CSS-COLLIDING-REF-NAME: css/CSS2/linebox/inline-formatting-context-001-ref.xht
CSS-COLLIDING-REF-NAME: css/css-transforms/individual-transform/individual-transform-1-ref.html
CSS-COLLIDING-REF-NAME: css/vendor-imports/mozilla/mozilla-central-reftests/transforms/individual-transform-1-ref.html
+CSS-COLLIDING-REF-NAME: css/css-flexbox/reference/percentage-size-subitems-001-ref.html
+CSS-COLLIDING-REF-NAME: css/css-grid/grid-items/percentage-size-subitems-001-ref.html
CSS-COLLIDING-SUPPORT-NAME: css/css-backgrounds/support/red.png
CSS-COLLIDING-SUPPORT-NAME: css/compositing/mix-blend-mode/support/red.png
CSS-COLLIDING-SUPPORT-NAME: css/compositing/background-blending/support/red.png
@@ -797,7 +800,6 @@ CSS-COLLIDING-SUPPORT-NAME: css/CSS2/normal-flow/support/replaced-min-max-1.png
CSS-COLLIDING-SUPPORT-NAME: css/vendor-imports/mozilla/mozilla-central-reftests/ui3/support/replaced-min-max-1.png
# CSS tests that used to be at the top level and weren't subject to lints
-MISSING-LINK: css/css-fonts/font-display/font-display.html
MISSING-LINK: css/css-fonts/matching/fixed-stretch-style-over-weight.html
SUPPORT-WRONG-DIR: css/css-fonts/matching/font-matching.css
MISSING-LINK: css/css-fonts/matching/stretch-distance-over-weight-distance.html
diff --git a/tests/wpt/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html b/tests/wpt/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html
index 3268021b28c..380686fd8b1 100644
--- a/tests/wpt/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html
+++ b/tests/wpt/web-platform-tests/offscreen-canvas/the-offscreen-canvas/offscreencanvas.commit.w.html
@@ -8,10 +8,15 @@
function testCommitPushesContents(offscreenCanvas)
{
+ try {
var ctx = offscreenCanvas.getContext('2d');
ctx.fillStyle = "#0f0";
ctx.fillRect(0, 0, 10, 10);
ctx.commit();
+ return true;
+ } catch(e) {
+ return false;
+ }
}
function isInvalidStateError(funcStr, ctx)
@@ -37,8 +42,7 @@ function testCommitException()
self.onmessage = function(e) {
switch (e.data.msg) {
case 'test1':
- testCommitPushesContents(e.data.data);
- self.postMessage('worker finished');
+ self.postMessage(testCommitPushesContents(e.data.data));
break;
case 'test2':
self.postMessage(testCommitException());
@@ -71,7 +75,8 @@ async_test(function(t) {
var offscreenCanvas = placeholder.transferControlToOffscreen();
var worker = makeWorker(document.getElementById("myWorker").textContent);
worker.addEventListener('message', t.step_func_done(function(msg) {
- verifyPlaceholder(placeholder);
+ assert_true(msg.data);
+ verifyPlaceholder(placeholder);
}));
worker.postMessage({msg: 'test1', data: offscreenCanvas}, [offscreenCanvas]);
}, "Test that calling OffscreenCanvas's commit pushes its contents to its placeholder.");
@@ -85,4 +90,3 @@ async_test(function(t) {
}, "Test that calling commit on an OffscreenCanvas that is not transferred from a HTMLCanvasElement throws an exception in a worker.");
</script>
-
diff --git a/tests/wpt/web-platform-tests/payment-request/PaymentCurrencyAmount/currencySystem-member.https.html b/tests/wpt/web-platform-tests/payment-request/PaymentCurrencyAmount/currencySystem-member.https.html
deleted file mode 100644
index c79fb0fadc5..00000000000
--- a/tests/wpt/web-platform-tests/payment-request/PaymentCurrencyAmount/currencySystem-member.https.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<!DOCTYPE html>
-<meta charset="utf-8">
-<title>Tests for PaymentCurrencyAmount's currencySystem</title>
-<link rel="help" href="https://www.w3.org/TR/payment-request/#dom-paymentcurrencyamount-currencysystem">
-<script src="/resources/testharness.js"></script>
-<script src="/resources/testharnessreport.js"></script>
-<script>
-test(() => {
- const validAmount = {
- value: "0",
- currency: "USD",
- currencySystem: "urn:iso:std:iso:4217",
- }
- const validMethods = [{ supportedMethods: "valid-method" }];
- const validDetails = {
- total: {
- label: "",
- amount: validAmount,
- },
- };
- // smoke test
- const request = new PaymentRequest(validMethods, validDetails);
-
- // real test
- assert_throws(new TypeError(), () => {
- const invalidAmount = {
- ...validAmount,
- currencySystem: "this will cause the TypeError"
- }
- const invalidDetails = {
- total: {
- label: "",
- amount: invalidAmount,
- },
- };
- const request = new PaymentRequest(validMethods, invalidDetails);
- })
-}, "Must throw if it encounters an unknown currencySystem");
-</script>
diff --git a/tests/wpt/web-platform-tests/resources/idlharness.js b/tests/wpt/web-platform-tests/resources/idlharness.js
index fe7239544cf..4664465572c 100644
--- a/tests/wpt/web-platform-tests/resources/idlharness.js
+++ b/tests/wpt/web-platform-tests/resources/idlharness.js
@@ -1513,8 +1513,6 @@ IdlInterface.prototype.test_self = function()
// object.
// "Otherwise, if A is declared to inherit from another interface, then
// return the interface prototype object for the inherited interface.
- // "Otherwise, if A is declared with the [LegacyArrayClass] extended
- // attribute, then return %ArrayPrototype%.
// "Otherwise, return %ObjectPrototype%.
//
// "In the ECMAScript binding, the DOMException type has some additional
@@ -1537,9 +1535,6 @@ IdlInterface.prototype.test_self = function()
!this.array
.members[inherit_interface]
.has_extended_attribute("NoInterfaceObject");
- } else if (this.has_extended_attribute('LegacyArrayClass')) {
- inherit_interface = 'Array';
- inherit_interface_has_interface_object = true;
} else if (this.name === "DOMException") {
inherit_interface = 'Error';
inherit_interface_has_interface_object = true;
diff --git a/tests/wpt/web-platform-tests/resources/test/conftest.py b/tests/wpt/web-platform-tests/resources/test/conftest.py
index 0be41eeec54..abc3b6cfdda 100644
--- a/tests/wpt/web-platform-tests/resources/test/conftest.py
+++ b/tests/wpt/web-platform-tests/resources/test/conftest.py
@@ -80,7 +80,7 @@ class HTMLItem(pytest.Item, pytest.Collector):
if not self.expected:
assert summarized[u'summarized_status'][u'status_string'] == u'OK', summarized[u'summarized_status'][u'message']
for test in summarized[u'summarized_tests']:
- msg = "%s\n%s:\n%s" % (test[u'name'], test[u'message'], test[u'stack'])
+ msg = "%s\n%s" % (test[u'name'], test[u'message'])
assert test[u'status_string'] == u'PASS', msg
else:
assert summarized == self.expected
@@ -93,12 +93,7 @@ class HTMLItem(pytest.Item, pytest.Collector):
@staticmethod
def _scrub_stack(test_obj):
copy = dict(test_obj)
-
- assert 'stack' in copy
-
- if copy['stack'] is not None:
- copy['stack'] = u'(implementation-defined)'
-
+ del copy['stack']
return copy
@staticmethod
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup.html b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup.html
index d47e7ff24b7..c5e0ad79ac7 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup.html
@@ -56,37 +56,32 @@ async_test(function(t) {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Cleanup methods are invoked exactly once and in the expected sequence.",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Cleanup methods are invoked following the completion of asynchronous tests",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "probe asynchronous",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "probe synchronous",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_count.html b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_count.html
index a079c9b879b..3ea30a3f084 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_count.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_count.html
@@ -22,14 +22,12 @@ promise_test(function(t) {
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Test named 'test with 3 user-defined cleanup functions' specified 3 'cleanup' functions, and 1 failed.",
- "stack": null
+ "message": "Test named 'test with 3 user-defined cleanup functions' specified 3 'cleanup' functions, and 1 failed."
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "test with 3 user-defined cleanup functions",
- "stack": null,
"message": null,
"properties": {}
}
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err.html b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err.html
index 66efb077337..bae1eb5a567 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err.html
@@ -22,23 +22,20 @@ test(function() {}, "This test should not be run.");
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Test named 'Exception in cleanup function causes harness failure.' specified 1 'cleanup' function, and 1 failed.",
- "stack": null
+ "message": "Test named 'Exception in cleanup function causes harness failure.' specified 1 'cleanup' function, and 1 failed."
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Exception in cleanup function causes harness failure.",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "NOTRUN",
"name": "This test should not be run.",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err_multi.html b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err_multi.html
index b60668c0290..3f116c5876d 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err_multi.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/add_cleanup_err_multi.html
@@ -29,23 +29,20 @@ test(function(t) {
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Test named 'Test with multiple cleanup functions' specified 2 'cleanup' functions, and 1 failed.",
- "stack": null
+ "message": "Test named 'Test with multiple cleanup functions' specified 2 'cleanup' functions, and 1 failed."
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Test with multiple cleanup functions",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "NOTRUN",
"name": "Verification test",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-1.html b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-1.html
index 3c58b01f66f..3b5234f3626 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-1.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-1.html
@@ -208,161 +208,138 @@
{
"summarized_status": {
"status_string": "TIMEOUT",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Setup function ran",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "FAIL",
"name": "Test assert_throws with non-DOM-exception expected to Fail",
- "stack": "(implementation-defined)",
"message": "Test bug: unrecognized DOMException code \"TEST_ERR\" passed to assert_throws()",
"properties": {}
},
{
"status_string": "PASS",
"name": "Test async test with callback",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Test async test with callback and `this` obj.",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Test step_func",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Test that cleanup handlers from previous test ran",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Test that defines a global and cleans it up",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Test throw DOM exception",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "FAIL",
"name": "Test throw DOM exception expected to fail",
- "stack": "(implementation-defined)",
"message": "assert_throws: function \"function () {a.appendChild(b)}\" threw object \"HierarchyRequestError: Node cannot be inserted at the specified point in the hierarchy\" that is not a DOMException NOT_FOUND_ERR: property \"code\" is equal to 3, expected 8",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_array_equals with first param 1",
- "stack": "(implementation-defined)",
"message": "assert_array_equals: 1 equals [1]? value is 1, expected array",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_array_equals with first param false",
- "stack": "(implementation-defined)",
"message": "assert_array_equals: false equals [1]? value is false, expected array",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_array_equals with first param null",
- "stack": "(implementation-defined)",
"message": "assert_array_equals: null equals [1]? value is null, expected array",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_array_equals with first param true",
- "stack": "(implementation-defined)",
"message": "assert_array_equals: true equals [1]? value is true, expected array",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_array_equals with first param undefined",
- "stack": "(implementation-defined)",
"message": "assert_array_equals: undefined equals [1]? value is undefined, expected array",
"properties": {}
},
{
"status_string": "PASS",
"name": "assert_equals tests",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_equals tests expected to fail",
- "stack": "(implementation-defined)",
"message": "assert_equals: Zero case expected 0 but got -0",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_greater_than expected to fail",
- "stack": "(implementation-defined)",
"message": "assert_greater_than: 10 is not greater than 11 expected a number greater than 11 but got 10",
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_less_than_equal expected to fail",
- "stack": "(implementation-defined)",
"message": "assert_greater_than_equal: '10' is not a number expected a number but got a \"string\"",
"properties": {}
},
{
"status_string": "PASS",
"name": "assert_not_equals tests",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "FAIL",
"name": "assert_true expected to fail",
- "stack": "(implementation-defined)",
"message": "assert_true: false should not be true expected true got false",
"properties": {}
},
{
"status_string": "PASS",
"name": "assert_true expected to pass",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "NOTRUN",
"name": "async test that is never started, should have status Not Run",
- "stack": null,
"message": null,
"properties": {
"timeout": 1000
@@ -371,70 +348,60 @@
{
"status_string": "PASS",
"name": "basic assert_approx_equals test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "basic assert_array_approx_equals test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "basic assert_array_equals test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "basic assert_greater_than_equal test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "basic assert_less_than test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "basic assert_object_equals test",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "body element fires the onload event set from the attribute",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "document.body should be the first body element in the document",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "test for assert[_not]_exists and insert_inherits",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "TIMEOUT",
"name": "test should timeout (fail) with a custom set timeout value of 1 second",
- "stack": null,
"message": "Test timed out",
"properties": {
"timeout": 1000
@@ -443,14 +410,12 @@
{
"status_string": "TIMEOUT",
"name": "test should timeout (fail) with the default of 2 seconds",
- "stack": null,
"message": "Test timed out",
"properties": {}
},
{
"status_string": "PASS",
"name": "window onload event fires when set from the handler",
- "stack": null,
"message": null,
"properties": {}
}
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-2.html b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-2.html
index dd08d1a6e9a..164106bb6df 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-2.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-2.html
@@ -21,23 +21,20 @@ done();
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Test defined after onload",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test defined before onload",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-3.html b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-3.html
index 9e87e497b49..5dbeb2d94e1 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/api-tests-3.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/api-tests-3.html
@@ -17,16 +17,14 @@ timeout();
{
"summarized_status": {
"status_string": "TIMEOUT",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "NOTRUN",
"name": "This test should give a status of 'Not Run' without a delay",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/force_timeout.html b/tests/wpt/web-platform-tests/resources/test/tests/force_timeout.html
index bef53b406e3..7827068b03e 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/force_timeout.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/force_timeout.html
@@ -31,29 +31,25 @@ promise_test(function(t) {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "TIMEOUT",
"name": "async_test",
"message": "Test timed out",
- "stack": null,
"properties": {}
},
{
"status_string": "TIMEOUT",
"name": "promise_test",
"message": "Test timed out",
- "stack": null,
"properties": {}
},
{
"status_string": "TIMEOUT",
"name": "test (synchronous)",
"message": "Test timed out",
- "stack": null,
"properties": {}
}
],
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/generate-callback.html b/tests/wpt/web-platform-tests/resources/test/tests/generate-callback.html
index fe469893c44..574f430d218 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/generate-callback.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/generate-callback.html
@@ -56,65 +56,56 @@ generate_tests(validate_related_arguments, letters.map(format_as_test));
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Test to map a to 0",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test to map b to 1",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test to map c to 2",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test to map d to 3",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test to map e to 4",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test to map f to 5",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "first test",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "second test",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
@@ -122,8 +113,7 @@ generate_tests(validate_related_arguments, letters.map(format_as_test));
"properties": {
"sentinel": true
},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
@@ -131,8 +121,7 @@ generate_tests(validate_related_arguments, letters.map(format_as_test));
"properties": {
"sentinel": true
},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
@@ -140,8 +129,7 @@ generate_tests(validate_related_arguments, letters.map(format_as_test));
"properties": {
"sentinel": true
},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
@@ -149,15 +137,13 @@ generate_tests(validate_related_arguments, letters.map(format_as_test));
"properties": {
"sentinel": false
},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "third test",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_immutable_prototype.html b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_immutable_prototype.html
index 480a159a789..a9d631d0a3b 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_immutable_prototype.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_immutable_prototype.html
@@ -43,289 +43,248 @@ idlArray.test();
{
"summarized_status": {
"message": null,
- "status_string": "OK",
- "stack": null
+ "status_string": "OK"
},
"summarized_tests": [
{
"name": "Foo interface object length",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface object name",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object's \"constructor\" property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object's @@unscopables property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via Object.setPrototypeOf should throw a TypeError",
"status_string": "FAIL",
"properties": {},
- "message": "assert_throws: function \"function() {\n Object.setPrototypeOf(obj, newValue);\n }\" did not throw",
- "stack": "(implementation-defined)"
+ "message": "assert_throws: function \"function() {\n Object.setPrototypeOf(obj, newValue);\n }\" did not throw"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via Reflect.setPrototypeOf should return false",
"status_string": "FAIL",
"properties": {},
- "message": "assert_false: expected false got true",
- "stack": "(implementation-defined)"
+ "message": "assert_false: expected false got true"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via __proto__ should throw a TypeError",
"status_string": "FAIL",
"properties": {},
- "message": "assert_throws: function \"function() {\n obj.__proto__ = newValue;\n }\" did not throw",
- "stack": "(implementation-defined)"
+ "message": "assert_throws: function \"function() {\n obj.__proto__ = newValue;\n }\" did not throw"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via Object.setPrototypeOf should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via Reflect.setPrototypeOf should return true",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via __proto__ should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via Object.setPrototypeOf should throw a TypeError",
"status_string": "FAIL",
"properties": {},
- "message": "assert_throws: function \"function() {\n Object.setPrototypeOf(obj, newValue);\n }\" did not throw",
- "stack": "(implementation-defined)"
+ "message": "assert_throws: function \"function() {\n Object.setPrototypeOf(obj, newValue);\n }\" did not throw"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via Reflect.setPrototypeOf should return false",
"status_string": "FAIL",
"properties": {},
- "message": "assert_false: expected false got true",
- "stack": "(implementation-defined)"
+ "message": "assert_false: expected false got true"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via __proto__ should throw a TypeError",
"status_string": "FAIL",
"properties": {},
- "message": "assert_throws: function \"function() {\n obj.__proto__ = newValue;\n }\" did not throw",
- "stack": "(implementation-defined)"
+ "message": "assert_throws: function \"function() {\n obj.__proto__ = newValue;\n }\" did not throw"
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via Object.setPrototypeOf should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via Reflect.setPrototypeOf should return true",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via __proto__ should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo must be primary interface of new Foo()",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Stringification of new Foo()",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Stringification of window",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface object length",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface object name",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: existence and properties of interface object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: existence and properties of interface prototype object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: existence and properties of interface prototype object's \"constructor\" property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: existence and properties of interface prototype object's @@unscopables property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via Object.setPrototypeOf should throw a TypeError",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via Reflect.setPrototypeOf should return false",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to a new value via __proto__ should throw a TypeError",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via Object.setPrototypeOf should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via Reflect.setPrototypeOf should return true",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of global platform object - setting to its original value via __proto__ should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via Object.setPrototypeOf should throw a TypeError",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via Reflect.setPrototypeOf should return false",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to a new value via __proto__ should throw a TypeError",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via Object.setPrototypeOf should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via Reflect.setPrototypeOf should return true",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window interface: internal [[SetPrototypeOf]] method of interface prototype object - setting to its original value via __proto__ should not throw",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Window must be primary interface of window",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_primary_interface_of.html b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_primary_interface_of.html
index 43241df4455..69542f1d7d7 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_primary_interface_of.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_primary_interface_of.html
@@ -50,65 +50,56 @@ idlArray.test();
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"name": "Foo interface object length",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface object name",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object's \"constructor\" property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo interface: existence and properties of interface prototype object's @@unscopables property",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Foo must be primary interface of new Foo()",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"name": "Stringification of new Foo()",
"status_string": "PASS",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html
index 856b4b03553..ef8fcc991f6 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/idlharness/IdlInterface/test_to_json_operation.html
@@ -94,7 +94,6 @@
{
"summarized_status": {
"message": null,
- "stack": null,
"status_string": "OK"
},
"summarized_tests": [
@@ -102,84 +101,72 @@
"message": null,
"name": "Test default toJSON operation of A",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": "assert_equals: expected \"number\" but got \"string\"",
"name": "Test default toJSON operation of B",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": null,
"name": "Test default toJSON operation of C",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": "assert_true: property \"foo\" should be present in the output of D.prototype.toJSON() expected true got false",
"name": "Test default toJSON operation of D",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": "assert_true: property foo should be writable expected true got false",
"name": "Test default toJSON operation of F",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": "assert_true: property foo should be enumerable expected true got false",
"name": "Test default toJSON operation of G",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": "assert_true: property foo should be configurable expected true got false",
"name": "Test default toJSON operation of H",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": null,
"name": "Test default toJSON operation of I",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": null,
"name": "Test default toJSON operation of K",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": null,
"name": "Test toJSON operation of L",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": "assert_equals: expected \"string\" but got \"object\"",
"name": "Test toJSON operation of M",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": "assert_true: {\"type\":\"return-type\",\"sequence\":false,\"generic\":null,\"nullable\":false,\"union\":false,\"idlType\":\"DOMException\"} is not an appropriate return value for the toJSON operation of N expected true got false",
"name": "Test toJSON operation of N",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
}
],
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/iframe-callback.html b/tests/wpt/web-platform-tests/resources/test/tests/iframe-callback.html
index 1a8b2cbc00f..b6b751bfe5f 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/iframe-callback.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/iframe-callback.html
@@ -100,16 +100,14 @@ function start_test_in_iframe() {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Example with iframe that notifies containing document via callbacks",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-errors.html b/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-errors.html
index 5d697e4c0f4..a44d034e093 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-errors.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-errors.html
@@ -27,16 +27,14 @@ child context.</p>
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Error in remote: Error: Example Error",
- "stack": null
+ "message": "Error in remote: Error: Example Error"
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Test executing in parent context",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-tests.html b/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-tests.html
index 5611d57e856..7b8a8970284 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-tests.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/iframe-consolidate-tests.html
@@ -27,65 +27,56 @@ executing</p>
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Promise rejection",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Promise resolution",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Promises and test assertion failures (should fail)",
"properties": {},
- "message": "assert_true: This failure is expected expected true got false",
- "stack": "(implementation-defined)"
+ "message": "assert_true: This failure is expected expected true got false"
},
{
"status_string": "PASS",
"name": "Promises are supported in your browser",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Promises resolution chaining",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test executing in parent context",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Use of step_func with Promises",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Use of unreached_func with Promises (should fail)",
"properties": {},
- "message": "assert_unreached: This failure is expected Reached unreachable code",
- "stack": "(implementation-defined)"
+ "message": "assert_unreached: This failure is expected Reached unreachable code"
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/iframe-msg.html b/tests/wpt/web-platform-tests/resources/test/tests/iframe-msg.html
index 13a3fff924f..c6bc97beef9 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/iframe-msg.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/iframe-msg.html
@@ -68,16 +68,14 @@ on_event(window,
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Containing document receives messages",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/order.html b/tests/wpt/web-platform-tests/resources/test/tests/order.html
index d20eb6b1ad0..1604f437f3d 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/order.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/order.html
@@ -16,19 +16,16 @@ test(function() {}, 'first');
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [{
"status_string": "PASS",
"name": "first",
- "stack": null,
"message": null,
"properties": {}
}, {
"status_string": "PASS",
"name": "second",
- "stack": null,
"message": null,
"properties": {}
}],
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/promise-async.html b/tests/wpt/web-platform-tests/resources/test/tests/promise-async.html
index 88b6972a60a..18101ee97af 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/promise-async.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/promise-async.html
@@ -121,58 +121,50 @@ test(function() {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Promise rejection",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Promise resolution",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Promises and test assertion failures (should fail)",
"properties": {},
- "message": "assert_true: This failure is expected expected true got false",
- "stack": "(implementation-defined)"
+ "message": "assert_true: This failure is expected expected true got false"
},
{
"status_string": "PASS",
"name": "Promises are supported in your browser",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Promises resolution chaining",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Use of step_func with Promises",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Use of unreached_func with Promises (should fail)",
"properties": {},
- "message": "assert_unreached: This failure is expected Reached unreachable code",
- "stack": "(implementation-defined)"
+ "message": "assert_unreached: This failure is expected Reached unreachable code"
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/promise.html b/tests/wpt/web-platform-tests/resources/test/tests/promise.html
index 61ef15ded98..4825a38677b 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/promise.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/promise.html
@@ -134,84 +134,72 @@ promise_test(
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "FAIL",
"name": "Assertion failure in a fulfill reaction (should FAIL with an expected failure)",
- "stack": "(implementation-defined)",
"message": "assert_true: Expected failure. expected true got false",
"properties": {}
},
{
"status_string": "PASS",
"name": "Chain of promise resolutions",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Promise fulfillment with result",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Promise rejection with result",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "Promises are supported in your browser",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "PASS",
"name": "promise_test with function that doesn't return a Promise",
- "stack": null,
"message": null,
"properties": {}
},
{
"status_string": "FAIL",
"name": "promise_test with function that doesn't return anything",
- "stack": "(implementation-defined)",
"message": "assert_not_equals: got disallowed value undefined",
"properties": {}
},
{
"status_string": "FAIL",
"name": "promise_test with unhandled exception in fulfill reaction (should FAIL)",
- "stack": "(implementation-defined)",
"message": "promise_test: Unhandled rejection with value: object \"Error: Expected exception.\"",
"properties": {}
},
{
"status_string": "FAIL",
"name": "promise_test with unhandled exception in reject reaction (should FAIL)",
- "stack": "(implementation-defined)",
"message": "promise_test: Unhandled rejection with value: object \"Error: Expected exception.\"",
"properties": {}
},
{
"status_string": "FAIL",
"name": "promise_test with unhandled rejection (should FAIL)",
- "stack": "(implementation-defined)",
"message": "promise_test: Unhandled rejection with value: \"Expected rejection\"",
"properties": {}
},
{
"status_string": "FAIL",
"name": "unreached_func as reactor (should FAIL with an expected failure)",
- "stack": "(implementation-defined)",
"message": "assert_unreached: Expected failure. Reached unreachable code",
"properties": {}
}
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-fail.html b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-fail.html
index a1f88107382..a8f247d9ccb 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-fail.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-fail.html
@@ -12,16 +12,14 @@ onload = function() {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "FAIL",
"name": "Example with file_is_test (should fail)",
"properties": {},
- "message": "uncaught exception: Error: assert_true: expected true got false",
- "stack": "(implementation-defined)"
+ "message": "uncaught exception: Error: assert_true: expected true got false"
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-assertions.html b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-assertions.html
index 3402a469cf8..d1a7532f6c5 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-assertions.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-assertions.html
@@ -9,16 +9,14 @@ done();
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Example single page test with no asserts",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-body.html b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-body.html
index 065091a93e8..c62ee18e3cd 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-body.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-no-body.html
@@ -10,16 +10,14 @@ done();
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Example single page test with no body",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-pass.html b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-pass.html
index 31e4e649471..91d26b02a0c 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-pass.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/single-page-test-pass.html
@@ -12,16 +12,14 @@ onload = function() {
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Example with file_is_test",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-handle.html b/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-handle.html
index 7d8244bf1ce..061fb8040e4 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-handle.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-handle.html
@@ -16,16 +16,14 @@ throw new Error("Example Error");
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Error: Example Error",
- "stack": "(implementation-defined)"
+ "message": "Error: Example Error"
},
"summarized_tests": [
{
"status_string": "NOTRUN",
"name": "This should show a harness status of 'Error' and a test status of 'Not Run'",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-ignore.html b/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-ignore.html
index 9f45ddb47f5..66240780c25 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-ignore.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/uncaught-exception-ignore.html
@@ -18,16 +18,14 @@ throw new Error("Example Error");
{
"summarized_status": {
"status_string": "OK",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "setup({allow_uncaught_exception:true}) should allow tests to pass even if there is an exception",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/worker-dedicated.html b/tests/wpt/web-platform-tests/resources/test/tests/worker-dedicated.html
index 0ca3e4d145a..98a010dd742 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/worker-dedicated.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/worker-dedicated.html
@@ -30,65 +30,56 @@ test(function(t) {
{
"summarized_status": {
"status_string": "ERROR",
- "message": "Error: This failure is expected.",
- "stack": "(implementation-defined)"
+ "message": "Error: This failure is expected."
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Browser supports Workers",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Test running on main document.",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Untitled",
"properties": {},
- "message": "Error: This failure is expected.",
- "stack": "(implementation-defined)"
+ "message": "Error: This failure is expected."
},
{
"status_string": "PASS",
"name": "Worker async_test that completes successfully",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Worker test that completes successfully",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "NOTRUN",
"name": "Worker test that doesn't run ('NOT RUN')",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Worker test that fails ('FAIL')",
"properties": {},
- "message": "assert_true: Failing test expected true got false",
- "stack": "(implementation-defined)"
+ "message": "assert_true: Failing test expected true got false"
},
{
"status_string": "TIMEOUT",
"name": "Worker test that times out ('TIMEOUT')",
"properties": {},
- "message": "Test timed out",
- "stack": null
+ "message": "Test timed out"
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/worker-service.html b/tests/wpt/web-platform-tests/resources/test/tests/worker-service.html
index 418f6d72bb1..d970827fc44 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/worker-service.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/worker-service.html
@@ -63,58 +63,50 @@ promise_test(
{
"summarized_status": {
"status_string": "TIMEOUT",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Browser supports ServiceWorker",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Register ServiceWorker",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Worker async_test that completes successfully",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "PASS",
"name": "Worker test that completes successfully",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "NOTRUN",
"name": "Worker test that doesn't run ('NOT RUN')",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"status_string": "FAIL",
"name": "Worker test that fails ('FAIL')",
"properties": {},
- "message": "assert_true: Failing test expected true got false",
- "stack": "(implementation-defined)"
+ "message": "assert_true: Failing test expected true got false"
},
{
"status_string": "TIMEOUT",
"name": "Worker test that times out ('TIMEOUT')",
"properties": {},
- "message": "Test timed out",
- "stack": null
+ "message": "Test timed out"
}
],
"type": "complete"
diff --git a/tests/wpt/web-platform-tests/resources/test/tests/worker-shared.html b/tests/wpt/web-platform-tests/resources/test/tests/worker-shared.html
index a5601de0386..9c5666b8ed0 100644
--- a/tests/wpt/web-platform-tests/resources/test/tests/worker-shared.html
+++ b/tests/wpt/web-platform-tests/resources/test/tests/worker-shared.html
@@ -27,50 +27,43 @@ fetch_tests_from_worker(new SharedWorker("worker.js",
{
"summarized_status": {
"status_string": "TIMEOUT",
- "message": null,
- "stack": null
+ "message": null
},
"summarized_tests": [
{
"status_string": "PASS",
"name": "Browser supports SharedWorkers",
"properties": {},
- "message": null,
- "stack": null
+ "message": null
},
{
"message": null,
"name": "Worker async_test that completes successfully",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": null,
"name": "Worker test that completes successfully",
"properties": {},
- "stack": null,
"status_string": "PASS"
},
{
"message": null,
"name": "Worker test that doesn't run ('NOT RUN')",
"properties": {},
- "stack": null,
"status_string": "NOTRUN"
},
{
"message": "assert_true: Failing test expected true got false",
"name": "Worker test that fails ('FAIL')",
"properties": {},
- "stack": "(implementation-defined)",
"status_string": "FAIL"
},
{
"message": "Test timed out",
"name": "Worker test that times out ('TIMEOUT')",
"properties": {},
- "stack": null,
"status_string": "TIMEOUT"
}
],
diff --git a/tests/wpt/web-platform-tests/server-timing/navigation_timing_idl.html b/tests/wpt/web-platform-tests/server-timing/navigation_timing_idl.html
new file mode 100644
index 00000000000..290bb889b14
--- /dev/null
+++ b/tests/wpt/web-platform-tests/server-timing/navigation_timing_idl.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<head>
+ <meta charset='utf-8' />
+ <script src="/resources/testharness.js"></script>
+ <script src='/resources/testharnessreport.js'></script>
+ <script>
+ setup({explicit_done: true})
+ window.addEventListener('load', function(){
+ assert_not_equals(typeof performance.getEntriesByType('navigation')[0].serverTiming, 'undefined',
+ 'An instance of `PerformanceNavigationTiming` should have a `serverTiming` attribute.')
+ done()
+ })
+ </script>
+</head>
diff --git a/tests/wpt/web-platform-tests/server-timing/resource_timing_idl.html b/tests/wpt/web-platform-tests/server-timing/resource_timing_idl.html
new file mode 100644
index 00000000000..d2c3c9274ea
--- /dev/null
+++ b/tests/wpt/web-platform-tests/server-timing/resource_timing_idl.html
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<head>
+ <meta charset='utf-8' />
+ <script src="/resources/testharness.js"></script>
+ <script src='/resources/testharnessreport.js'></script>
+ <script>
+ setup({explicit_done: true})
+ window.addEventListener('load', function(){
+ assert_not_equals(typeof performance.getEntriesByType('resource')[0].serverTiming, 'undefined',
+ 'An instance of `PerformanceResourceTiming` should have a `serverTiming` attribute.')
+ done()
+ })
+ </script>
+</head>
diff --git a/tests/wpt/web-platform-tests/server-timing/server_timing_header-parsing.html b/tests/wpt/web-platform-tests/server-timing/server_timing_header-parsing.html
index 4049c3dd265..50396ed642f 100644
--- a/tests/wpt/web-platform-tests/server-timing/server_timing_header-parsing.html
+++ b/tests/wpt/web-platform-tests/server-timing/server_timing_header-parsing.html
@@ -19,7 +19,6 @@ tests generated by:
}
function runTests() {
tests.forEach(function({url, expectedResults}) {
- debugger;
const {serverTiming} = performance.getEntriesByName(url)[0]
const fileName = url.substring(url.lastIndexOf('/') + 1)
diff --git a/tests/wpt/web-platform-tests/service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js b/tests/wpt/web-platform-tests/service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js
new file mode 100644
index 00000000000..ee574d2cb77
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/cache-storage/resources/cache-keys-attributes-for-service-worker.js
@@ -0,0 +1,22 @@
+self.addEventListener('fetch', (event) => {
+ const params = new URL(event.request.url).searchParams;
+ if (params.has('ignore')) {
+ return;
+ }
+ if (!params.has('name')) {
+ event.respondWith(Promise.reject(TypeError('No name is provided.')));
+ return;
+ }
+
+ event.respondWith(Promise.resolve().then(async () => {
+ const name = params.get('name');
+ await caches.delete('foo');
+ const cache = await caches.open('foo');
+ await cache.put(event.request, new Response('hello'));
+ const keys = await cache.keys();
+
+ const original = event.request[name];
+ const stored = keys[0][name];
+ return new Response(`original: ${original}, stored: ${stored}`);
+ }));
+ });
diff --git a/tests/wpt/web-platform-tests/service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html b/tests/wpt/web-platform-tests/service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html
new file mode 100644
index 00000000000..20240768edc
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/cache-storage/serviceworker/cache-keys-attributes-for-service-worker.https.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<title>Cache.keys (checking request attributes that can be set only on service workers)</title>
+<link rel="help" href="https://w3c.github.io/ServiceWorker/#cache-keys">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="../../service-worker/resources/test-helpers.sub.js"></script>
+<script>
+const worker = '../resources/cache-keys-attributes-for-service-worker.js';
+
+promise_test(async (t) => {
+ const scope = '../resources/blank.html?name=isReloadNavigation';
+ let frame;
+ let reg;
+
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'original: false, stored: false');
+ await new Promise((resolve) => {
+ frame.onload = resolve;
+ frame.contentWindow.location.reload();
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'original: true, stored: true');
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+}, 'Request.IsReloadNavigation should persist.');
+</script>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html
new file mode 100644
index 00000000000..cf1feccf6e4
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-iframe-navigation-manual.https.html
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/common/get-host-info.sub.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+<body>
+<script>
+const worker = 'resources/fetch-event-test-worker.js';
+
+promise_test(async (t) => {
+ const scope = 'resources/simple.html?isReloadNavigation';
+
+ const reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ const frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentDocument.body.innerText =
+ 'Reload this frame manually!';
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = true');
+ frame.remove();
+ await reg.unregister();
+}, 'FetchEvent#request.isReloadNavigation is true for manual reload.');
+
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html
new file mode 100644
index 00000000000..a349f07c36c
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event-is-reload-navigation-manual.https.html
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<body>
+<p>Click <a href="resources/install-worker.html?isReloadNavigation&script=fetch-event-test-worker.js">this link</a>.
+ Once you see &quot;method = GET,...&quot; in the page, reload the page.
+ You will see &quot;method = GET, isReloadNavigation = true&quot;.
+</p>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event.https.html b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event.https.html
index 12b09321ed0..02f8d0e4530 100644
--- a/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event.https.html
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/fetch-event.https.html
@@ -6,6 +6,9 @@
<body>
<script>
var worker = 'resources/fetch-event-test-worker.js';
+function wait(ms) {
+ return new Promise(resolve => step_timeout(resolve, ms));
+}
async_test(function(t) {
const scope = 'resources/simple.html?headers';
@@ -629,5 +632,143 @@ promise_test(async (t) => {
frame.remove();
await service_worker_unregister_and_done(t, scope);
}, 'Service Worker responds to fetch event with the correct keepalive value');
+
+promise_test(async (t) => {
+ const scope = 'resources/simple.html?isReloadNavigation';
+ let frame;
+ let reg;
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.location.reload();
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = true');
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+ }, 'FetchEvent#request.isReloadNavigation is true (location.reload())');
+
+promise_test(async (t) => {
+ const scope = 'resources/simple.html?isReloadNavigation';
+ let frame;
+ let reg;
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.history.go(0);
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = true');
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+ }, 'FetchEvent#request.isReloadNavigation is true (history.go(0))');
+
+promise_test(async (t) => {
+ const scope = 'resources/simple.html?isReloadNavigation';
+ let frame;
+ let reg;
+
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ const form = frame.contentDocument.createElement('form');
+ form.method = 'POST';
+ form.name = 'form';
+ form.action = new Request(scope).url;
+ frame.contentDocument.body.appendChild(form);
+ form.submit();
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = POST, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.location.reload();
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = POST, isReloadNavigation = true');
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+ }, 'FetchEvent#request.isReloadNavigation is true (POST + location.reload())');
+
+promise_test(async (t) => {
+ const scope = 'resources/simple.html?isReloadNavigation';
+ const anotherUrl = new Request('resources/simple.html').url;
+ let frame;
+ let reg;
+
+ try {
+ reg = await service_worker_unregister_and_register(t, worker, scope);
+ await wait_for_state(t, reg.installing, 'activated');
+ frame = await with_iframe(scope);
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ // Use step_timeout(0) to ensure the history entry is created for Blink
+ // and WebKit. See https://bugs.webkit.org/show_bug.cgi?id=42861.
+ await wait(0);
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.src = anotherUrl;
+ });
+ assert_equals(frame.contentDocument.body.textContent, "Here's a simple html file.\n");
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.history.go(-1);
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = false');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.history.go(0);
+ });
+ assert_equals(frame.contentDocument.body.textContent,
+ 'method = GET, isReloadNavigation = true');
+ await new Promise((resolve) => {
+ frame.addEventListener('load', resolve);
+ frame.contentWindow.history.go(1);
+ });
+ assert_equals(frame.contentDocument.body.textContent, "Here's a simple html file.\n");
+ } finally {
+ if (frame) {
+ frame.remove();
+ }
+ if (reg) {
+ await reg.unregister();
+ }
+ }
+ }, 'FetchEvent#request.isReloadNavigation is true (with history traversal)');
+
</script>
</body>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js
index 65025d93409..a313094cf44 100644
--- a/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/fetch-event-test-worker.js
@@ -129,6 +129,14 @@ function handleKeepalive(event) {
event.respondWith(new Response(event.request.keepalive));
}
+function handleIsReloadNavigation(event) {
+ const request = event.request;
+ const body =
+ `method = ${request.method}, ` +
+ `isReloadNavigation = ${request.isReloadNavigation}`;
+ event.respondWith(new Response(body));
+}
+
self.addEventListener('fetch', function(event) {
var url = event.request.url;
var handlers = [
@@ -151,6 +159,7 @@ self.addEventListener('fetch', function(event) {
{ pattern: '?integrity', fn: handleIntegrity },
{ pattern: '?request-body', fn: handleRequestBody },
{ pattern: '?keepalive', fn: handleKeepalive },
+ { pattern: '?isReloadNavigation', fn: handleIsReloadNavigation },
];
var handler = null;
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/resources/install-worker.html b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/install-worker.html
new file mode 100644
index 00000000000..ed20cd4dca6
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/resources/install-worker.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<body>
+<p>Loading...</p>
+<script>
+async function install() {
+ let script;
+ for (const q of location.search.slice(1).split('&')) {
+ if (q.split('=')[0] === 'script') {
+ script = q.split('=')[1];
+ }
+ }
+ const scope = location.href;
+ const reg = await navigator.serviceWorker.register(script, {scope});
+ await navigator.serviceWorker.ready;
+ location.reload();
+}
+
+install();
+</script>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/service-workers/service-worker/update-result.https.html b/tests/wpt/web-platform-tests/service-workers/service-worker/update-result.https.html
new file mode 100644
index 00000000000..d8ed94f7766
--- /dev/null
+++ b/tests/wpt/web-platform-tests/service-workers/service-worker/update-result.https.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<title>Service Worker: update() should resolve a ServiceWorkerRegistration</title>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
+<body>
+<script>
+
+promise_test(async function(t) {
+ const script = './resources/empty.js';
+ const scope = './resources/empty.html?update-result';
+
+ let reg = await navigator.serviceWorker.register(script, { scope });
+ t.add_cleanup(async _ => await reg.unregister());
+ await wait_for_state(t, reg.installing, 'activated');
+
+ let result = await reg.update();
+ assert_true(result instanceof ServiceWorkerRegistration,
+ 'update() should resolve a ServiceWorkerRegistration');
+}, 'ServiceWorkerRegistration.update() should resolve a registration object');
+
+</script>
+</body>
diff --git a/tests/wpt/web-platform-tests/tools/ci/ci_taskcluster.sh b/tests/wpt/web-platform-tests/tools/ci/ci_taskcluster.sh
index 38c84628f15..00e1f0b776a 100755
--- a/tests/wpt/web-platform-tests/tools/ci/ci_taskcluster.sh
+++ b/tests/wpt/web-platform-tests/tools/ci/ci_taskcluster.sh
@@ -1,7 +1,8 @@
#!/bin/bash
+./wpt manifest-download
if [ $1 == "firefox" ]; then
- ./wpt run firefox --log-tbpl=- --log-tbpl-level=debug --log-wptreport=../artifacts/wpt_report.json --this-chunk=$3 --total-chunks=$4 --test-type=$2 -y --install-browser --no-pause --no-restart-on-unexpected
+ ./wpt run firefox --log-tbpl=../artifacts/log_tbpl.log --log-tbpl-level=info --log-wptreport=../artifacts/wpt_report.json --log-mach=- --this-chunk=$3 --total-chunks=$4 --test-type=$2 -y --install-browser --no-pause --no-restart-on-unexpected --reftest-internal
elif [ $1 == "chrome" ]; then
- ./wpt run chrome --log-tbpl=- --log-tbpl-level=debug --log-wptreport=../artifacts/wpt_report.json --this-chunk=$3 --total-chunks=$4 --test-type=$2 -y --no-pause --no-restart-on-unexpected
+ ./wpt run chrome --log-tbpl==../artifacts/log_tbpl.log --log-tbpl-level=info --log-wptreport=../artifacts/wpt_report.json --log-mach=- --this-chunk=$3 --total-chunks=$4 --test-type=$2 -y --no-pause --no-restart-on-unexpected
fi
diff --git a/tests/wpt/web-platform-tests/tools/ci/tag_master.py b/tests/wpt/web-platform-tests/tools/ci/tag_master.py
index 4404a195ef6..f049671c313 100644
--- a/tests/wpt/web-platform-tests/tools/ci/tag_master.py
+++ b/tests/wpt/web-platform-tests/tools/ci/tag_master.py
@@ -13,35 +13,38 @@ if not(wpt_root in sys.path):
from tools.wpt.testfiles import get_git_cmd
-logging.basicConfig()
+logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
-def get_pr(repo, owner, rev):
- url = ("https://api.github.com/search/issues?q=type:pr+is:merged+repo:%s/%s+%s" %
- (repo, owner, rev))
+def get_pr(repo, owner, sha):
+ url = ("https://api.github.com/search/issues?q=type:pr+is:merged+repo:%s/%s+sha:%s" %
+ (repo, owner, sha))
try:
resp = urllib2.urlopen(url)
+ body = resp.read()
except Exception as e:
logger.error(e)
return None
if resp.code != 200:
- logger.error("Got HTTP status %s" % resp.code)
+ logger.error("Got HTTP status %s. Response:" % resp.code)
+ logger.error(body)
return None
try:
- data = json.loads(resp.read())
+ data = json.loads(body)
except ValueError:
- logger.error("Failed to read response as JSON")
+ logger.error("Failed to read response as JSON:")
+ logger.error(body)
return None
items = data["items"]
if len(items) == 0:
- logger.error("No PR found for master")
+ logger.error("No PR found for %s" % sha)
return None
if len(items) > 1:
- logger.warning("Found multiple PRs for master")
+ logger.warning("Found multiple PRs for %s" % sha)
pr = items[0]
@@ -63,12 +66,15 @@ def tag(repo, owner, sha, tag):
resp = opener.open(req)
except Exception as e:
logger.error("Tag creation failed:\n%s" % e)
- return
+ return False
if resp.code != 201:
- logger.error("Got HTTP status %s" % resp.code)
- else:
- logger.info("Tagged master as %s" % tag)
+ logger.error("Got HTTP status %s. Response:" % resp.code)
+ logger.error(resp.read())
+ return False
+
+ logger.info("Tagged %s as %s" % (sha, tag))
+ return True
def main():
@@ -84,8 +90,11 @@ def main():
head_rev = git("rev-parse", "HEAD")
pr = get_pr(owner, repo, head_rev)
- if pr is not None:
- tag(owner, repo, head_rev, "merge_pr_%s" % pr)
+ if pr is None:
+ sys.exit(1)
+ tagged = tag(owner, repo, head_rev, "merge_pr_%s" % pr)
+ if not tagged:
+ sys.exit(1)
if __name__ == "__main__":
diff --git a/tests/wpt/web-platform-tests/tools/ci/taskgraph.py b/tests/wpt/web-platform-tests/tools/ci/taskgraph.py
index c4c5deab1f4..2fcdba0bf4d 100644
--- a/tests/wpt/web-platform-tests/tools/ci/taskgraph.py
+++ b/tests/wpt/web-platform-tests/tools/ci/taskgraph.py
@@ -20,7 +20,7 @@ task_template = {
},
},
"payload": {
- "maxRunTime": 5400,
+ "maxRunTime": 7200,
"image": "harjgam/web-platform-tests:0.6",
"command":[
"/bin/bash",
@@ -56,8 +56,8 @@ file_template = {
}
suites = {
- "testharness": {"chunks": 12},
- "reftest": {"chunks": 6},
+ "testharness": {"chunks": 15},
+ "reftest": {"chunks": 10},
"wdspec": {"chunks": 1}
}
diff --git a/tests/wpt/web-platform-tests/tools/docker/start.sh b/tests/wpt/web-platform-tests/tools/docker/start.sh
index b0772c945cd..908ec0c742b 100755
--- a/tests/wpt/web-platform-tests/tools/docker/start.sh
+++ b/tests/wpt/web-platform-tests/tools/docker/start.sh
@@ -1,7 +1,7 @@
#!/bin/bash
cd web-platform-tests
-git pull --depth=1
+git pull --depth=50
sudo sh -c './wpt make-hosts-file >> /etc/hosts'
diff --git a/tests/wpt/web-platform-tests/tools/manifest/manifest.py b/tests/wpt/web-platform-tests/tools/manifest/manifest.py
index 4a8deb060b4..815ce9d56f2 100644
--- a/tests/wpt/web-platform-tests/tools/manifest/manifest.py
+++ b/tests/wpt/web-platform-tests/tools/manifest/manifest.py
@@ -1,6 +1,6 @@
+import itertools
import json
import os
-import re
from collections import defaultdict
from six import iteritems, itervalues, viewkeys, string_types
@@ -56,7 +56,8 @@ class Manifest(object):
def reftest_nodes_by_url(self):
if self._reftest_nodes_by_url is None:
by_url = {}
- for path, nodes in iteritems(self._data.get("reftests", {})):
+ for path, nodes in itertools.chain(iteritems(self._data.get("reftest", {})),
+ iteritems(self._data.get("reftest_node", {}))):
for node in nodes:
by_url[node.url] = node
self._reftest_nodes_by_url = by_url
@@ -143,13 +144,13 @@ class Manifest(object):
changed_hashes[item.source_file.rel_path] = (item.source_file.hash,
item.item_type)
references[item.source_file.rel_path].add(item)
- self._reftest_nodes_by_url[item.url] = item
else:
if isinstance(item, RefTestNode):
item = item.to_RefTest()
changed_hashes[item.source_file.rel_path] = (item.source_file.hash,
item.item_type)
reftests[item.source_file.rel_path].add(item)
+ self._reftest_nodes_by_url[item.url] = item
return reftests, references, changed_hashes
diff --git a/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py b/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py
index 075d6892db7..770433dfdad 100644
--- a/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py
+++ b/tests/wpt/web-platform-tests/tools/manifest/tests/test_manifest.py
@@ -292,3 +292,22 @@ def test_iterpath():
"/test2-1.html",
"/test2-2.html"])
assert set(m.iterpath("missing")) == set()
+
+
+def test_reftest_node_by_url():
+ m = manifest.Manifest()
+
+ s1 = SourceFileWithTest("test1", "0"*40, item.RefTest, [("/test2", "==")])
+ s2 = SourceFileWithTest("test2", "0"*40, item.RefTest, [("/test3", "==")])
+
+ m.update([s1, s2])
+
+ test1 = s1.manifest_items()[1][0]
+ test2 = s2.manifest_items()[1][0]
+ test2_node = test2.to_RefTestNode()
+
+ assert m.reftest_nodes_by_url == {"/test1": test1,
+ "/test2": test2_node}
+ m._reftest_nodes_by_url = None
+ assert m.reftest_nodes_by_url == {"/test1": test1,
+ "/test2": test2_node}
diff --git a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/client.py b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/client.py
index 8da14a0d138..58e64f5848d 100644
--- a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/client.py
+++ b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/client.py
@@ -557,17 +557,23 @@ class Session(object):
return self.send_session_command("GET", url, {})
@command
- def set_cookie(self, name, value, path=None, domain=None, secure=None, expiry=None):
- body = {"name": name,
- "value": value}
- if path is not None:
- body["path"] = path
+ def set_cookie(self, name, value, path=None, domain=None,
+ secure=None, expiry=None, http_only=None):
+ body = {
+ "name": name,
+ "value": value,
+ }
+
if domain is not None:
body["domain"] = domain
- if secure is not None:
- body["secure"] = secure
if expiry is not None:
body["expiry"] = expiry
+ if http_only is not None:
+ body["httpOnly"] = http_only
+ if path is not None:
+ body["path"] = path
+ if secure is not None:
+ body["secure"] = secure
self.send_session_command("POST", "cookie", {"cookie": body})
def delete_cookie(self, name=None):
diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt b/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
index 79fde7811c6..0eb26e77452 100644
--- a/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
+++ b/tests/wpt/web-platform-tests/tools/wptrunner/requirements_firefox.txt
@@ -1,8 +1,8 @@
marionette_driver==2.6.0
-mozprofile==1.0.0
+mozprofile==1.1.0
mozprocess == 0.26
mozcrash == 1.0
-mozrunner==6.15
+mozrunner == 7.0.0
mozleak == 0.1
mozinstall == 1.15
mozdownload == 1.23
diff --git a/tests/wpt/web-platform-tests/tools/wptserve/wptserve/config.py b/tests/wpt/web-platform-tests/tools/wptserve/wptserve/config.py
index 914f6ac43e3..24cace3431a 100644
--- a/tests/wpt/web-platform-tests/tools/wptserve/wptserve/config.py
+++ b/tests/wpt/web-platform-tests/tools/wptserve/wptserve/config.py
@@ -118,13 +118,15 @@ class Config(Mapping):
@property
def ports(self):
+ # To make this method thread-safe, we write to a temporary dict first,
+ # and change self._computed_ports to the new dict at last atomically.
+ new_ports = defaultdict(list)
+
try:
old_ports = self._computed_ports
except AttributeError:
old_ports = {}
- self._computed_ports = defaultdict(list)
-
for scheme, ports in self._ports.iteritems():
for i, port in enumerate(ports):
if scheme in ["wss", "https"] and not self.ssl_env.ssl_enabled:
@@ -136,8 +138,9 @@ class Config(Mapping):
port = get_port(self.server_host)
else:
port = port
- self._computed_ports[scheme].append(port)
+ new_ports[scheme].append(port)
+ self._computed_ports = new_ports
return self._computed_ports
@ports.setter
diff --git a/tests/wpt/web-platform-tests/tools/wptserve/wptserve/request.py b/tests/wpt/web-platform-tests/tools/wptserve/wptserve/request.py
index 447663469b1..7f49681d7ec 100644
--- a/tests/wpt/web-platform-tests/tools/wptserve/wptserve/request.py
+++ b/tests/wpt/web-platform-tests/tools/wptserve/wptserve/request.py
@@ -348,12 +348,22 @@ class Request(object):
class RequestHeaders(dict):
"""Dictionary-like API for accessing request headers."""
def __init__(self, items):
- for key, value in zip(items.keys(), items.values()):
- key = key.lower()
- if key in self:
- self[key].append(value)
+ for header in items.keys():
+ key = header.lower()
+ # get all headers with the same name
+ values = items.getallmatchingheaders(header)
+ if len(values) > 1:
+ # collect the multiple variations of the current header
+ multiples = []
+ # loop through the values from getallmatchingheaders
+ for value in values:
+ # getallmatchingheaders returns raw header lines, so
+ # split to get name, value
+ multiples.append(value.split(':', 1)[1].strip())
+ dict.__setitem__(self, key, multiples)
else:
- dict.__setitem__(self, key, [value])
+ dict.__setitem__(self, key, [items[header]])
+
def __getitem__(self, key):
"""Get all headers of a certain (case-insensitive) name. If there is
diff --git a/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html b/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html
index 90ab89d5761..675a705891f 100644
--- a/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html
+++ b/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/setKeyframes.html
@@ -39,5 +39,17 @@ for (const subtest of gInvalidKeyframesTests) {
});
}, `KeyframeEffect constructor throws with ${subtest.desc}`);
}
+
+test(t => {
+ const frames1 = [ { left: '100px' }, { left: '200px' } ];
+ const frames2 = [ { left: '200px' }, { left: '300px' } ];
+
+ const animation = target.animate(frames1, 1000);
+ animation.currentTime = 500;
+ assert_equals(getComputedStyle(target).left, "150px");
+
+ animation.effect.setKeyframes(frames2);
+ assert_equals(getComputedStyle(target).left, "250px");
+}, 'Changes made via setKeyframes should be immediately visible in style');
</script>
</body>
diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html
new file mode 100644
index 00000000000..f6032f29431
--- /dev/null
+++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audiobuffer-interface/ctor-audiobuffer.html
@@ -0,0 +1,234 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>
+ Test Constructor: AudioBuffer
+ </title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ <script src="/webaudio/resources/audit-util.js"></script>
+ <script src="/webaudio/resources/audit.js"></script>
+ <script src="/webaudio/resources/audionodeoptions.js"></script>
+ </head>
+ <body>
+ <script id="layout-test-code">
+ let context;
+
+ let audit = Audit.createTaskRunner();
+
+ audit.define('initialize', (task, should) => {
+ context = initializeContext(should);
+ task.done();
+ });
+
+ audit.define('invalid constructor', (task, should) => {
+ should(() => {
+ new AudioBuffer();
+ }, 'new AudioBuffer()').throw('TypeError');
+ should(() => {
+ new AudioBuffer(1);
+ }, 'new AudioBuffer(1)').throw('TypeError');
+ should(() => {
+ new AudioBuffer(Date, 42);
+ }, 'new AudioBuffer(Date, 42)').throw('TypeError');
+
+ task.done();
+ });
+
+ audit.define('required options', (task, should) => {
+ let buffer;
+
+ // The length and sampleRate attributes are required; all others are
+ // optional.
+ should(() => {
+ new AudioBuffer({});
+ }, 'buffer = new AudioBuffer({})').throw('TypeError');
+
+ should(() => {
+ new AudioBuffer({length: 1});
+ }, 'buffer = new AudioBuffer({length: 1})').throw('TypeError');
+
+ should(() => {
+ new AudioBuffer({sampleRate: 48000});
+ }, 'buffer = new AudioBuffer({sampleRate: 48000})').throw('TypeError');
+
+ should(() => {
+ buffer = new AudioBuffer({numberOfChannels: 1});
+ }, 'buffer = new AudioBuffer({numberOfChannels: 1}').throw('TypeError');
+
+ // Length and sampleRate are required, but others are optional.
+ should(
+ () => {
+ buffer =
+ new AudioBuffer({length: 21, sampleRate: context.sampleRate});
+ },
+ 'buffer0 = new AudioBuffer({length: 21, sampleRate: ' +
+ context.sampleRate + '}')
+ .notThrow();
+ // Verify the buffer has the correct values.
+ should(buffer.numberOfChannels, 'buffer0.numberOfChannels')
+ .beEqualTo(1);
+ should(buffer.length, 'buffer0.length').beEqualTo(21);
+ should(buffer.sampleRate, 'buffer0.sampleRate')
+ .beEqualTo(context.sampleRate);
+
+ should(
+ () => {
+ buffer = new AudioBuffer(
+ {numberOfChannels: 3, length: 1, sampleRate: 48000});
+ },
+ 'buffer1 = new AudioBuffer(' +
+ '{numberOfChannels: 3, length: 1, sampleRate: 48000})')
+ .notThrow();
+ // Verify the buffer has the correct values.
+ should(buffer.numberOfChannels, 'buffer1.numberOfChannels')
+ .beEqualTo(3);
+ should(buffer.length, 'buffer1.length').beEqualTo(1);
+ should(buffer.sampleRate, 'buffer1.sampleRate').beEqualTo(48000);
+
+ task.done();
+ });
+
+ audit.define('invalid option values', (task, should) => {
+ let options = {numberOfChannels: 0, length: 1, sampleRate: 16000};
+ should(
+ () => {
+ let buffer = new AudioBuffer(options);
+ },
+ 'new AudioBuffer(' + JSON.stringify(options) + ')')
+ .throw('NotSupportedError');
+
+ options = {numberOfChannels: 99, length: 0, sampleRate: 16000};
+ should(
+ () => {
+ let buffer = new AudioBuffer(options);
+ },
+ 'new AudioBuffer(' + JSON.stringify(options) + ')')
+ .throw('NotSupportedError');
+
+ options = {numberOfChannels: 1, length: 0, sampleRate: 16000};
+ should(
+ () => {
+ let buffer = new AudioBuffer(options);
+ },
+ 'new AudioBuffer(' + JSON.stringify(options) + ')')
+ .throw('NotSupportedError');
+
+ options = {numberOfChannels: 1, length: 1, sampleRate: 100};
+ should(
+ () => {
+ let buffer = new AudioBuffer(options);
+ },
+ 'new AudioBuffer(' + JSON.stringify(options) + ')')
+ .throw('NotSupportedError');
+
+ task.done();
+ });
+
+ audit.define('default constructor', (task, should) => {
+ let buffer;
+
+ let options = {numberOfChannels: 5, length: 17, sampleRate: 16000};
+ should(
+ () => {
+ buffer = new AudioBuffer(options);
+ },
+ 'buffer = new AudioBuffer(' + JSON.stringify(options) + ')')
+ .notThrow();
+
+ should(buffer.numberOfChannels, 'buffer.numberOfChannels')
+ .beEqualTo(options.numberOfChannels);
+ should(buffer.length, 'buffer.length').beEqualTo(options.length);
+ should(buffer.sampleRate, 'buffer.sampleRate').beEqualTo(16000);
+
+ task.done();
+ });
+
+ audit.define('valid constructor', (task, should) => {
+ let buffer;
+
+ let options = {numberOfChannels: 3, length: 42, sampleRate: 54321};
+
+ let message = 'new AudioBuffer(' + JSON.stringify(options) + ')';
+ should(() => {
+ buffer = new AudioBuffer(options);
+ }, message).notThrow();
+
+ should(buffer.numberOfChannels, 'buffer.numberOfChannels')
+ .beEqualTo(options.numberOfChannels);
+
+ should(buffer.length, 'buffer.length').beEqualTo(options.length);
+
+ should(buffer.sampleRate, 'buffer.sampleRate')
+ .beEqualTo(options.sampleRate);
+
+ // Verify that we actually got the right number of channels
+ for (let k = 0; k < options.numberOfChannels; ++k) {
+ let data;
+ let message = 'buffer.getChannelData(' + k + ')';
+ should(() => {
+ data = buffer.getChannelData(k);
+ }, message).notThrow();
+
+ should(data.length, message + ' length').beEqualTo(options.length);
+ }
+
+ should(
+ () => {
+ buffer.getChannelData(options.numberOfChannels);
+ },
+ 'buffer.getChannelData(' + options.numberOfChannels + ')')
+ .throw('IndexSizeError');
+
+ task.done();
+ });
+
+ audit.define('multiple contexts', (task, should) => {
+ // Test that an AudioBuffer can be used for different contexts.
+ let buffer =
+ new AudioBuffer({length: 128, sampleRate: context.sampleRate});
+
+ // Don't use getChannelData here because we want to be able to use
+ // |data| to compare the final results of playing out this buffer. (If
+ // we did, |data| gets detached when the sources play.)
+ let data = new Float32Array(buffer.length);
+ for (let k = 0; k < data.length; ++k)
+ data[k] = 1 + k;
+ buffer.copyToChannel(data, 0);
+
+ let c1 = new OfflineAudioContext(1, 128, context.sampleRate);
+ let c2 = new OfflineAudioContext(1, 128, context.sampleRate);
+
+ let s1 = new AudioBufferSourceNode(c1, {buffer: buffer});
+ let s2 = new AudioBufferSourceNode(c2, {buffer: buffer});
+
+ s1.connect(c1.destination);
+ s2.connect(c2.destination);
+
+ s1.start();
+ s2.start();
+
+ Promise
+ .all([
+ c1.startRendering().then(function(resultBuffer) {
+ return should(resultBuffer.getChannelData(0), 'c1 result')
+ .beEqualToArray(data);
+ }),
+ c2.startRendering().then(function(resultBuffer) {
+ return should(resultBuffer.getChannelData(0), 'c2 result')
+ .beEqualToArray(data);
+ }),
+ ])
+ .then(returnValues => {
+ should(
+ returnValues[0] && returnValues[1],
+ 'AudioBuffer shared between two different contexts')
+ .message('correctly', 'incorrectly');
+ task.done();
+ });
+ });
+
+ audit.run();
+ </script>
+ </body>
+</html>
diff --git a/tests/wpt/web-platform-tests/webdriver/tests/cookies/get_named_cookie.py b/tests/wpt/web-platform-tests/webdriver/tests/cookies/get_named_cookie.py
index 806dda37887..cbf7195bad8 100644
--- a/tests/wpt/web-platform-tests/webdriver/tests/cookies/get_named_cookie.py
+++ b/tests/wpt/web-platform-tests/webdriver/tests/cookies/get_named_cookie.py
@@ -1,19 +1,28 @@
-from tests.support.inline import inline
-from tests.support.fixtures import clear_all_cookies
from datetime import datetime, timedelta
+from tests.support.asserts import assert_success
+from tests.support.fixtures import clear_all_cookies
+from tests.support.inline import inline
+
+
+def get_named_cookie(session, name):
+ return session.transport.send(
+ "GET", "session/{session_id}/cookie/{name}".format(
+ session_id=session.session_id,
+ name=name))
+
+
def test_get_named_session_cookie(session, url):
session.url = url("/common/blank.html")
clear_all_cookies(session)
session.execute_script("document.cookie = 'foo=bar'")
- result = session.transport.send("GET", "session/%s/cookie/foo" % session.session_id)
- assert result.status == 200
- assert isinstance(result.body["value"], dict)
+ result = get_named_cookie(session, "foo")
+ cookie = assert_success(result)
+ assert isinstance(cookie, dict)
# table for cookie conversion
# https://w3c.github.io/webdriver/webdriver-spec.html#dfn-table-for-cookie-conversion
- cookie = result.body["value"]
assert "name" in cookie
assert isinstance(cookie["name"], basestring)
assert "value" in cookie
@@ -32,6 +41,7 @@ def test_get_named_session_cookie(session, url):
assert cookie["name"] == "foo"
assert cookie["value"] == "bar"
+
def test_get_named_cookie(session, url):
session.url = url("/common/blank.html")
clear_all_cookies(session)
@@ -41,14 +51,10 @@ def test_get_named_cookie(session, url):
a_year_from_now = (datetime.utcnow() + timedelta(days=365)).strftime(utc_string_format)
session.execute_script("document.cookie = 'foo=bar;expires=%s'" % a_year_from_now)
- result = session.transport.send("GET", "session/%s/cookie" % session.session_id)
- assert result.status == 200
- assert "value" in result.body
- assert isinstance(result.body["value"], list)
- assert len(result.body["value"]) == 1
- assert isinstance(result.body["value"][0], dict)
+ result = get_named_cookie(session, "foo")
+ cookie = assert_success(result)
+ assert isinstance(cookie, dict)
- cookie = result.body["value"][0]
assert "name" in cookie
assert isinstance(cookie["name"], basestring)
assert "value" in cookie
@@ -59,39 +65,39 @@ def test_get_named_cookie(session, url):
assert cookie["name"] == "foo"
assert cookie["value"] == "bar"
# convert from seconds since epoch
- assert datetime.utcfromtimestamp(cookie["expiry"]).strftime(utc_string_format) == a_year_from_now
+ assert datetime.utcfromtimestamp(
+ cookie["expiry"]).strftime(utc_string_format) == a_year_from_now
+
def test_duplicated_cookie(session, url, server_config):
+ new_cookie = {
+ "name": "hello",
+ "value": "world",
+ "domain": server_config["browser_host"],
+ "path": "/",
+ "http_only": False,
+ "secure": False
+ }
+
session.url = url("/common/blank.html")
clear_all_cookies(session)
- create_cookie_request = {
- "cookie": {
- "name": "hello",
- "value": "world",
- "domain": server_config["domains"][""],
- "path": "/",
- "httpOnly": False,
- "secure": False
- }
- }
- result = session.transport.send("POST", "session/%s/cookie" % session.session_id, create_cookie_request)
- assert result.status == 200
- assert "value" in result.body
- assert result.body["value"] is None
-
- session.url = inline("<script>document.cookie = 'hello=newworld; domain=%s; path=/';</script>" % server_config["domains"][""])
- result = session.transport.send("GET", "session/%s/cookie" % session.session_id)
- assert result.status == 200
- assert "value" in result.body
- assert isinstance(result.body["value"], list)
- assert len(result.body["value"]) == 1
- assert isinstance(result.body["value"][0], dict)
-
- cookie = result.body["value"][0]
+
+ session.set_cookie(**new_cookie)
+ session.url = inline("""
+ <script>
+ document.cookie = '{name}=newworld; domain={domain}; path=/';
+ </script>""".format(
+ name=new_cookie["name"],
+ domain=server_config["browser_host"]))
+
+ result = get_named_cookie(session, new_cookie["name"])
+ cookie = assert_success(result)
+ assert isinstance(cookie, dict)
+
assert "name" in cookie
assert isinstance(cookie["name"], basestring)
assert "value" in cookie
assert isinstance(cookie["value"], basestring)
- assert cookie["name"] == "hello"
+ assert cookie["name"] == new_cookie["name"]
assert cookie["value"] == "newworld"
diff --git a/tests/wpt/web-platform-tests/webdriver/tests/element_click/bubbling.py b/tests/wpt/web-platform-tests/webdriver/tests/element_click/bubbling.py
index 7bf405c76f7..a5377dd8dbf 100644
--- a/tests/wpt/web-platform-tests/webdriver/tests/element_click/bubbling.py
+++ b/tests/wpt/web-platform-tests/webdriver/tests/element_click/bubbling.py
@@ -1,6 +1,7 @@
from tests.support.asserts import assert_success
from tests.support.inline import inline
+
def click(session, element):
return session.transport.send(
"POST", "/session/{session_id}/element/{element_id}/click".format(
@@ -135,7 +136,8 @@ def test_element_disappears_during_click(session):
function logEvent({type, target, currentTarget}) {
log.innerHTML += "<p></p>";
- log.lastElementChild.textContent = `${type} in ${target.id} (handled by ${currentTarget.id})`;
+ log.lastElementChild.textContent =
+ `${type} in ${target.id} (handled by ${currentTarget.id})`;
}
for (let ev of ["click", "mousedown", "mouseup"]) {
@@ -144,7 +146,9 @@ def test_element_disappears_during_click(session):
body.addEventListener(ev, logEvent);
}
- over.addEventListener("mousedown", () => over.style.display = "none");
+ over.addEventListener("mousedown", function(mousedownEvent) {
+ over.style.display = "none";
+ });
</script>
""")
over = session.find.css("#over", all=False)
diff --git a/tests/wpt/web-platform-tests/webmessaging/message-channels/close.html b/tests/wpt/web-platform-tests/webmessaging/message-channels/close.html
index cc3afd82b57..d975ea72832 100644
--- a/tests/wpt/web-platform-tests/webmessaging/message-channels/close.html
+++ b/tests/wpt/web-platform-tests/webmessaging/message-channels/close.html
@@ -59,4 +59,10 @@ async_test(t => {
c.port2.postMessage('DONE');
}, 'Close in onmessage should not cancel inflight messages.');
+test(() => {
+ const c = new MessageChannel();
+ c.port1.close();
+ assert_throws("DataCloneError", () => self.postMessage(null, "*", [c.port1]));
+ self.postMessage(null, "*", [c.port2]);
+}, "close() detaches a MessagePort (but not the one its entangled with)");
</script>
diff --git a/tests/wpt/web-platform-tests/websockets/Close-1000-reason.any.js b/tests/wpt/web-platform-tests/websockets/Close-1000-reason.any.js
index 9c2f8e13d2d..1517db2e06c 100644
--- a/tests/wpt/web-platform-tests/websockets/Close-1000-reason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Close-1000-reason.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000, "Clean Close");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000, "Clean Close");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be opened");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be opened");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Close-1000.any.js b/tests/wpt/web-platform-tests/websockets/Close-1000.any.js
index 382ab9864b2..e052f238507 100644
--- a/tests/wpt/web-platform-tests/websockets/Close-1000.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Close-1000.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be opened");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be opened");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.any.js b/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.any.js
index 412991694a9..97bc1bb224b 100644
--- a/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Close-Reason-124Bytes.any.js
@@ -1,13 +1,15 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown");
+var test = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown");
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- var reason = "0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123";
- assert_equals(reason.length, 124);
- assert_throws("SYNTAX_ERR", function () { wsocket.close(1000, reason) });
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ var reason = "0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123";
+ assert_equals(reason.length, 124);
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket.close(1000, reason)
+ });
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.any.js
index 7d2a7a2d22a..119a32d0c93 100644
--- a/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Close-reason-unpaired-surrogates.any.js
@@ -1,21 +1,21 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed");
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
- var replacementChar = "\uFFFD";
- var reason = "\uD807";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
+var replacementChar = "\uFFFD";
+var reason = "\uD807";
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000, reason);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000, reason);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be opened");
- assert_equals(evt.reason, replacementChar, "reason replaced with replacement character");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be opened");
+ assert_equals(evt.reason, replacementChar, "reason replaced with replacement character");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Close-undefined.any.js b/tests/wpt/web-platform-tests/websockets/Close-undefined.any.js
index d6d2ba7da1b..67bc9b219c1 100644
--- a/tests/wpt/web-platform-tests/websockets/Close-undefined.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Close-undefined.any.js
@@ -1,11 +1,11 @@
// META: script=websocket.sub.js
- var test = async_test();
+var test = async_test();
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- wsocket.close(undefined);
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ wsocket.close(undefined);
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
index 705814e0993..82b000dde72 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-extensions-empty.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.extensions should be set to '' after connection is established - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.extensions, "", "extensions should be empty");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.extensions, "", "extensions should be empty");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be closed");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be closed");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.any.js
index 9c979953fb4..94265c6182c 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-url-with-space.any.js
@@ -1,7 +1,9 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- var spaceUrl = "web platform.test";
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketWithSpaceInUrl(spaceUrl) });
- }, "W3C WebSocket API - Create Secure WebSocket - Pass a URL with a space - SYNTAX_ERR should be thrown")
+test(function() {
+ var wsocket;
+ var spaceUrl = "web platform.test";
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketWithSpaceInUrl(spaceUrl)
+ });
+}, "W3C WebSocket API - Create Secure WebSocket - Pass a URL with a space - SYNTAX_ERR should be thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.any.js
index d2b10541c43..fcaf8a36454 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-array-protocols.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, true);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, true);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.any.js
index 4de8c08d982..fed88f5c2f2 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-binaryType-blob.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - wsocket.binaryType should be set to 'blob' after connection is established - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.binaryType, "blob", "binaryType should be set to Blob");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.binaryType, "blob", "binaryType should be set to Blob");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js
index 54074cc52f7..7ecd2959f76 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-setCorrectly.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - protocol should be set correctly - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - protocol should be set correctly - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed");
- var wsocket = CreateWebSocket(true, true, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, true, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.protocol, "echo", "protocol should be set to echo");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.protocol, "echo", "protocol should be set to echo");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.any.js
index 5c2682dbf77..59c77c696ac 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url-protocol-string.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Check readyState is 1");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Check readyState is 1");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL and protocol string - Connection should be closed");
- var wsocket = CreateWebSocket(true, true, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, true, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.any.js
index 5d9ca8769ab..6f1229e7616 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-valid-url.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Pass a valid URL - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.any.js b/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.any.js
index 0b4aa60fd28..755dbe2f3ff 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-Secure-verify-url-set-non-default-port.any.js
@@ -1,7 +1,7 @@
// META: script=websocket.sub.js
- test(function () {
- var urlNonDefaultPort = "wss://" + __SERVER__NAME + ":" + __NEW__SECURE__PORT + "/" + __PATH;
- var wsocket = new WebSocket(urlNonDefaultPort);
- assert_equals(wsocket.url, urlNonDefaultPort, "wsocket.url is set correctly");
- }, "W3C WebSocket API - Create Secure WebSocket - wsocket.url should be set correctly")
+test(function() {
+ var urlNonDefaultPort = "wss://" + __SERVER__NAME + ":" + __NEW__SECURE__PORT + "/" + __PATH;
+ var wsocket = new WebSocket(urlNonDefaultPort);
+ assert_equals(wsocket.url, urlNonDefaultPort, "wsocket.url is set correctly");
+}, "W3C WebSocket API - Create Secure WebSocket - wsocket.url should be set correctly")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.any.js b/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.any.js
index b9e4c4466ef..cb3c3e4c96f 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-asciiSep-protocol-string.any.js
@@ -1,7 +1,9 @@
// META: script=websocket.sub.js
- test(function () {
- var asciiWithSep = "/echo";
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketWithAsciiSep(asciiWithSep) });
- }, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with an ascii separator character - SYNTAX_ERR is thrown")
+test(function() {
+ var asciiWithSep = "/echo";
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketWithAsciiSep(asciiWithSep)
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with an ascii separator character - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-blocked-port.any.js b/tests/wpt/web-platform-tests/websockets/Create-blocked-port.any.js
index 77f205e173d..f0dbc3f5229 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-blocked-port.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-blocked-port.any.js
@@ -1,81 +1,81 @@
// META: script=websocket.sub.js
- async_test(t => {
- const ws = CreateWebSocketWithBlockedPort(__PORT)
- ws.onerror = t.unreached_func()
- ws.onopen = t.step_func_done()
- }, 'Basic check');
- // list of bad ports according to
- // https://fetch.spec.whatwg.org/#port-blocking
- [
- 1, // tcpmux
- 7, // echo
- 9, // discard
- 11, // systat
- 13, // daytime
- 15, // netstat
- 17, // qotd
- 19, // chargen
- 20, // ftp-data
- 21, // ftp
- 22, // ssh
- 23, // telnet
- 25, // smtp
- 37, // time
- 42, // name
- 43, // nicname
- 53, // domain
- 77, // priv-rjs
- 79, // finger
- 87, // ttylink
- 95, // supdup
- 101, // hostriame
- 102, // iso-tsap
- 103, // gppitnp
- 104, // acr-nema
- 109, // pop2
- 110, // pop3
- 111, // sunrpc
- 113, // auth
- 115, // sftp
- 117, // uucp-path
- 119, // nntp
- 123, // ntp
- 135, // loc-srv / epmap
- 139, // netbios
- 143, // imap2
- 179, // bgp
- 389, // ldap
- 465, // smtp+ssl
- 512, // print / exec
- 513, // login
- 514, // shell
- 515, // printer
- 526, // tempo
- 530, // courier
- 531, // chat
- 532, // netnews
- 540, // uucp
- 556, // remotefs
- 563, // nntp+ssl
- 587, // smtp
- 601, // syslog-conn
- 636, // ldap+ssl
- 993, // imap+ssl
- 995, // pop3+ssl
- 2049, // nfs
- 3659, // apple-sasl
- 4045, // lockd
- 6000, // x11
- 6665, // irc (alternate)
- 6666, // irc (alternate)
- 6667, // irc (default)
- 6668, // irc (alternate)
- 6669, // irc (alternate)
- ].forEach(blockedPort => {
- async_test(t => {
- const ws = CreateWebSocketWithBlockedPort(blockedPort)
- ws.onerror = t.step_func_done()
- ws.onopen = t.unreached_func()
- }, "WebSocket blocked port test " + blockedPort)
- })
+async_test(t => {
+ const ws = CreateWebSocketWithBlockedPort(__PORT)
+ ws.onerror = t.unreached_func()
+ ws.onopen = t.step_func_done()
+}, 'Basic check');
+// list of bad ports according to
+// https://fetch.spec.whatwg.org/#port-blocking
+[
+ 1, // tcpmux
+ 7, // echo
+ 9, // discard
+ 11, // systat
+ 13, // daytime
+ 15, // netstat
+ 17, // qotd
+ 19, // chargen
+ 20, // ftp-data
+ 21, // ftp
+ 22, // ssh
+ 23, // telnet
+ 25, // smtp
+ 37, // time
+ 42, // name
+ 43, // nicname
+ 53, // domain
+ 77, // priv-rjs
+ 79, // finger
+ 87, // ttylink
+ 95, // supdup
+ 101, // hostriame
+ 102, // iso-tsap
+ 103, // gppitnp
+ 104, // acr-nema
+ 109, // pop2
+ 110, // pop3
+ 111, // sunrpc
+ 113, // auth
+ 115, // sftp
+ 117, // uucp-path
+ 119, // nntp
+ 123, // ntp
+ 135, // loc-srv / epmap
+ 139, // netbios
+ 143, // imap2
+ 179, // bgp
+ 389, // ldap
+ 465, // smtp+ssl
+ 512, // print / exec
+ 513, // login
+ 514, // shell
+ 515, // printer
+ 526, // tempo
+ 530, // courier
+ 531, // chat
+ 532, // netnews
+ 540, // uucp
+ 556, // remotefs
+ 563, // nntp+ssl
+ 587, // smtp
+ 601, // syslog-conn
+ 636, // ldap+ssl
+ 993, // imap+ssl
+ 995, // pop3+ssl
+ 2049, // nfs
+ 3659, // apple-sasl
+ 4045, // lockd
+ 6000, // x11
+ 6665, // irc (alternate)
+ 6666, // irc (alternate)
+ 6667, // irc (default)
+ 6668, // irc (alternate)
+ 6669, // irc (alternate)
+].forEach(blockedPort => {
+ async_test(t => {
+ const ws = CreateWebSocketWithBlockedPort(blockedPort)
+ ws.onerror = t.step_func_done()
+ ws.onopen = t.unreached_func()
+ }, "WebSocket blocked port test " + blockedPort)
+})
diff --git a/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.any.js b/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.any.js
index 029e45c3117..5ae25a2cdc0 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-invalid-urls.any.js
@@ -1,22 +1,32 @@
// META: script=websocket.sub.js
- var wsocket;
- test(function() {
- assert_throws("SYNTAX_ERR", function () { wsocket = new WebSocket("/echo") });
- }, "Url is /echo - should throw SYNTAX_ERR");
+var wsocket;
+test(function() {
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = new WebSocket("/echo")
+ });
+}, "Url is /echo - should throw SYNTAX_ERR");
- test(function () {
- assert_throws("SYNTAX_ERR", function () { wsocket = new WebSocket("mailto:microsoft@microsoft.com") });
- }, "Url is a mail address - should throw SYNTAX_ERR");
+test(function() {
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = new WebSocket("mailto:microsoft@microsoft.com")
+ });
+}, "Url is a mail address - should throw SYNTAX_ERR");
- test(function () {
- assert_throws("SYNTAX_ERR", function () { wsocket = new WebSocket("about:blank") });
- }, "Url is about:blank - should throw SYNTAX_ERR");
+test(function() {
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = new WebSocket("about:blank")
+ });
+}, "Url is about:blank - should throw SYNTAX_ERR");
- test(function () {
- assert_throws("SYNTAX_ERR", function () { wsocket = new WebSocket("?test") });
- }, "Url is ?test - should throw SYNTAX_ERR");
+test(function() {
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = new WebSocket("?test")
+ });
+}, "Url is ?test - should throw SYNTAX_ERR");
- test(function () {
- assert_throws("SYNTAX_ERR", function () { wsocket = new WebSocket("#test") });
- }, "Url is #test - should throw SYNTAX_ERR");
+test(function() {
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = new WebSocket("#test")
+ });
+}, "Url is #test - should throw SYNTAX_ERR");
diff --git a/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.any.js b/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.any.js
index 3f7894770cc..369557ec3f5 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-non-absolute-url.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketNonAbsolute() });
- }, "W3C WebSocket API - Create WebSocket - Pass a non absolute URL - SYNTAX_ERR is thrown")
+test(function() {
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketNonAbsolute()
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a non absolute URL - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.any.js b/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.any.js
index a4f8bb68b03..39be9f45805 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-nonAscii-protocol-string.any.js
@@ -1,7 +1,9 @@
// META: script=websocket.sub.js
- test(function () {
- var nonAsciiProtocol = "\u0080echo";
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketNonAsciiProtocol(nonAsciiProtocol) });
- }, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with non-ascii values - SYNTAX_ERR is thrown")
+test(function() {
+ var nonAsciiProtocol = "\u0080echo";
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketNonAsciiProtocol(nonAsciiProtocol)
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with non-ascii values - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-on-worker-shutdown.any.js b/tests/wpt/web-platform-tests/websockets/Create-on-worker-shutdown.any.js
index 35d925519e4..cb3eff82a68 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-on-worker-shutdown.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-on-worker-shutdown.any.js
@@ -7,7 +7,9 @@ async_test(t => {
postMessage(ws.readyState == WebSocket.CONNECTING);
}
- var workerBlob = new Blob([workerCode.toString() + ";workerCode();"], {type:"application/javascript"});
+ var workerBlob = new Blob([workerCode.toString() + ";workerCode();"], {
+ type: "application/javascript"
+ });
var w = new Worker(URL.createObjectURL(workerBlob));
w.onmessage = function(e) {
diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.any.js b/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.any.js
index 0f8c82e0ea4..b3c14d8e171 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-protocol-with-space.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketWithSpaceInProtocol("ec ho") });
- }, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with a space in it - SYNTAX_ERR is thrown")
+test(function() {
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketWithSpaceInProtocol("ec ho")
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string with a space in it - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.any.js b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.any.js
index 855e4f804ae..16f99759d18 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated-case-insensitive.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketWithRepeatedProtocolsCaseInsensitive() });
- }, "W3C WebSocket API - Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values but different case - SYNTAX_ERR is thrown")
+test(function() {
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketWithRepeatedProtocolsCaseInsensitive()
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values but different case - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.any.js b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.any.js
index ff30a9029a2..624d45306a7 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-protocols-repeated.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketWithRepeatedProtocols() });
- }, "W3C WebSocket API - Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values - SYNTAX_ERR is thrown")
+test(function() {
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketWithRepeatedProtocols()
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a valid URL and an array of protocol strings with repeated values - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.any.js b/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.any.js
index 28c6b4621ac..dde0303aa0f 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-array-protocols.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and array of protocol strings - Connection should be closed");
- var wsocket = CreateWebSocket(false, false, true);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, true);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.any.js b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.any.js
index 261ce8f75f6..8682e4a4018 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol-empty.any.js
@@ -1,7 +1,7 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket = CreateWebSocket(false, true, false);
- assert_equals(wsocket.protocol, "", "protocol should be empty");
- wsocket.close();
- }, "W3C WebSocket API - Create WebSocket - wsocket.protocol should be empty before connection is established")
+test(function() {
+ var wsocket = CreateWebSocket(false, true, false);
+ assert_equals(wsocket.protocol, "", "protocol should be empty");
+ wsocket.close();
+}, "W3C WebSocket API - Create WebSocket - wsocket.protocol should be empty before connection is established")
diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.any.js b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.any.js
index f7bb429e740..85e870fda2f 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url-protocol.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL and a protocol string - Connection should be closed");
- var wsocket = CreateWebSocket(false, true, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, true, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-valid-url.any.js b/tests/wpt/web-platform-tests/websockets/Create-valid-url.any.js
index 0dfa148d241..9a43dcc5fdd 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-valid-url.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-valid-url.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - Pass a valid URL - Connection should be closed");
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.readyState, 1, "readyState should be 1(OPEN)");
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.any.js b/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.any.js
index f4000e5de7f..5548fd134ca 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-verify-url-set-non-default-port.any.js
@@ -1,7 +1,7 @@
// META: script=websocket.sub.js
- test(function () {
- var urlNonDefaultPort = "ws://" + __SERVER__NAME + ":" + __NEW__PORT + "/" + __PATH;
- var wsocket = new WebSocket(urlNonDefaultPort);
- assert_equals(wsocket.url, urlNonDefaultPort, "wsocket.url is set correctly");
- }, "W3C WebSocket API - Create WebSocket - wsocket.url should be set correctly");
+test(function() {
+ var urlNonDefaultPort = "ws://" + __SERVER__NAME + ":" + __NEW__PORT + "/" + __PATH;
+ var wsocket = new WebSocket(urlNonDefaultPort);
+ assert_equals(wsocket.url, urlNonDefaultPort, "wsocket.url is set correctly");
+}, "W3C WebSocket API - Create WebSocket - wsocket.url should be set correctly");
diff --git a/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.any.js b/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.any.js
index e8adba0b405..506f81c1703 100644
--- a/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Create-wrong-scheme.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket;
- assert_throws("SYNTAX_ERR", function () { wsocket = CreateWebSocketNonWsScheme() });
- }, "W3C WebSocket API - Create WebSocket - Pass a URL with a non ws/wss scheme - SYNTAX_ERR is thrown")
+test(function() {
+ var wsocket;
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket = CreateWebSocketNonWsScheme()
+ });
+}, "W3C WebSocket API - Create WebSocket - Pass a URL with a non ws/wss scheme - SYNTAX_ERR is thrown")
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.any.js
index 9ec34bbe02a..4d3f67cf45a 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-reason.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000, "Clean Close");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000, "Clean Close");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.any.js
index e95e3c59b56..87ba4079ccf 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000-verify-code.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - event.code == 1000 and event.reason = 'Clean Close'");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000, reason) - event.code == 1000 and event.reason = 'Clean Close'");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000, "Clean Close");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000, "Clean Close");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.code, 1000, "CloseEvent.code should be 1000");
- assert_equals(evt.reason, "Clean Close", "CloseEvent.reason should be the same as the reason sent in close");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.code, 1000, "CloseEvent.code should be 1000");
+ assert_equals(evt.reason, "Clean Close", "CloseEvent.reason should be the same as the reason sent in close");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.any.js
index 6b13bd381b5..67f4e054a3d 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1000.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1000) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.any.js
index c6712a16b4b..a7c72eaf515 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005-verify-code.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close() - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close() - return close code is 1005 - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close() - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close() - return close code is 1005 - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.code, 1005, "CloseEvent.code should be 1005");
- assert_equals(evt.reason, "", "CloseEvent.reason should be empty");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.code, 1005, "CloseEvent.code should be 1005");
+ assert_equals(evt.reason, "", "CloseEvent.reason should be empty");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.any.js
index c01b16ed292..ddb2c185854 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-1005.any.js
@@ -1,11 +1,13 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1005) - see '7.1.5. The WebSocket Connection Close Code' in http://www.ietf.org/rfc/rfc6455.txt");
+var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(1005) - see '7.1.5. The WebSocket Connection Close Code' in http://www.ietf.org/rfc/rfc6455.txt");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- assert_throws("INVALID_ACCESS_ERR", function () { wsocket.close(1005, "1005 - reserved code") });
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ assert_throws("INVALID_ACCESS_ERR", function() {
+ wsocket.close(1005, "1005 - reserved code")
+ });
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.any.js
index 61ba4138390..0fa198eb39e 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-2999-reason.any.js
@@ -1,10 +1,12 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(2999, reason) - INVALID_ACCESS_ERR is thrown");
+var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(2999, reason) - INVALID_ACCESS_ERR is thrown");
- var wsocket = CreateWebSocket(true, false, false);
+var wsocket = CreateWebSocket(true, false, false);
- wsocket.addEventListener('open', test.step_func(function (evt) {
- assert_throws("INVALID_ACCESS_ERR", function () { wsocket.close(2999, "Close not in range 3000-4999") });
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ assert_throws("INVALID_ACCESS_ERR", function() {
+ wsocket.close(2999, "Close not in range 3000-4999")
+ });
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.any.js
index fe25d5997f1..6640ddc17d4 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-reason.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(3000, "Clean Close with code - 3000");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(3000, "Clean Close with code - 3000");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.any.js
index 92d14132c58..5b122d4c33f 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-3000-verify-code.any.js
@@ -1,19 +1,19 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - verify return code is 3000 - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(3000, reason) - verify return code is 3000 - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(3000, "Clean Close");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(3000, "Clean Close");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.code, 3000, "CloseEvent.code should be 3000");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.code, 3000, "CloseEvent.code should be 3000");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.any.js
index cba254c06ba..d57899eb3ee 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-4999-reason.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(4999, reason) - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(4999, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(4999, reason) - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(4999, reason) - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(3000, "Clean Close with code - 4999");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(3000, "Clean Close with code - 4999");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.any.js
index ecb8c5b82c1..826cb6eccf7 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-124Bytes.any.js
@@ -1,13 +1,15 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown");
+var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(code, 'reason more than 123 bytes') - SYNTAX_ERR is thrown");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- var reason = "0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123";
- assert_equals(reason.length, 124);
- assert_throws("SYNTAX_ERR", function () { wsocket.close(1000, reason) });
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ var reason = "0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123";
+ assert_equals(reason.length, 124);
+ assert_throws("SYNTAX_ERR", function() {
+ wsocket.close(1000, reason)
+ });
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.any.js
index f7fc8b441a5..fdc62c465d3 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-Reason-Unpaired-surrogates.any.js
@@ -1,21 +1,21 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(reason with unpaired surrogates) - connection should get closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
- var replacementChar = "\uFFFD";
- var reason = "\uD807";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
+var replacementChar = "\uFFFD";
+var reason = "\uD807";
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close(1000, reason);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close(1000, reason);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be opened");
- assert_equals(evt.reason, replacementChar, "reason replaced with replacement character");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be opened");
+ assert_equals(evt.reason, replacementChar, "reason replaced with replacement character");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.any.js
index 77604ed9f9e..79f79b5d833 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-onlyReason.any.js
@@ -1,10 +1,12 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(only reason) - INVALID_ACCESS_ERR is thrown");
+var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - close(only reason) - INVALID_ACCESS_ERR is thrown");
- var wsocket = CreateWebSocket(true, false, false);
+var wsocket = CreateWebSocket(true, false, false);
- wsocket.addEventListener('open', test.step_func(function (evt) {
- assert_throws("INVALID_ACCESS_ERR", function () { wsocket.close("Close with only reason") });
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ assert_throws("INVALID_ACCESS_ERR", function() {
+ wsocket.close("Close with only reason")
+ });
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.any.js
index 98018e6f434..3279744848c 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closed.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.close();
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.close();
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.any.js
index f43adfc5dc1..b18347447a5 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-readyState-Closing.any.js
@@ -1,12 +1,12 @@
// META: script=websocket.sub.js
- var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - readyState should be in CLOSING state just before onclose is called");
+var test = async_test("W3C WebSocket API - Create Secure WebSocket - Close the Connection - readyState should be in CLOSING state just before onclose is called");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- wsocket.close();
- assert_equals(wsocket.readyState, 2, "readyState should be 2(CLOSING)");
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ wsocket.close();
+ assert_equals(wsocket.readyState, 2, "readyState should be 2(CLOSING)");
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.any.js
index 240b2b65b90..8531b3140b1 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-server-initiated-close.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create Secure WebSocket - Server initiated Close - Client sends back a CLOSE - readyState should be in CLOSED state and wasClean is TRUE - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send("Goodbye");
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send("Goodbye");
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
- assert_equals(evt.wasClean, true, "wasClean should be TRUE");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(wsocket.readyState, 3, "readyState should be 3(CLOSED)");
+ assert_equals(evt.wasClean, true, "wasClean should be TRUE");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.any.js
index dc356aba744..31b36e4d955 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Close-undefined.any.js
@@ -1,11 +1,11 @@
// META: script=websocket.sub.js
- var test = async_test();
+var test = async_test();
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', test.step_func(function (evt) {
- wsocket.close(undefined);
- test.done();
- }), true);
+wsocket.addEventListener('open', test.step_func(function(evt) {
+ wsocket.close(undefined);
+ test.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.any.js
index b2cdd33877f..daa937af579 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-65K-data.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send 65K data on a Secure WebSocket - Connection should be closed");
- var data = "";
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- for (var i = 0; i < 65000; i++) {
- data = data + "c";
- }
- wsocket.send(data);
- assert_equals(data.length, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ for (var i = 0; i < 65000; i++) {
+ data = data + "c";
+ }
+ wsocket.send(data);
+ assert_equals(data.length, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.any.js
index 92bc2cdbf66..17859e5630d 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-65K-arraybuffer.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send 65K binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed");
- var data = "";
- var datasize = 65000;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 65000;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- wsocket.send(data);
- assert_equals(datasize, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ wsocket.send(data);
+ assert_equals(datasize, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data.byteLength, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data.byteLength, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.any.js
index b1a5ca80106..6e4c08d6901 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybuffer.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - ArrayBuffer - Connection should be closed");
- var data = "";
- var datasize = 15;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 15;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- wsocket.send(data);
- assert_equals(datasize, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ wsocket.send(data);
+ assert_equals(datasize, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data.byteLength, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data.byteLength, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.any.js
index c744e56214e..9825d34d5c0 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float32.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float32Array - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Float32Array(data);
- for(var i = 0; i < 2; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Float32Array(data);
+ for (var i = 0; i < 2; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Float32Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Float32Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.any.js
index 9d9037335b2..4dcac40e37e 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-float64.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Float64Array - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Float64Array(data);
- for (var i = 0; i < 1; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Float64Array(data);
+ for (var i = 0; i < 1; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Float64Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Float64Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.any.js
index 116209cc1fb..655af21575b 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-int32.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int32Array - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Int32Array(data);
- for(var i = 0; i < 2; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Int32Array(data);
+ for (var i = 0; i < 2; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Int32Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Int32Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js
index 64297301c88..16f050f3a64 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint16-offset-length.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint16Array with offset and length - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Uint16Array(data, 2, 2);
- for(var i = 0; i < 4; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Uint16Array(data, 2, 2);
+ for (var i = 0; i < 4; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Uint16Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Uint16Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js
index 5f988c03a1c..8976b3dc614 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint32-offset.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint32Array with offset - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Uint32Array(data, 0);
- for(var i = 0; i < 2; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Uint32Array(data, 0);
+ for (var i = 0; i < 2; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Uint32Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Uint32Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js
index 59d292b38b6..9e9d1b5a825 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset-length.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset and length - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Uint8Array(data, 2, 4);
- for(var i = 0; i < 8; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Uint8Array(data, 2, 4);
+ for (var i = 0; i < 8; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Uint8Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Uint8Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js
index 65e6d3ca767..f563cec9184 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-arraybufferview-uint8-offset.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Uint8Array with offset - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Uint8Array(data, 2);
- for(var i = 0; i < 8; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Uint8Array(data, 2);
+ for (var i = 0; i < 8; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Uint8Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Uint8Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.any.js
index f32294ff7cd..8bf0f12ed82 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-binary-blob.any.js
@@ -1,34 +1,34 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a Secure WebSocket - Blob - Connection should be closed");
- var data = "";
- var datasize = 65000;
- var isOpenCalled = false;
+var data = "";
+var datasize = 65000;
+var isOpenCalled = false;
- var wsocket = CreateWebSocket(true, false, false);
+var wsocket = CreateWebSocket(true, false, false);
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "blob";
- for (var i = 0; i < datasize; i++)
- data += String.fromCharCode(0);
- data = new Blob([data]);
- isOpenCalled = true;
- wsocket.send(data);
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "blob";
+ for (var i = 0; i < datasize; i++)
+ data += String.fromCharCode(0);
+ data = new Blob([data]);
+ isOpenCalled = true;
+ wsocket.send(data);
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_true(evt.data instanceof Blob);
- assert_equals(evt.data.size, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_true(evt.data instanceof Blob);
+ assert_equals(evt.data.size, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_true(evt.wasClean, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_true(evt.wasClean, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-data.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-data.any.js
index afd4f198494..04c720de792 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-data.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send data on a Secure WebSocket - Connection should be closed");
- var data = "Message to send";
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "Message to send";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-null.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-null.any.js
index b10b3d95ef8..7c374c25c24 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-null.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-null.any.js
@@ -1,30 +1,30 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send null data on a Secure WebSocket - Connection should be closed");
- var data = null;
- var nullReturned = false;
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = null;
+var nullReturned = false;
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- if ("null" == evt.data || "" == evt.data)
- nullReturned = true;
- assert_true(nullReturned);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ if ("null" == evt.data || "" == evt.data)
+ nullReturned = true;
+ assert_true(nullReturned);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.any.js
index 473685a3627..073f0647298 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-paired-surrogates.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send paired surrogates data on a Secure WebSocket - Connection should be closed");
- var data = "\uD801\uDC07";
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "\uD801\uDC07";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length * 2, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length * 2, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.any.js
index da28ebb66e5..a3518c12f7a 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-unicode-data.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send unicode data on a Secure WebSocket - Connection should be closed");
- var data = "¥¥¥¥¥¥";
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "¥¥¥¥¥¥";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length * 2, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length * 2, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.any.js
index 618fb98e514..83f3e7bebc2 100644
--- a/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Secure-Send-unpaired-surrogates.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send unpaired surrogates on a Secure WebSocket - Connection should be closed");
- var data = "\uD807";
- var replacementChar = "\uFFFD";
- var wsocket = CreateWebSocket(true, false, false);
- var isOpenCalled = false;
+var data = "\uD807";
+var replacementChar = "\uFFFD";
+var wsocket = CreateWebSocket(true, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, replacementChar);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, replacementChar);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-0byte-data.any.js b/tests/wpt/web-platform-tests/websockets/Send-0byte-data.any.js
index 92949021763..131a19d77dd 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-0byte-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-0byte-data.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send 0 byte data on a WebSocket - Connection should be closed");
- var data = "";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-65K-data.any.js b/tests/wpt/web-platform-tests/websockets/Send-65K-data.any.js
index e042e969814..172e6eed5ac 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-65K-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-65K-data.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send 65K data on a WebSocket - Connection should be closed");
- var data = "";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- for (var i = 0; i < 65000; i++) {
- data = data + "c";
- }
- wsocket.send(data);
- assert_equals(data.length, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ for (var i = 0; i < 65000; i++) {
+ data = data + "c";
+ }
+ wsocket.send(data);
+ assert_equals(data.length, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.any.js
index fc23693ae78..65bb2b16ce8 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-Unpaired-Surrogates.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send unpaired surrogates on a WebSocket - Connection should be closed");
- var data = "\uD807";
- var replacementChar = "\uFFFD";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "\uD807";
+var replacementChar = "\uFFFD";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, replacementChar);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, replacementChar);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-before-open.any.js b/tests/wpt/web-platform-tests/websockets/Send-before-open.any.js
index 14c03e942c8..101a1a2ff60 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-before-open.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-before-open.any.js
@@ -1,6 +1,8 @@
// META: script=websocket.sub.js
- test(function () {
- var wsocket = CreateWebSocket(false, false, false);
- assert_throws("INVALID_STATE_ERR", function () { wsocket.send("Message to send") });
- }, "W3C WebSocket API - Send data on a WebSocket before connection is opened - INVALID_STATE_ERR is returned")
+test(function() {
+ var wsocket = CreateWebSocket(false, false, false);
+ assert_throws("INVALID_STATE_ERR", function() {
+ wsocket.send("Message to send")
+ });
+}, "W3C WebSocket API - Send data on a WebSocket before connection is opened - INVALID_STATE_ERR is returned")
diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any.js b/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any.js
index fcea1851ef4..f446a2579b8 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send 65K binary data on a WebSocket - ArrayBuffer - Connection should be closed");
- var data = "";
- var datasize = 65000;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 65000;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- wsocket.send(data);
- assert_equals(datasize, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ wsocket.send(data);
+ assert_equals(datasize, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data.byteLength, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data.byteLength, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.any.js b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.any.js
index 543bc090184..620514351f3 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybuffer.any.js
@@ -1,31 +1,31 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBuffer - Connection should be closed");
- var data = "";
- var datasize = 15;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 15;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- wsocket.send(data);
- assert_equals(datasize, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ wsocket.send(data);
+ assert_equals(datasize, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data.byteLength, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data.byteLength, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.any.js b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.any.js
index 07c0ff2bf09..7022668e637 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int16-offset.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int16Array with offset - Connection should be closed");
- var data = "";
- var datasize = 8;
- var view;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var view;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- view = new Int16Array(data, 2);
- for(var i = 0; i < 4; i++) {
- view[i] = i;
- }
- wsocket.send(view);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ view = new Int16Array(data, 2);
+ for (var i = 0; i < 4; i++) {
+ view[i] = i;
+ }
+ wsocket.send(view);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Int16Array(evt.data);
- for(var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Int16Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], view[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.any.js b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.any.js
index 1bad2c6e4ee..242c8c6ece8 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-binary-arraybufferview-int8.any.js
@@ -1,38 +1,38 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - ArrayBufferView - Int8Array - Connection should be closed");
- var data = "";
- var datasize = 8;
- var int8View;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "";
+var datasize = 8;
+var int8View;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "arraybuffer";
- data = new ArrayBuffer(datasize);
- int8View = new Int8Array(data);
- for (var i = 0; i < 8; i++) {
- int8View[i] = i;
- }
- wsocket.send(int8View);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "arraybuffer";
+ data = new ArrayBuffer(datasize);
+ int8View = new Int8Array(data);
+ for (var i = 0; i < 8; i++) {
+ int8View[i] = i;
+ }
+ wsocket.send(int8View);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- var resultView = new Int8Array(evt.data);
- for (var i = 0; i < resultView.length; i++) {
- assert_equals(resultView[i], int8View[i], "ArrayBufferView returned is the same");
- }
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ var resultView = new Int8Array(evt.data);
+ for (var i = 0; i < resultView.length; i++) {
+ assert_equals(resultView[i], int8View[i], "ArrayBufferView returned is the same");
+ }
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-binary-blob.any.js b/tests/wpt/web-platform-tests/websockets/Send-binary-blob.any.js
index a5f39ee2e4f..ee6486ea129 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-binary-blob.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-binary-blob.any.js
@@ -1,34 +1,34 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send binary data on a WebSocket - Blob - Connection should be closed");
- var data = "";
- var datasize = 65000;
- var isOpenCalled = false;
+var data = "";
+var datasize = 65000;
+var isOpenCalled = false;
- var wsocket = CreateWebSocket(false, false, false);
+var wsocket = CreateWebSocket(false, false, false);
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.binaryType = "blob";
- for (var i = 0; i < datasize; i++)
- data += String.fromCharCode(0);
- data = new Blob([data]);
- isOpenCalled = true;
- wsocket.send(data);
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.binaryType = "blob";
+ for (var i = 0; i < datasize; i++)
+ data += String.fromCharCode(0);
+ data = new Blob([data]);
+ isOpenCalled = true;
+ wsocket.send(data);
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_true(evt.data instanceof Blob);
- assert_equals(evt.data.size, datasize);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_true(evt.data instanceof Blob);
+ assert_equals(evt.data.size, datasize);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_true(evt.wasClean, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_true(evt.wasClean, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-data.any.js b/tests/wpt/web-platform-tests/websockets/Send-data.any.js
index 53f4bd856af..487393b582e 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-data.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send data on a WebSocket - Connection should be closed");
- var data = "Message to send";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "Message to send";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-null.any.js b/tests/wpt/web-platform-tests/websockets/Send-null.any.js
index 25b5307c4ac..8d8d6b76133 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-null.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-null.any.js
@@ -1,30 +1,30 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send null data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send null data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send null data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send null data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send null data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send null data on a WebSocket - Connection should be closed");
- var data = null;
- var nullReturned = false;
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = null;
+var nullReturned = false;
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- if ("null" == evt.data || "" == evt.data)
- nullReturned = true;
- assert_true(nullReturned);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ if ("null" == evt.data || "" == evt.data)
+ nullReturned = true;
+ assert_true(nullReturned);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.any.js b/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.any.js
index 94889ce30e8..f12b0016eb0 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-paired-surrogates.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send (paired surrogates) data on a WebSocket - Connection should be closed");
- var data = "\uD801\uDC07";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "\uD801\uDC07";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length * 2, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length * 2, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/Send-unicode-data.any.js b/tests/wpt/web-platform-tests/websockets/Send-unicode-data.any.js
index 9265ac88919..ce2b9a0e240 100644
--- a/tests/wpt/web-platform-tests/websockets/Send-unicode-data.any.js
+++ b/tests/wpt/web-platform-tests/websockets/Send-unicode-data.any.js
@@ -1,28 +1,28 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Connection should be opened");
- var testMessage = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Message should be received");
- var testClose = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Connection should be opened");
+var testMessage = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Message should be received");
+var testClose = async_test("W3C WebSocket API - Send unicode data on a WebSocket - Connection should be closed");
- var data = "¥¥¥¥¥¥";
- var wsocket = CreateWebSocket(false, false, false);
- var isOpenCalled = false;
+var data = "¥¥¥¥¥¥";
+var wsocket = CreateWebSocket(false, false, false);
+var isOpenCalled = false;
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- wsocket.send(data);
- assert_equals(data.length * 2, wsocket.bufferedAmount);
- isOpenCalled = true;
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ wsocket.send(data);
+ assert_equals(data.length * 2, wsocket.bufferedAmount);
+ isOpenCalled = true;
+ testOpen.done();
+}), true);
- wsocket.addEventListener('message', testMessage.step_func(function (evt) {
- assert_equals(evt.data, data);
- wsocket.close();
- testMessage.done();
- }), true);
+wsocket.addEventListener('message', testMessage.step_func(function(evt) {
+ assert_equals(evt.data, data);
+ wsocket.close();
+ testMessage.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(isOpenCalled, "WebSocket connection should be open");
- assert_equals(evt.wasClean, true, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(isOpenCalled, "WebSocket connection should be open");
+ assert_equals(evt.wasClean, true, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.any.js b/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.any.js
index 22e6d044986..6030608c201 100644
--- a/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.any.js
+++ b/tests/wpt/web-platform-tests/websockets/binaryType-wrong-value.any.js
@@ -1,19 +1,19 @@
// META: script=websocket.sub.js
- var testOpen = async_test("W3C WebSocket API - Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be opened");
- var testClose = async_test("W3C WebSocket API - Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be closed");
+var testOpen = async_test("W3C WebSocket API - Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be opened");
+var testClose = async_test("W3C WebSocket API - Create WebSocket - set binaryType to something other than blob or arraybuffer - SYNTAX_ERR is returned - Connection should be closed");
- var wsocket = CreateWebSocket(true, false, false);
+var wsocket = CreateWebSocket(true, false, false);
- wsocket.addEventListener('open', testOpen.step_func(function (evt) {
- assert_equals(wsocket.binaryType, "blob");
- wsocket.binaryType = "notBlobOrArrayBuffer";
- assert_equals(wsocket.binaryType, "blob");
- wsocket.close();
- testOpen.done();
- }), true);
+wsocket.addEventListener('open', testOpen.step_func(function(evt) {
+ assert_equals(wsocket.binaryType, "blob");
+ wsocket.binaryType = "notBlobOrArrayBuffer";
+ assert_equals(wsocket.binaryType, "blob");
+ wsocket.close();
+ testOpen.done();
+}), true);
- wsocket.addEventListener('close', testClose.step_func(function (evt) {
- assert_true(evt.wasClean, "wasClean should be true");
- testClose.done();
- }), true);
+wsocket.addEventListener('close', testClose.step_func(function(evt) {
+ assert_true(evt.wasClean, "wasClean should be true");
+ testClose.done();
+}), true);
diff --git a/tests/wpt/web-platform-tests/websockets/close-invalid.any.js b/tests/wpt/web-platform-tests/websockets/close-invalid.any.js
index a930495ab2c..8ac1da3f5de 100644
--- a/tests/wpt/web-platform-tests/websockets/close-invalid.any.js
+++ b/tests/wpt/web-platform-tests/websockets/close-invalid.any.js
@@ -1,20 +1,20 @@
// META: script=websocket.sub.js
[
- [0, "0"],
- [500, "500"],
- [NaN, "NaN"],
- ["string", "String"],
- [null, "null"],
- [0x10000 + 1000, "2**16+1000"],
+ [0, "0"],
+ [500, "500"],
+ [NaN, "NaN"],
+ ["string", "String"],
+ [null, "null"],
+ [0x10000 + 1000, "2**16+1000"],
].forEach(function(t) {
- [true, false].forEach(function(secure) {
- test(function() {
- var ws = CreateWebSocket(secure, false, false);
- assert_throws("InvalidAccessError", function () {
- ws.close(t[0]);
- });
- wsocket.onerror = this.unreached_func();
- }, t[1] + " on a " + (secure ? "secure" : "insecure") + " websocket");
- });
+ [true, false].forEach(function(secure) {
+ test(function() {
+ var ws = CreateWebSocket(secure, false, false);
+ assert_throws("InvalidAccessError", function() {
+ ws.close(t[0]);
+ });
+ wsocket.onerror = this.unreached_func();
+ }, t[1] + " on a " + (secure ? "secure" : "insecure") + " websocket");
+ });
});
diff --git a/tests/wpt/web-platform-tests/websockets/constructor.any.js b/tests/wpt/web-platform-tests/websockets/constructor.any.js
index 60f5335fac5..0605d5e5efc 100644
--- a/tests/wpt/web-platform-tests/websockets/constructor.any.js
+++ b/tests/wpt/web-platform-tests/websockets/constructor.any.js
@@ -2,6 +2,6 @@
test(function() {
var ws = new WebSocket("ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH,
- "echo", "Stray argument")
+ "echo", "Stray argument")
assert_true(ws instanceof WebSocket, "Expected a WebSocket instance.")
}, "Calling the WebSocket constructor with too many arguments should not throw.")
diff --git a/tests/wpt/web-platform-tests/websockets/eventhandlers.any.js b/tests/wpt/web-platform-tests/websockets/eventhandlers.any.js
index f97c668a4a1..b30b0b693f4 100644
--- a/tests/wpt/web-platform-tests/websockets/eventhandlers.any.js
+++ b/tests/wpt/web-platform-tests/websockets/eventhandlers.any.js
@@ -3,7 +3,7 @@
function testEventHandler(name) {
test(function() {
var ws = new WebSocket("ws://" + __SERVER__NAME + ":" + __PORT + "/" + __PATH,
- "echo")
+ "echo")
assert_equals(ws["on" + name], null);
ws["on" + name] = function() {};
ws["on" + name] = 2;
diff --git a/tests/wpt/web-platform-tests/xhr/abort-during-open.js b/tests/wpt/web-platform-tests/xhr/abort-during-open.any.js
index 26d3f57e44a..42a1bce0ef2 100644
--- a/tests/wpt/web-platform-tests/xhr/abort-during-open.js
+++ b/tests/wpt/web-platform-tests/xhr/abort-during-open.any.js
@@ -1,4 +1,4 @@
-var test = async_test()
+var test = async_test("XMLHttpRequest: abort() during OPEN");
test.step(function() {
var client = new XMLHttpRequest()
client.open("GET", "...")
diff --git a/tests/wpt/web-platform-tests/xhr/abort-during-open.htm b/tests/wpt/web-platform-tests/xhr/abort-during-open.htm
deleted file mode 100644
index dde94f23986..00000000000
--- a/tests/wpt/web-platform-tests/xhr/abort-during-open.htm
+++ /dev/null
@@ -1,14 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <title>XMLHttpRequest: abort() during OPEN</title>
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <link rel="help" href="https://xhr.spec.whatwg.org/#the-abort()-method" data-tested-assertations="following-sibling::ol/li[4] following-sibling::ol/li[5]" />
- <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following-sibling::ol/li[1]" />
- </head>
- <body>
- <div id="log"></div>
- <script src="abort-during-open.js"></script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/xhr/abort-during-open.worker.js b/tests/wpt/web-platform-tests/xhr/abort-during-open.worker.js
deleted file mode 100644
index ffb687d0c87..00000000000
--- a/tests/wpt/web-platform-tests/xhr/abort-during-open.worker.js
+++ /dev/null
@@ -1,3 +0,0 @@
-importScripts("/resources/testharness.js");
-importScripts("abort-during-open.js");
-done();
diff --git a/tests/wpt/web-platform-tests/xhr/send-send.js b/tests/wpt/web-platform-tests/xhr/send-send.any.js
index 2e7fe865f3b..2bfe40436f4 100644
--- a/tests/wpt/web-platform-tests/xhr/send-send.js
+++ b/tests/wpt/web-platform-tests/xhr/send-send.any.js
@@ -4,4 +4,4 @@ test(function() {
client.send(null)
assert_throws("InvalidStateError", function() { client.send(null) })
client.abort()
-})
+}, "XMLHttpRequest: send() - send()");
diff --git a/tests/wpt/web-platform-tests/xhr/send-send.htm b/tests/wpt/web-platform-tests/xhr/send-send.htm
deleted file mode 100644
index cbcbdb44e00..00000000000
--- a/tests/wpt/web-platform-tests/xhr/send-send.htm
+++ /dev/null
@@ -1,13 +0,0 @@
-<!doctype html>
-<html>
- <head>
- <title>XMLHttpRequest: send() - send()</title>
- <script src="/resources/testharness.js"></script>
- <script src="/resources/testharnessreport.js"></script>
- <link rel="help" href="https://xhr.spec.whatwg.org/#the-send()-method" data-tested-assertations="following::ol/li[2]" />
- </head>
- <body>
- <div id="log"></div>
- <script src="send-send.js"></script>
- </body>
-</html>
diff --git a/tests/wpt/web-platform-tests/xhr/send-send.worker.js b/tests/wpt/web-platform-tests/xhr/send-send.worker.js
deleted file mode 100644
index 9d34ce63df2..00000000000
--- a/tests/wpt/web-platform-tests/xhr/send-send.worker.js
+++ /dev/null
@@ -1,3 +0,0 @@
-importScripts("/resources/testharness.js");
-importScripts("send-send.js");
-done();