From 20d165ac2cdf82c716ec547457ac41742964071a Mon Sep 17 00:00:00 2001 From: WPT Sync Bot Date: Tue, 10 Dec 2019 08:24:07 +0000 Subject: [PATCH 1/2] Update web-platform-tests to revision fa41b43ac93bc2fdc2427a4378dc3754d483cdda --- .../drawimage_canvas_self.html.ini | 2 + .../url/url-in-tags-revoke.window.js.ini | 2 +- .../FileAPI/url/url-with-fetch.any.js.ini | 3 + tests/wpt/metadata/MANIFEST.json | 973 +++++++++++------- .../floats-in-table-caption-001.html.ini | 2 - .../css/CSS2/text/white-space-002.xht.ini | 2 + .../css/CSS2/text/white-space-003.xht.ini | 2 + .../css/CSS2/visudet/line-height-204.html.ini | 2 + .../background-blend-mode-computed.html.ini | 57 + .../parsing/isolation-computed.html.ini | 6 + .../parsing/align-content-computed.html.ini | 24 + .../parsing/align-items-computed.html.ini | 24 + .../parsing/align-self-computed.html.ini | 27 + .../parsing/column-gap-computed.html.ini | 15 + .../css-align/parsing/gap-computed.html.ini | 33 + .../parsing/justify-content-computed.html.ini | 24 + .../parsing/justify-items-computed.html.ini | 57 + .../parsing/justify-self-computed.html.ini | 48 + .../parsing/place-content-computed.html.ini | 69 ++ .../parsing/place-items-computed.html.ini | 54 + .../parsing/place-self-computed.html.ini | 48 + .../parsing/row-gap-computed.html.ini | 18 + .../parsing/animation-computed.html.ini | 33 + ...nimation-timing-function-computed.html.ini | 12 + .../background-repeat-round-roundup.xht.ini | 2 + .../background-attachment-computed.html.ini | 3 + .../parsing/background-clip-computed.html.ini | 3 + .../parsing/background-computed.html.ini | 78 ++ .../background-origin-computed.html.ini | 3 + .../background-position-computed.html.ini | 87 ++ .../background-position-x-computed.html.ini | 21 + .../background-position-y-computed.html.ini | 21 + .../background-repeat-computed.html.ini | 3 + .../parsing/background-size-computed.html.ini | 4 + .../parsing/border-color-computed.html.ini | 12 + .../border-image-source-computed.sub.html.ini | 3 + .../parsing/border-radius-computed.html.ini | 27 + .../parsing/border-style-computed.html.ini | 12 + .../parsing/border-width-computed.html.ini | 18 + .../parsing/flex-computed.html.ini | 24 + .../parsing/flex-flow-computed.html.ini | 6 + .../parsing/flex-grow-computed.html.ini | 6 + .../parsing/flex-shrink-computed.html.ini | 6 + .../css-fonts/parsing/font-computed.html.ini | 927 +++++++++++++++++ .../font-feature-settings-computed.html.ini | 24 + .../parsing/font-kerning-computed.html.ini | 9 + .../font-language-override-computed.html.ini | 6 + .../font-optical-sizing-computed.html.ini | 6 + .../font-size-adjust-computed.html.ini | 6 + .../parsing/font-synthesis-computed.html.ini | 12 + .../font-variant-caps-computed.html.ini | 15 + .../font-variant-east-asian-computed.html.ini | 36 + .../font-variant-ligatures-computed.html.ini | 30 + .../font-variant-numeric-computed.html.ini | 33 + .../font-variant-position-computed.html.ini | 9 + .../font-variation-settings-computed.html.ini | 12 + .../image-orientation-computed.html.ini | 6 + .../parsing/image-rendering-computed.html.ini | 6 + .../parsing/object-fit-computed.html.ini | 18 + .../parsing/object-position-computed.html.ini | 48 + .../text-decoration-color-computed.html.ini | 9 + .../parsing/text-decoration-computed.html.ini | 36 + .../text-decoration-line-computed.html.ini | 6 + ...text-decoration-skip-ink-computed.html.ini | 6 + .../text-decoration-style-computed.html.ini | 15 + .../text-underline-position-computed.html.ini | 15 + ...ext-decoration-thickness-computed.html.ini | 9 + .../text-underline-offset-computed.html.ini | 9 + .../hyphens/hyphens-out-of-flow-001.html.ini | 2 - .../line-break/line-break-normal-018.xht.ini | 2 - .../line-break/line-break-strict-018.xht.ini | 2 - .../parsing/hyphens-computed.html.ini | 9 + .../parsing/line-break-computed.html.ini | 15 + .../parsing/tab-size-computed.html.ini | 24 + .../parsing/text-align-computed.html.ini | 3 + .../parsing/text-align-last-computed.html.ini | 24 + .../parsing/text-indent-computed.html.ini | 12 + .../parsing/text-justify-computed.html.ini | 3 + .../parsing/white-space-computed.html.ini | 3 + .../word-boundary-detection-computed.html.ini | 6 + .../word-boundary-expansion-computed.html.ini | 9 + .../parsing/word-break-computed.html.ini | 3 + ...text-transform-full-size-kana-001.html.ini | 2 - ...text-transform-full-size-kana-002.html.ini | 2 - ...text-transform-full-size-kana-003.html.ini | 2 - ...text-transform-full-size-kana-004.html.ini | 2 - .../trailing-ideographic-space-004.html.ini | 2 - .../word-break-break-all-007.html.ini | 2 + .../word-break-keep-all-006.html.ini | 2 + .../perspective-interpolation.html.ini | 2 +- .../perspective-origin-computed.html.ini | 63 ++ .../parsing/transform-box-computed.html.ini | 15 + .../transform-origin-computed.html.ini | 66 ++ ...on-from-ua-to-blocking-stylesheet.html.ini | 2 +- .../parsing/transition-computed.html.ini | 21 + ...ansition-timing-function-computed.html.ini | 12 + .../parsing/caret-color-computed.html.ini | 9 + .../css-ui/parsing/resize-computed.html.ini | 12 + .../parsing/user-select-computed.html.ini | 15 + .../css-values/clamp-length-computed.html.ini | 12 + .../css-values/minmax-angle-computed.html.ini | 96 ++ .../minmax-integer-computed.html.ini | 30 + .../minmax-length-computed.html.ini | 240 +++++ .../minmax-length-percent-computed.html.ini | 150 +++ .../minmax-number-computed.html.ini | 42 + .../minmax-percentage-computed.html.ini | 42 + .../css-values/minmax-time-computed.html.ini | 66 ++ .../parsing/scroll-behavior-computed.html.ini | 6 + .../border-shorthand-serialization.html.ini | 4 + .../parsing/backdrop-filter-computed.html.ini | 84 ++ ...or-interpolation-filters-computed.html.ini | 9 + .../parsing/filter-computed.html.ini | 9 + .../parsing/flood-color-computed.html.ini | 24 + .../parsing/lighting-color-computed.html.ini | 3 + .../contentType/contenttype_html.html.ini | 2 - .../contentType/contenttype_txt.html.ini | 2 - .../contentType/contenttype_xml.html.ini | 2 - .../fetch/content-type/response.window.js.ini | 15 - .../nosniff/parsing-nosniff.window.js.ini | 3 - ...mbedded-credentials.tentative.sub.html.ini | 2 +- .../traverse_the_history_1.html.ini | 4 + ...ml.ini => traverse_the_history_4.html.ini} | 2 +- .../sandbox-new-execution-context.html.ini | 4 - ...creating_browsing_context_test_01.html.ini | 4 + ...s-negative-innerwidth-innerheight.html.ini | 19 - ...features-negative-screenx-screeny.html.ini | 19 - .../open-features-negative-top-left.html.ini | 19 - ...en-features-negative-width-height.html.ini | 19 - .../open-features-non-integer-height.html.ini | 34 +- ...-features-non-integer-innerheight.html.ini | 28 +- ...n-features-non-integer-innerwidth.html.ini | 28 +- .../open-features-non-integer-left.html.ini | 28 +- ...open-features-non-integer-screenx.html.ini | 28 +- ...open-features-non-integer-screeny.html.ini | 28 +- .../open-features-non-integer-top.html.ini | 28 +- .../open-features-non-integer-width.html.ini | 34 +- .../supported-elements.html.ini | 12 +- .../the-style-element/mutations.window.js.ini | 4 + ...rame_sandbox_popups_nonescaping-3.html.ini | 3 +- .../form-double-submit-2.html.ini | 2 +- .../htmlanchorelement_noopener.html.ini | 2 +- .../script-onerror-insertion-point-2.html.ini | 2 - .../the-offscreen-canvas/size.large.html.ini | 2 + .../size.large.worker.js.ini | 2 + .../webtiming-resolution.any.js.ini | 3 + ...riodic-background-sync-permission.html.ini | 4 + .../crossorigin-sandwich-TAO.sub.html.ini | 1 - .../workerStart-tao-protected.https.html.ini | 11 + .../realtimeanalyser-fft-scaling.html.ini | 1 - .../tests/set_window_rect/set.py.ini | 3 - .../webmessaging/with-ports/018.html.ini | 5 + .../webmessaging/without-ports/018.html.ini | 5 + .../Worker-constructor-proto.any.js.ini | 3 - .../workers/Worker-location.sub.any.js.ini | 3 - .../workers/Worker-multi-port.html.ini | 10 - .../alpha/import-in-moduleworker.html.ini | 1 - .../alpha/sharedworker-in-worker.html.ini | 1 - .../Worker/Worker-constructor.html.ini | 2 - .../semantics/multiple-workers/005.html.ini | 1 - .../semantics/run-a-worker/003.html.ini | 1 - tests/wpt/web-platform-tests/.taskcluster.yml | 2 +- .../IndexedDB/get-databases.any.js | 4 +- ...ch_feature_policy.tentative.sub.https.html | 4 + ...re_policy.tentative.sub.https.html.headers | 4 +- .../echo_client_hints_received.py | 2 + .../conformance-checkers/META.yml | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...rce-with-following-img-srcset-novalid.html | 1 + ...e-with-following-source-media-novalid.html | 1 + ...-with-following-source-srcset-novalid.html | 1 + ...ce-with-following-source-type-novalid.html | 1 + .../picture/audio-srcset-novalid.html | 1 + .../html-syntax-img-end-tag-novalid.html | 1 + ...tml-syntax-picture-no-end-tag-novalid.html | 1 + ...ntax-picture-slash-no-end-tag-novalid.html | 1 + .../html-syntax-picture-slash-novalid.html | 1 + .../html-syntax-source-end-tag-novalid.html | 1 + .../elements/picture/img-no-src-novalid.html | 1 + .../img-no-src-with-picture-novalid.html | 1 + .../img-no-src-with-source-novalid.html | 1 + ...o-src-with-srcset-and-picture-novalid.html | 1 + .../img-no-src-with-srcset-novalid.html | 1 + ...cset-no-descriptor-with-sizes-novalid.html | 1 + ...mg-srcset-w-and-x-width-sizes-novalid.html | 1 + .../img-srcset-w-no-sizes-novalid.html | 1 + .../elements/picture/img-type-novalid.html | 1 + .../img-type-with-picture-novalid.html | 1 + .../img-with-sizes-no-srcset-novalid.html | 1 + .../input-type-image-srcset-novalid.html | 1 + .../picture/junk-br-after-img-novalid.html | 1 + .../picture/junk-br-after-source-novalid.html | 1 + .../picture/junk-br-before-img-novalid.html | 1 + .../junk-br-before-source-novalid.html | 1 + .../picture/junk-figure-wrapping-novalid.html | 1 + .../junk-input-type-hidden-novalid.html | 1 + .../picture/junk-math-nog-img-novalid.html | 1 + ...-noscript-after-source-no-img-novalid.html | 1 + .../picture/junk-noscript-novalid.html | 1 + .../picture/junk-p-after-novalid.html | 1 + .../picture/junk-p-before-novalid.html | 1 + .../picture/junk-p-wrapping-novalid.html | 1 + .../picture/junk-picture-before-novalid.html | 1 + .../junk-picture-wrapping-novalid.html | 1 + .../picture/junk-span-after-novalid.html | 1 + .../picture/junk-span-before-novalid.html | 1 + .../picture/junk-span-wrapping-novalid.html | 1 + .../picture/junk-style-scroped-novalid.html | 1 + .../picture/junk-svg-no-img-novalid.html | 1 + .../elements/picture/junk-svg-novalid.html | 1 + .../picture/junk-text-after-img-novalid.html | 1 + .../junk-text-after-source-novalid.html | 1 + .../picture/junk-text-before-img-novalid.html | 1 + .../junk-text-before-source-novalid.html | 1 + .../picture/junk-video-before-novalid.html | 1 + .../picture/junk-video-no-img-novalid.html | 1 + .../picture/link-rel-icon-srcset-novalid.html | 1 + .../missing-img-empty-picture-novalid.html | 1 + .../missing-img-only-script-novalid.html | 1 + .../missing-img-only-source-novalid.html | 1 + ...missing-img-script-and-source-novalid.html | 1 + ...missing-img-source-and-script-novalid.html | 1 + .../picture/multiple-img-novalid.html | 1 + .../multiple-img-with-script-novalid.html | 1 + ...le-img-with-source-and-script-novalid.html | 1 + .../multiple-img-with-source-novalid.html | 1 + .../picture/object-srcset-novalid.html | 1 + .../elements/picture/parent-dl-novalid.html | 1 + .../picture/parent-hgroup-novalid.html | 1 + .../parent-noscript-in-head-novalid.html | 1 + .../elements/picture/parent-rp-novalid.html | 5 + .../elements/picture/parent-ul-novalid.html | 1 + .../picture/picture-align-novalid.html | 1 + .../elements/picture/picture-alt-novalid.html | 1 + ...picture-aria-role-application-novalid.html | 1 + .../picture-aria-role-button-novalid.html | 1 + .../picture-aria-role-img-novalid.html | 1 + ...icture-aria-role-presentation-novalid.html | 1 + .../picture-aria-role-region-novalid.html | 1 + .../picture/picture-border-novalid.html | 1 + .../picture/picture-crossorigin-novalid.html | 1 + .../picture/picture-height-novalid.html | 1 + .../picture/picture-hspace-novalid.html | 1 + .../picture/picture-ismap-novalid.html | 1 + .../elements/picture/picture-isvalid.html | 4 +- .../picture/picture-longdesc-novalid.html | 1 + .../picture/picture-lowsrc-novalid.html | 1 + .../picture/picture-media-novalid.html | 1 + .../picture/picture-name-novalid.html | 1 + .../picture/picture-sizes-novalid.html | 1 + .../elements/picture/picture-src-novalid.html | 1 + .../picture/picture-srcset-novalid.html | 1 + .../picture/picture-usemap-novalid.html | 1 + .../picture/picture-vspace-novalid.html | 1 + .../picture/picture-width-novalid.html | 1 + ...syntax-auto-source-size-value-novalid.html | 1 + .../sizes-microsyntax-comma-novalid.html | 1 + ...syntax-css-comment-after-plus-novalid.html | 1 + ...yntax-css-comment-before-unit-novalid.html | 1 + ...zes-microsyntax-default-first-novalid.html | 1 + ...tax-default-source-size-value-novalid.html | 1 + ...osyntax-deg-source-size-value-novalid.html | 1 + ...syntax-dpcm-source-size-value-novalid.html | 1 + ...osyntax-dpi-source-size-value-novalid.html | 1 + ...syntax-dppx-source-size-value-novalid.html | 1 + .../sizes-microsyntax-empty-novalid.html | 1 + ...tax-foo-bar-source-size-value-novalid.html | 1 + ...syntax-grad-source-size-value-novalid.html | 1 + ...rosyntax-hz-source-size-value-novalid.html | 1 + ...tax-inherit-source-size-value-novalid.html | 1 + ...tax-initial-source-size-value-novalid.html | 1 + ...s-microsyntax-junk-in-default-novalid.html | 1 + ...crosyntax-junk-in-source-size-novalid.html | 1 + ...osyntax-khz-source-size-value-novalid.html | 1 + ...yntax-media-all-and-min-width-novalid.html | 1 + .../sizes-microsyntax-media-all-novalid.html | 1 + ...es-microsyntax-media-bad-junk-novalid.html | 1 + ...x-media-general-enclosed-junk-novalid.html | 1 + ...edia-min-width-no-parenthesis-novalid.html | 1 + ...rosyntax-ms-source-size-value-novalid.html | 1 + ...ax-negative-source-size-value-novalid.html | 1 + ...-no-unit-in-source-size-value-novalid.html | 1 + ...-percent-in-source-size-value-novalid.html | 1 + ...osyntax-rad-source-size-value-novalid.html | 1 + ...crosyntax-s-source-size-value-novalid.html | 1 + ...-scientific-notation-negative-novalid.html | 1 + ...ation-non-integer-in-exponent-novalid.html | 1 + ...es-microsyntax-trailing-comma-novalid.html | 1 + ...zes-microsyntax-trailing-junk-novalid.html | 1 + ...syntax-turn-source-size-value-novalid.html | 1 + ...izes-microsyntax-two-defaults-novalid.html | 1 + .../picture/source-after-img-novalid.html | 1 + .../picture/source-align-novalid.html | 1 + .../elements/picture/source-alt-novalid.html | 1 + .../picture/source-aria-role-img-novalid.html | 1 + ...source-aria-role-presentation-novalid.html | 1 + .../source-before-and-after-img-novalid.html | 1 + .../picture/source-border-novalid.html | 1 + .../picture/source-crossorigin-novalid.html | 1 + .../picture/source-height-novalid.html | 1 + .../picture/source-hspace-novalid.html | 1 + .../picture/source-ismap-novalid.html | 1 + .../picture/source-longdesc-novalid.html | 1 + .../elements/picture/source-name-novalid.html | 1 + .../picture/source-no-srcset-novalid.html | 1 + .../source-no-srcset-with-media-novalid.html | 1 + .../source-no-srcset-with-sizes-novalid.html | 1 + .../source-no-srcset-with-type-novalid.html | 1 + .../elements/picture/source-src-novalid.html | 1 + .../picture/source-src-srcset-novalid.html | 1 + .../source-srcset-h-with-sizes-novalid.html | 1 + ...rce-srcset-w-and-x-with-sizes-novalid.html | 1 + .../source-srcset-w-no-sizes-novalid.html | 1 + .../source-srcset-x-with-sizes-novalid.html | 1 + .../picture/source-type-srcset-w-novalid.html | 1 + .../picture/source-usemap-novalid.html | 1 + .../picture/source-vspace-novalid.html | 1 + .../picture/source-width-novalid.html | 1 + ...srcset-microsyntax-broken-url-novalid.html | 1 + .../srcset-microsyntax-comma-novalid.html | 1 + ...-css-comment-after-descriptor-novalid.html | 1 + ...icrosyntax-curly-bracket-junk-novalid.html | 1 + .../srcset-microsyntax-empty-novalid.html | 1 + .../srcset-microsyntax-function-novalid.html | 1 + .../picture/srcset-microsyntax-h-novalid.html | 1 + ...srcset-microsyntax-infinity-x-novalid.html | 1 + ...syntax-leading-comma-multiple-novalid.html | 1 + ...set-microsyntax-leading-comma-novalid.html | 1 + .../srcset-microsyntax-nan-x-novalid.html | 1 + ...srcset-microsyntax-negative-w-novalid.html | 1 + ...srcset-microsyntax-negative-x-novalid.html | 1 + ...t-microsyntax-negative-zero-w-novalid.html | 1 + ...t-microsyntax-negative-zero-x-novalid.html | 1 + ...set-microsyntax-non-integer-w-novalid.html | 1 + ...-microsyntax-parenthesis-junk-novalid.html | 1 + .../srcset-microsyntax-pipe-junk-novalid.html | 1 + .../srcset-microsyntax-plus-w-novalid.html | 1 + .../srcset-microsyntax-plus-x-novalid.html | 1 + ...osyntax-scientific-notation-w-novalid.html | 1 + ...crosyntax-square-bracket-junk-novalid.html | 1 + ...yntax-trailing-comma-multiple-novalid.html | 1 + ...et-microsyntax-trailing-comma-novalid.html | 1 + ...ue-descriptors-1x-and-omitted-novalid.html | 1 + ...osyntax-unique-descriptors-2x-novalid.html | 1 + ...iptors-integer-and-decimals-x-novalid.html | 1 + ...rosyntax-unique-descriptors-w-novalid.html | 1 + ...rcset-microsyntax-uppercase-w-novalid.html | 1 + .../srcset-microsyntax-w-and-h-novalid.html | 1 + ...crosyntax-w-and-no-descriptor-novalid.html | 1 + .../srcset-microsyntax-x-and-h-novalid.html | 1 + .../srcset-microsyntax-x-and-w-novalid.html | 1 + .../srcset-microsyntax-zero-w-novalid.html | 1 + .../srcset-microsyntax-zero-x-novalid.html | 1 + .../picture/svg-image-srcset-novalid.html | 1 + .../picture/track-srcset-novalid.html | 1 + .../video-source-media-src-novalid.html | 1 + .../video-source-sizes-srcset-novalid.html | 1 + .../picture/video-source-srcset-novalid.html | 1 + .../video-source-srcset-src-novalid.html | 1 + .../picture/video-srcset-novalid.html | 1 + .../conformance-checkers/messages.json | 1 + .../conformance-checkers/tools/picture.py | 7 +- ...eratedcredential-framed-get.sub.https.html | 28 +- ...sswordcredential-framed-get.sub.https.html | 34 +- ...solute-dynamic-static-position-inline.html | 13 + ...html => marker-content-007.tentative.html} | 0 ...html => marker-content-008.tentative.html} | 0 ...html => marker-content-009.tentative.html} | 0 ...html => marker-content-011.tentative.html} | 0 .../parsing/marker-supported-properties.html | 3 + .../css-sizing/ortho-writing-mode-001.html | 16 - .../css/css-transitions/README.md | 2 +- .../css-values/minmax-length-computed.html | 8 +- .../minmax-length-percent-computed.html | 12 +- .../cssom/border-shorthand-serialization.html | 42 + .../css/support/computed-testcommon.js | 18 +- .../css/tools/apiclient/README.md | 4 +- .../testdriver-extension-tutorial.md | 4 +- .../docs/writing-tests/testdriver.md | 2 +- .../dom/svg-insert-crash.html | 18 + .../wpt/web-platform-tests/dpub-aam/README.md | 2 +- .../web-platform-tests/dpub-aria/README.md | 2 +- ...policy-timing-iframe-camera.https.sub.html | 15 + ...-policy-frame-policy-timing.https.sub.html | 69 ++ .../fetch/content-type/README.md | 2 +- ...with-nonsniffable-types.tentative.sub.html | 5 +- .../appcache.tentative.https.sub.html | 2 +- ...ox-navigation-timing-iframe.tentative.html | 16 + .../sandbox-navigation-timing.tentative.html | 29 + .../sandbox-new-execution-context.html | 35 +- .../require-corp-about-blank.html | 47 + .../require-corp-about-blank.html.headers | 1 + .../require-corp-about-srcdoc.html | 49 + .../require-corp-about-srcdoc.html.headers | 1 + .../the-style-element/mutations.window.js | 39 + .../actions/multiTouchPoints.html.ini | 4 - .../multiTouchPointsTwoTouchStarts.html.ini | 3 + .../multiTouchPointsWithPause.html.ini | 1 - ...html.ini => set_permission.https.html.ini} | 2 +- .../multiTouchPointsTwoTouchStarts.html | 56 + ...mission.html => set_permission.https.html} | 4 +- .../interfaces/webauthn.idl | 2 +- ...onnected-image-loading-lazy.tentative.html | 30 + ...t-periodic-background-sync-permission.html | 13 + .../portals/csp/frame-ancestors.sub.html | 13 + .../resource-timing/resources/sw-install.html | 47 + .../resource-timing/resources/sw.js | 3 + .../workerStart-tao-protected.https.html | 82 ++ .../resources/chromium/nfc-mock.js | 49 +- .../resources/chromium/webxr-test.js | 32 +- .../test/tests/functional/api-tests-1.html | 12 - .../test/tests/unit/assert_object_equals.html | 170 +++ .../resources/testdriver.js | 12 +- ...s => getScreens.tentative.https.window.js} | 9 +- .../resources/dummy-worker-interceptor.js | 5 +- .../sms/detached-iframe.https.html | 24 + .../wpt/web-platform-tests/svg-aam/README.md | 2 +- tests/wpt/web-platform-tests/svg/META.yml | 1 + .../svg/animations/discard-on-discard.html | 54 - ...r-units-strokewidth-non-scaling-stroke.svg | 13 + ...nits-userspaceonuse-non-scaling-stroke.svg | 13 + .../requiredextensions-empty-string.svg | 6 + .../requiredextensions-xhtml.tentative.svg | 12 + .../wpt/web-platform-tests/tools/ci/run_tc.py | 88 +- .../tools/ci/tc/decision.py | 50 +- .../tools/ci/tc/tasks/test.yml | 7 + .../tools/ci/tc/tests/test_valid.py | 4 +- .../tools/manifest/testpaths.py | 36 +- .../web-platform-tests/tools/wpt/browser.py | 16 +- tests/wpt/web-platform-tests/tools/wpt/run.py | 28 +- .../tools/wptrunner/docs/expectation.rst | 2 +- .../wptrunner/wptrunner/browsers/__init__.py | 3 +- .../wptrunner/browsers/android_weblayer.py | 135 +++ .../wptrunner/wptrunner/executors/base.py | 6 +- .../wptrunner/executors/executorwebdriver.py | 6 +- .../wptrunner/wptrunner/executors/protocol.py | 4 +- .../tools/wptrunner/wptrunner/testrunner.py | 17 +- ...TypePolicyFactory-constants.tentative.html | 18 + ...sertion-into-script-element.tentative.html | 245 ++++- .../wpt/web-platform-tests/wai-aria/README.md | 2 +- .../interfaces/Animatable/animate.html | 36 +- .../interfaces/KeyframeEffect/target.html | 154 ++- .../reverse-running-animation-ref.html | 19 +- .../animations/reverse-running-animation.html | 65 +- ...ting-the-current-time-of-an-animation.html | 69 ++ ...ing-the-playback-rate-of-an-animation.html | 49 + ...etting-the-start-time-of-an-animation.html | 31 + .../NDEFErrorEvent_constructor.https.html | 20 - .../NDEFMessage_constructor.https.html | 1 - .../web-nfc/NDEFReader_scan.https.html | 80 +- .../web-nfc/NDEFReader_scan_filter.https.html | 19 +- .../NDEFReadingEvent_constructor.https.html | 1 - .../web-nfc/NDEFRecord_constructor.https.html | 6 + .../web-nfc/NDEFWriter_push.https.html | 22 +- .../web-nfc/idlharness.https.window.js | 1 - .../web-nfc/resources/nfc-helpers.js | 3 - ...oworkletglobalscope-sample-rate.https.html | 40 +- ...oworkletglobalscope-timing-info.https.html | 66 +- .../audioworkletnode-onerror.https.html | 66 +- ...orkletnode-output-channel-count.https.html | 4 +- .../cors-check.https.html | 100 +- .../no-cors.https.html | 98 +- .../webauthn/resources/common-inputs.js | 34 + .../webauthn/resources/utils.js | 335 ++++++ .../webauthn-testdriver-basic.https.html | 117 +++ .../workers/Worker-constructor-proto.any.js | 2 +- .../workers/Worker-location.sub.any.js | 2 +- .../workers/Worker-multi-port.html | 6 +- .../workers/WorkerGlobalScope-close.html | 27 +- .../workers/Worker_script_mimetype.htm | 2 + 474 files changed, 6971 insertions(+), 1378 deletions(-) create mode 100644 tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini delete mode 100644 tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini create mode 100644 tests/wpt/metadata/css/CSS2/text/white-space-002.xht.ini create mode 100644 tests/wpt/metadata/css/CSS2/text/white-space-003.xht.ini create mode 100644 tests/wpt/metadata/css/CSS2/visudet/line-height-204.html.ini create mode 100644 tests/wpt/metadata/css/css-backgrounds/background-repeat/background-repeat-round-roundup.xht.ini delete mode 100644 tests/wpt/metadata/css/css-text/hyphens/hyphens-out-of-flow-001.html.ini delete mode 100644 tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini delete mode 100644 tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini delete mode 100644 tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-001.html.ini delete mode 100644 tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-002.html.ini delete mode 100644 tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-003.html.ini delete mode 100644 tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-004.html.ini delete mode 100644 tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini create mode 100644 tests/wpt/metadata/css/css-text/word-break/word-break-break-all-007.html.ini create mode 100644 tests/wpt/metadata/css/css-text/word-break/word-break-keep-all-006.html.ini create mode 100644 tests/wpt/metadata/css/cssom/border-shorthand-serialization.html.ini delete mode 100644 tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini delete mode 100644 tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini delete mode 100644 tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini create mode 100644 tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini rename tests/wpt/metadata/html/browsers/history/the-history-interface/{traverse_the_history_5.html.ini => traverse_the_history_4.html.ini} (71%) delete mode 100644 tests/wpt/metadata/html/browsers/sandboxing/sandbox-new-execution-context.html.ini create mode 100644 tests/wpt/metadata/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/creating_browsing_context_test_01.html.ini create mode 100644 tests/wpt/metadata/html/semantics/document-metadata/the-style-element/mutations.window.js.ini delete mode 100644 tests/wpt/metadata/html/semantics/scripting-1/the-script-element/script-onerror-insertion-point-2.html.ini create mode 100644 tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.html.ini create mode 100644 tests/wpt/metadata/offscreen-canvas/the-offscreen-canvas/size.large.worker.js.ini create mode 100644 tests/wpt/metadata/permissions/test-periodic-background-sync-permission.html.ini create mode 100644 tests/wpt/metadata/resource-timing/workerStart-tao-protected.https.html.ini create mode 100644 tests/wpt/metadata/webmessaging/with-ports/018.html.ini create mode 100644 tests/wpt/metadata/webmessaging/without-ports/018.html.ini delete mode 100644 tests/wpt/metadata/workers/Worker-multi-port.html.ini delete mode 100644 tests/wpt/metadata/workers/constructors/Worker/Worker-constructor.html.ini create mode 100644 tests/wpt/web-platform-tests/conformance-checkers/html/elements/picture/parent-rp-novalid.html create mode 100644 tests/wpt/web-platform-tests/css/css-position/position-absolute-dynamic-static-position-inline.html rename tests/wpt/web-platform-tests/css/css-pseudo/{marker-content-007.html => marker-content-007.tentative.html} (100%) rename tests/wpt/web-platform-tests/css/css-pseudo/{marker-content-008.html => marker-content-008.tentative.html} (100%) rename tests/wpt/web-platform-tests/css/css-pseudo/{marker-content-009.html => marker-content-009.tentative.html} (100%) rename tests/wpt/web-platform-tests/css/css-pseudo/{marker-content-011.html => marker-content-011.tentative.html} (100%) delete mode 100644 tests/wpt/web-platform-tests/css/css-sizing/ortho-writing-mode-001.html create mode 100644 tests/wpt/web-platform-tests/css/cssom/border-shorthand-serialization.html create mode 100644 tests/wpt/web-platform-tests/dom/svg-insert-crash.html create mode 100644 tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-timing-iframe-camera.https.sub.html create mode 100644 tests/wpt/web-platform-tests/feature-policy/feature-policy-frame-policy-timing.https.sub.html create mode 100644 tests/wpt/web-platform-tests/html/browsers/sandboxing/sandbox-navigation-timing-iframe.tentative.html create mode 100644 tests/wpt/web-platform-tests/html/browsers/sandboxing/sandbox-navigation-timing.tentative.html create mode 100644 tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-about-blank.html create mode 100644 tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-about-blank.html.headers create mode 100644 tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-about-srcdoc.html create mode 100644 tests/wpt/web-platform-tests/html/cross-origin-embedder-policy/require-corp-about-srcdoc.html.headers create mode 100644 tests/wpt/web-platform-tests/html/semantics/document-metadata/the-style-element/mutations.window.js create mode 100644 tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html.ini rename tests/wpt/web-platform-tests/infrastructure/metadata/infrastructure/testdriver/{set_permission.html.ini => set_permission.https.html.ini} (62%) create mode 100644 tests/wpt/web-platform-tests/infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html rename tests/wpt/web-platform-tests/infrastructure/testdriver/{set_permission.html => set_permission.https.html} (71%) create mode 100644 tests/wpt/web-platform-tests/loading/lazyload/disconnected-image-loading-lazy.tentative.html create mode 100644 tests/wpt/web-platform-tests/permissions/test-periodic-background-sync-permission.html create mode 100644 tests/wpt/web-platform-tests/portals/csp/frame-ancestors.sub.html create mode 100644 tests/wpt/web-platform-tests/resource-timing/resources/sw-install.html create mode 100644 tests/wpt/web-platform-tests/resource-timing/resources/sw.js create mode 100644 tests/wpt/web-platform-tests/resource-timing/workerStart-tao-protected.https.html create mode 100644 tests/wpt/web-platform-tests/resources/test/tests/unit/assert_object_equals.html rename tests/wpt/web-platform-tests/screen_enumeration/{getScreens.tentative.https.any.js => getScreens.tentative.https.window.js} (78%) create mode 100644 tests/wpt/web-platform-tests/sms/detached-iframe.https.html delete mode 100644 tests/wpt/web-platform-tests/svg/animations/discard-on-discard.html create mode 100644 tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg create mode 100644 tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg create mode 100644 tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-empty-string.svg create mode 100644 tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-xhtml.tentative.svg create mode 100644 tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py delete mode 100644 tests/wpt/web-platform-tests/web-nfc/NDEFErrorEvent_constructor.https.html create mode 100644 tests/wpt/web-platform-tests/webauthn/resources/common-inputs.js create mode 100644 tests/wpt/web-platform-tests/webauthn/resources/utils.js create mode 100644 tests/wpt/web-platform-tests/webauthn/webauthn-testdriver-basic.https.html diff --git a/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini b/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini new file mode 100644 index 00000000000..9ce1e84d0ca --- /dev/null +++ b/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini @@ -0,0 +1,2 @@ +[drawimage_canvas_self.html] + expected: FAIL diff --git a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini index a9e46713244..76b398963ae 100644 --- a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -7,7 +7,7 @@ expected: FAIL [Opening a blob URL in a new window immediately before revoking it works.] - expected: TIMEOUT + expected: FAIL [Opening a blob URL in a noopener about:blank window immediately before revoking it works.] expected: FAIL diff --git a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini index f28a19f1250..4c1aa18e695 100644 --- a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini @@ -10,3 +10,6 @@ [Revoke blob URL after creating Request, will fetch] expected: FAIL + [Revoke blob URL after calling fetch, fetch should succeed] + expected: FAIL + diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 3081e9d40de..b5d26a19d6c 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -137869,6 +137869,18 @@ {} ] ], + "css/css-position/position-absolute-dynamic-static-position-inline.html": [ + [ + "css/css-position/position-absolute-dynamic-static-position-inline.html", + [ + [ + "/css/reference/ref-filled-green-100px-square-only.html", + "==" + ] + ], + {} + ] + ], "css/css-position/position-absolute-dynamic-static-position-margin-001.html": [ [ "css/css-position/position-absolute-dynamic-static-position-margin-001.html", @@ -139153,9 +139165,9 @@ {} ] ], - "css/css-pseudo/marker-content-007.html": [ + "css/css-pseudo/marker-content-007.tentative.html": [ [ - "css/css-pseudo/marker-content-007.html", + "css/css-pseudo/marker-content-007.tentative.html", [ [ "/css/css-pseudo/marker-content-007-ref.html", @@ -139165,9 +139177,9 @@ {} ] ], - "css/css-pseudo/marker-content-008.html": [ + "css/css-pseudo/marker-content-008.tentative.html": [ [ - "css/css-pseudo/marker-content-008.html", + "css/css-pseudo/marker-content-008.tentative.html", [ [ "/css/css-pseudo/marker-content-008-ref.html", @@ -139177,9 +139189,9 @@ {} ] ], - "css/css-pseudo/marker-content-009.html": [ + "css/css-pseudo/marker-content-009.tentative.html": [ [ - "css/css-pseudo/marker-content-009.html", + "css/css-pseudo/marker-content-009.tentative.html", [ [ "/css/css-pseudo/marker-content-009-ref.html", @@ -139201,9 +139213,9 @@ {} ] ], - "css/css-pseudo/marker-content-011.html": [ + "css/css-pseudo/marker-content-011.tentative.html": [ [ - "css/css-pseudo/marker-content-011.html", + "css/css-pseudo/marker-content-011.tentative.html", [ [ "/css/css-pseudo/marker-content-011-ref.html", @@ -144453,18 +144465,6 @@ {} ] ], - "css/css-sizing/ortho-writing-mode-001.html": [ - [ - "css/css-sizing/ortho-writing-mode-001.html", - [ - [ - "/css/reference/ref-filled-green-100px-square.xht", - "==" - ] - ], - {} - ] - ], "css/css-sizing/orthogonal-writing-mode-float-in-inline.html": [ [ "css/css-sizing/orthogonal-writing-mode-float-in-inline.html", @@ -207935,6 +207935,30 @@ {} ] ], + "svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg": [ + [ + "svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg", + [ + [ + "/svg/embedded/reference/green-rect-100x100.svg", + "==" + ] + ], + {} + ] + ], + "svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg": [ + [ + "svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg", + [ + [ + "/svg/embedded/reference/green-rect-100x100.svg", + "==" + ] + ], + {} + ] + ], "svg/painting/reftests/markers-orient-001.svg": [ [ "svg/painting/reftests/markers-orient-001.svg", @@ -208595,6 +208619,30 @@ {} ] ], + "svg/struct/reftests/requiredextensions-empty-string.svg": [ + [ + "svg/struct/reftests/requiredextensions-empty-string.svg", + [ + [ + "/svg/struct/scripted/blank.svg", + "==" + ] + ], + {} + ] + ], + "svg/struct/reftests/requiredextensions-xhtml.tentative.svg": [ + [ + "svg/struct/reftests/requiredextensions-xhtml.tentative.svg", + [ + [ + "/svg/struct/reftests/reference/green-100x100.svg", + "==" + ] + ], + {} + ] + ], "svg/struct/reftests/use-external-resource-with-revalidation.tentative.html": [ [ "svg/struct/reftests/use-external-resource-with-revalidation.tentative.html", @@ -226772,6 +226820,9 @@ "conformance-checkers/html/elements/picture/parent-noscript-in-head-novalid.html": [ [] ], + "conformance-checkers/html/elements/picture/parent-rp-novalid.html": [ + [] + ], "conformance-checkers/html/elements/picture/parent-ul-novalid.html": [ [] ], @@ -268406,6 +268457,9 @@ "feature-policy/feature-policy-frame-policy-disallowed-for-all.https.sub.html.sub.headers": [ [] ], + "feature-policy/feature-policy-frame-policy-timing-iframe-camera.https.sub.html": [ + [] + ], "feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html.sub.headers": [ [] ], @@ -270479,6 +270533,9 @@ "html/browsers/sandboxing/resources/post-done-to-opener.html": [ [] ], + "html/browsers/sandboxing/sandbox-navigation-timing-iframe.tentative.html": [ + [] + ], "html/browsers/sandboxing/sandbox-new-execution-context-iframe.html": [ [] ], @@ -270743,6 +270800,12 @@ "html/cross-origin-embedder-policy/none.https.html.headers": [ [] ], + "html/cross-origin-embedder-policy/require-corp-about-blank.html.headers": [ + [] + ], + "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html.headers": [ + [] + ], "html/cross-origin-embedder-policy/require-corp-sw-from-require-corp.https.html.headers": [ [] ], @@ -276857,6 +276920,9 @@ "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini": [ [] ], + "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html.ini": [ + [] + ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsWithPause.html.ini": [ [] ], @@ -276872,7 +276938,7 @@ "infrastructure/metadata/infrastructure/testdriver/generate_test_report.html.ini": [ [] ], - "infrastructure/metadata/infrastructure/testdriver/set_permission.html.ini": [ + "infrastructure/metadata/infrastructure/testdriver/set_permission.https.html.ini": [ [] ], "infrastructure/metadata/infrastructure/testdriver/virtual_authenticator.html.ini": [ @@ -281897,6 +281963,12 @@ "resource-timing/resources/status-code.py": [ [] ], + "resource-timing/resources/sw-install.html": [ + [] + ], + "resource-timing/resources/sw.js": [ + [] + ], "resource-timing/resources/webperftestharness.js": [ [] ], @@ -282278,6 +282350,9 @@ "resources/test/tests/unit/IdlInterfaceMember/is_to_json_regular_operation.html": [ [] ], + "resources/test/tests/unit/assert_object_equals.html": [ + [] + ], "resources/test/tests/unit/basic.html": [ [] ], @@ -289052,6 +289127,9 @@ "tools/wptrunner/wptrunner/browsers/__init__.py": [ [] ], + "tools/wptrunner/wptrunner/browsers/android_weblayer.py": [ + [] + ], "tools/wptrunner/wptrunner/browsers/android_webview.py": [ [] ], @@ -290576,6 +290654,12 @@ "webauthn/helpers.js": [ [] ], + "webauthn/resources/common-inputs.js": [ + [] + ], + "webauthn/resources/utils.js": [ + [] + ], "webdriver/META.yml": [ [] ], @@ -335867,6 +335951,12 @@ {} ] ], + "css/cssom/border-shorthand-serialization.html": [ + [ + "css/cssom/border-shorthand-serialization.html", + {} + ] + ], "css/cssom/computed-style-001.html": [ [ "css/cssom/computed-style-001.html", @@ -340200,6 +340290,12 @@ {} ] ], + "dom/svg-insert-crash.html": [ + [ + "dom/svg-insert-crash.html", + {} + ] + ], "dom/traversal/NodeFilter-constants.html": [ [ "dom/traversal/NodeFilter-constants.html", @@ -351565,6 +351661,12 @@ } ] ], + "feature-policy/feature-policy-frame-policy-timing.https.sub.html": [ + [ + "feature-policy/feature-policy-frame-policy-timing.https.sub.html", + {} + ] + ], "feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html": [ [ "feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html", @@ -357307,6 +357409,12 @@ {} ] ], + "html/browsers/sandboxing/sandbox-navigation-timing.tentative.html": [ + [ + "html/browsers/sandboxing/sandbox-navigation-timing.tentative.html", + {} + ] + ], "html/browsers/sandboxing/sandbox-new-execution-context.html": [ [ "html/browsers/sandboxing/sandbox-new-execution-context.html", @@ -358052,6 +358160,18 @@ } ] ], + "html/cross-origin-embedder-policy/require-corp-about-blank.html": [ + [ + "html/cross-origin-embedder-policy/require-corp-about-blank.html", + {} + ] + ], + "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html": [ + [ + "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html", + {} + ] + ], "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html": [ [ "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html", @@ -360339,6 +360459,12 @@ {} ] ], + "html/semantics/document-metadata/the-style-element/mutations.window.js": [ + [ + "html/semantics/document-metadata/the-style-element/mutations.window.html", + {} + ] + ], "html/semantics/document-metadata/the-style-element/style-error-01.html": [ [ "html/semantics/document-metadata/the-style-element/style-error-01.html", @@ -371573,6 +371699,14 @@ } ] ], + "infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html": [ + [ + "infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html", + { + "testdriver": true + } + ] + ], "infrastructure/testdriver/actions/multiTouchPointsWithPause.html": [ [ "infrastructure/testdriver/actions/multiTouchPointsWithPause.html", @@ -371629,9 +371763,9 @@ } ] ], - "infrastructure/testdriver/set_permission.html": [ + "infrastructure/testdriver/set_permission.https.html": [ [ - "infrastructure/testdriver/set_permission.html", + "infrastructure/testdriver/set_permission.https.html", { "testdriver": true } @@ -372669,6 +372803,12 @@ {} ] ], + "loading/lazyload/disconnected-image-loading-lazy.tentative.html": [ + [ + "loading/lazyload/disconnected-image-loading-lazy.tentative.html", + {} + ] + ], "loading/lazyload/iframe-loading-eager.tentative.html": [ [ "loading/lazyload/iframe-loading-eager.tentative.html", @@ -389309,6 +389449,12 @@ {} ] ], + "permissions/test-periodic-background-sync-permission.html": [ + [ + "permissions/test-periodic-background-sync-permission.html", + {} + ] + ], "picture-in-picture/css-selector.html": [ [ "picture-in-picture/css-selector.html", @@ -390148,6 +390294,14 @@ {} ] ], + "portals/csp/frame-ancestors.sub.html": [ + [ + "portals/csp/frame-ancestors.sub.html", + { + "timeout": "long" + } + ] + ], "portals/csp/frame-src.sub.html": [ [ "portals/csp/frame-src.sub.html", @@ -405919,6 +406073,14 @@ {} ] ], + "resource-timing/workerStart-tao-protected.https.html": [ + [ + "resource-timing/workerStart-tao-protected.https.html", + { + "timeout": "long" + } + ] + ], "screen-capture/feature-policy.https.html": [ [ "screen-capture/feature-policy.https.html", @@ -406041,42 +406203,9 @@ } ] ], - "screen_enumeration/getScreens.tentative.https.any.js": [ + "screen_enumeration/getScreens.tentative.https.window.js": [ [ - "screen_enumeration/getScreens.tentative.https.any.html", - { - "script_metadata": [ - [ - "global", - "window,dedicatedworker,sharedworker,serviceworker" - ] - ] - } - ], - [ - "screen_enumeration/getScreens.tentative.https.any.serviceworker.html", - { - "script_metadata": [ - [ - "global", - "window,dedicatedworker,sharedworker,serviceworker" - ] - ] - } - ], - [ - "screen_enumeration/getScreens.tentative.https.any.sharedworker.html", - { - "script_metadata": [ - [ - "global", - "window,dedicatedworker,sharedworker,serviceworker" - ] - ] - } - ], - [ - "screen_enumeration/getScreens.tentative.https.any.worker.html", + "screen_enumeration/getScreens.tentative.https.window.html", { "script_metadata": [ [ @@ -409560,6 +409689,12 @@ {} ] ], + "sms/detached-iframe.https.html": [ + [ + "sms/detached-iframe.https.html", + {} + ] + ], "sms/idlharness.https.any.js": [ [ "sms/idlharness.https.any.html", @@ -415638,12 +415773,6 @@ {} ] ], - "svg/animations/discard-on-discard.html": [ - [ - "svg/animations/discard-on-discard.html", - {} - ] - ], "svg/animations/end-attribute-change-end-time.html": [ [ "svg/animations/end-attribute-change-end-time.html", @@ -426655,12 +426784,6 @@ {} ] ], - "web-nfc/NDEFErrorEvent_constructor.https.html": [ - [ - "web-nfc/NDEFErrorEvent_constructor.https.html", - {} - ] - ], "web-nfc/NDEFMessage_constructor.https.html": [ [ "web-nfc/NDEFMessage_constructor.https.html", @@ -428143,6 +428266,14 @@ {} ] ], + "webauthn/webauthn-testdriver-basic.https.html": [ + [ + "webauthn/webauthn-testdriver-basic.https.html", + { + "testdriver": true + } + ] + ], "webdriver/tests/interface.html": [ [ "webdriver/tests/interface.html", @@ -461056,7 +461187,7 @@ "support" ], ".taskcluster.yml": [ - "8bdbabb9e2a6ddbc367f54c205ee25139a002cfe", + "815648df5121e596dced15ce9384815d2e6c426f", "support" ], ".well-known/README.md": [ @@ -465908,7 +466039,7 @@ "testharness" ], "IndexedDB/get-databases.any.js": [ - "823cfce284b2beed49821825f2794849edda5753", + "2e533dceb0187902045c9e77fb685ba298a10f27", "testharness" ], "IndexedDB/globalscope-indexedDB-SameObject.html": [ @@ -472040,11 +472171,11 @@ "support" ], "client-hints/accept_ch_feature_policy.tentative.sub.https.html": [ - "6a5c00a759dc602c36adefd2d6d21bcee65add16", + "1df308ab2f82628fc251c5db21929d55193897f0", "testharness" ], "client-hints/accept_ch_feature_policy.tentative.sub.https.html.headers": [ - "31e3b5be18bed65b8582a86bd33098d88e6b71cb", + "cf453cf368ddfb8096a62ad9720af877480bcc07", "support" ], "client-hints/accept_ch_malformed_header.https.html": [ @@ -472064,7 +472195,7 @@ "support" ], "client-hints/echo_client_hints_received.py": [ - "e5088c87199247416aac2397ee1a3a78f0a6e688", + "7427a3878e1a41aa7b8f589834bc1b5139f693a3", "support" ], "client-hints/echo_ua_client_hints_received.py": [ @@ -472744,7 +472875,7 @@ "support" ], "conformance-checkers/META.yml": [ - "978b5c85721c28f267ec21ceb620017514441385", + "9b8c31d67eeac86ab7c5875d63d16cac965aafcc", "support" ], "conformance-checkers/Makefile": [ @@ -486272,663 +486403,667 @@ "support" ], "conformance-checkers/html/elements/picture/always-matching-source-media-all-spaces-with-following-source-srcset-novalid.html": [ - "7bcac2b42f2d404203dc392d0f8b79655ffa70cd", + "e63f7c12190dfcaf17d40a19971e52723b046d01", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-media-all-with-following-source-srcset-novalid.html": [ - "320ca6912484622b1a174bcc3048764a6cad2723", + "f97bc41f451cb93266b7f329467756667dcc61fa", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-media-empty-with-following-source-srcset-novalid.html": [ - "a9dd0ab87ca08041db1eb4339b8ec49fee08495d", + "b1bf9476d906c2ae3dbbbdfb47568c7c7d3beafc", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-media-spaces-with-following-source-srcset-novalid.html": [ - "95c36b0cd217ef58c28a7ba5227b62597f1b1511", + "66641ad6129b547e43b111f4626350de8574a61b", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-media-uppercase-with-following-source-srcset-novalid.html": [ - "d495d18b46ba59ebe1cb921a211df554a3d1c090", + "584dfe97c704cab66749afd69f48d22dbd26931e", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-sizes-with-following-source-srcset-novalid.html": [ - "2cb7ea8029771bad2543fa20e1b89e2fc2f4c168", + "4fdbe261b3fc50fd281d93475bc199a3940bba3c", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-with-following-img-srcset-novalid.html": [ - "c2962a9a7f8cd93c303ccb7804d2f9fb57de7ec9", + "15e0a02c9f6cd3729e7baa9255d4eaca24192ae3", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-with-following-source-media-novalid.html": [ - "a097307cd1ed26c9047407cb80f49c88968da39e", + "b3723fc63b853288fc97a4765a7659897c16e8c3", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-with-following-source-srcset-novalid.html": [ - "d0f3ea9379ef78823b447ac5083e6d70e4997f92", + "45046bcc44eb8961ab76b56f0d75e8215624163d", "support" ], "conformance-checkers/html/elements/picture/always-matching-source-with-following-source-type-novalid.html": [ - "99eadd808d66fe64c39c3f5504a70511f7402720", + "ad6f6bd971ece3c3ec3baad886a36ec784ba5f53", "support" ], "conformance-checkers/html/elements/picture/audio-srcset-novalid.html": [ - "883f05be4326b6b66024e7f6cb9b8cc7e3dcadc4", + "39d47ac73abf690247130dc461795772bbb2422d", "support" ], "conformance-checkers/html/elements/picture/html-syntax-img-end-tag-novalid.html": [ - "0c56b597abe501f8cb3e7e0cf2f182027c8bf4aa", + "69676d5cb29190077a450e8d4ba8bbee9b0054db", "support" ], "conformance-checkers/html/elements/picture/html-syntax-picture-no-end-tag-novalid.html": [ - "a7e378d38ed27bc3ff41378db64aff9f17b7470b", + "f12ef1203f6e54af56627194e2eb789cf70dd7bf", "support" ], "conformance-checkers/html/elements/picture/html-syntax-picture-slash-no-end-tag-novalid.html": [ - "50816e522d45679768c717f2af57cde53fc46e50", + "a555b834d0786a725ebf6ddd4364373f00f89f81", "support" ], "conformance-checkers/html/elements/picture/html-syntax-picture-slash-novalid.html": [ - "0c824ef56c8f6262d2ad9b927d71e109c4bd2d58", + "ffb3476e3abfd96c7c50f586b881377dc8fa7dde", "support" ], "conformance-checkers/html/elements/picture/html-syntax-source-end-tag-novalid.html": [ - "8a8b2c447ef056e13aa8c351f1d0dcd97f1a2baf", + "747a6def29af825f25ceeceb7f34897db10bb9d2", "support" ], "conformance-checkers/html/elements/picture/img-no-src-novalid.html": [ - "a97c2a52d80609a91e960412118604a0caece759", + "23f09e118e880bcc6816e811352863c3a838c5ff", "support" ], "conformance-checkers/html/elements/picture/img-no-src-with-picture-novalid.html": [ - "aae2586129e1b869226ee9518a482d35a5f5f037", + "e414b938a06e3544e57491945dcd910f58a3073f", "support" ], "conformance-checkers/html/elements/picture/img-no-src-with-source-novalid.html": [ - "185231fd6322d70ee29ed1578eeee0d70b5eab7f", + "10ef732eb462646a800d841d72734344c16a36bd", "support" ], "conformance-checkers/html/elements/picture/img-no-src-with-srcset-and-picture-novalid.html": [ - "d7e820a1eec72e3d33d5e0c9def4c94ea931304b", + "d91f5a7e5848033d05b113cfca17ddccecd3769c", "support" ], "conformance-checkers/html/elements/picture/img-no-src-with-srcset-novalid.html": [ - "aade7df01ca033fdfd45c1f6782710e9e5ac5f9d", + "de5b4504db0fb8bfd7459ef24ca1c2fed9a7563c", "support" ], "conformance-checkers/html/elements/picture/img-srcset-no-descriptor-with-sizes-novalid.html": [ - "c23295931bb878f62e4f17d4ec6e00163979bc4c", + "12101c39ddba05d1a092ed3c85213b646f088640", "support" ], "conformance-checkers/html/elements/picture/img-srcset-w-and-x-width-sizes-novalid.html": [ - "ae5cba4e1891fef7d2d4e73793ebf94e86e25c0c", + "e3f979775b77965bef9b6ecb5154ba63518fb97e", "support" ], "conformance-checkers/html/elements/picture/img-srcset-w-no-sizes-novalid.html": [ - "c6970b7587fb278e7817bf7025f9ae28fa564a8a", + "3a62ae23528b3388b0ab7847f117d2eb06692804", "support" ], "conformance-checkers/html/elements/picture/img-type-novalid.html": [ - "41a813c1c446c9e51df7c749472128f20ebf9b45", + "c65a153a17e6f259775723d412048af5add7dc4f", "support" ], "conformance-checkers/html/elements/picture/img-type-with-picture-novalid.html": [ - "d05284ee5895617d1780b8422ba3320de69061c4", + "844eb5cfa0e23ae6635bba090a022a140aef8916", "support" ], "conformance-checkers/html/elements/picture/img-with-sizes-no-srcset-novalid.html": [ - "a77c4a53906786508e99f0531c401fc0a2c60c3f", + "4afba1247497a970971f93618a14c897877665c2", "support" ], "conformance-checkers/html/elements/picture/input-type-image-srcset-novalid.html": [ - "80c7995e5b042662a9e8901a74989befc21633d9", + "f8c882c05953edb4620f99cf35dfc5ccdf57eab0", "support" ], "conformance-checkers/html/elements/picture/junk-br-after-img-novalid.html": [ - "66ea1f9605fe0508ce580f5b105d4c3b64a191a1", + "21b5995725432acb5ae70543a8952ffc61558c1a", "support" ], "conformance-checkers/html/elements/picture/junk-br-after-source-novalid.html": [ - "55bb78c19e6d8fe4388637706ff2958d37f5bc63", + "ae89b13710bd0f893b4f2dd844fa3a4edc221c0f", "support" ], "conformance-checkers/html/elements/picture/junk-br-before-img-novalid.html": [ - "06462c42bfefc34d856e0f8cca9e94fd08d305ec", + "9e0f29df1d8882a3920398d042a62e4d9b291b74", "support" ], "conformance-checkers/html/elements/picture/junk-br-before-source-novalid.html": [ - "7f9bbc0a26f7fb13cdb68db731670adc346740d6", + "08fc66213decbc2b54ae77908083ea20f91e597b", "support" ], "conformance-checkers/html/elements/picture/junk-figure-wrapping-novalid.html": [ - "ffe22b73b13f702134a6edf24ad2b4d195c23996", + "948cb83a2a1dae2755710da0bcaabed732b28626", "support" ], "conformance-checkers/html/elements/picture/junk-input-type-hidden-novalid.html": [ - "b4763de6e4ca24505e2474c1fbefc61dc65c06c9", + "29e5310ce80433baa9688bbdeafd852212b1032a", "support" ], "conformance-checkers/html/elements/picture/junk-math-nog-img-novalid.html": [ - "5f1b85dbb282d5835c99e8e62fca5e2c423eb9e0", + "cbe6391cf5906cb550fec81ea4dc58175e3348c2", "support" ], "conformance-checkers/html/elements/picture/junk-noscript-after-source-no-img-novalid.html": [ - "957c8bc1a39a24fe6c277e18d4838e9e495ccae4", + "e66f61684301cc5656e45640031f6b0b2c05e10f", "support" ], "conformance-checkers/html/elements/picture/junk-noscript-novalid.html": [ - "45efb6712c5f8f722152995858bb3337f6c7aa4a", + "430cc880fb9c2ad0f288f920a8d86b5a343f11f9", "support" ], "conformance-checkers/html/elements/picture/junk-p-after-novalid.html": [ - "0848d51e045b891f3580fd1e4c417df251328c94", + "f09c344ce42d5f7b6a2b49840444161ad2f692b1", "support" ], "conformance-checkers/html/elements/picture/junk-p-before-novalid.html": [ - "abb046b764056244d264c21c9e50e84c5b683fe9", + "3e12510b541e39285e526f8e42973b2ac997aed9", "support" ], "conformance-checkers/html/elements/picture/junk-p-wrapping-novalid.html": [ - "c1561cf33b46fe7256af13ef11f3bc307e318409", + "45d19b42769ac65de325942c3e6d66215ef265d2", "support" ], "conformance-checkers/html/elements/picture/junk-picture-before-novalid.html": [ - "d2d3ce9ff230782a994e14963cd008289e5882e7", + "001e5429b2398b0c9c508f7a789a122b8c756f42", "support" ], "conformance-checkers/html/elements/picture/junk-picture-wrapping-novalid.html": [ - "beb9577c5ebf98a4cc6c9462a86c0f0a772c63c6", + "611ebde6d35869e5aafb4231235d857c2039f085", "support" ], "conformance-checkers/html/elements/picture/junk-span-after-novalid.html": [ - "03f6923e776cd53119ade7593ad2950678c15c2c", + "0e6d842539fffddb3d17355477b397b857b97aa4", "support" ], "conformance-checkers/html/elements/picture/junk-span-before-novalid.html": [ - "85307cfb5ec1569f39b01aeb8609767223204426", + "4fd5c2c1c3ba784b12a4ff2541805295cfffd385", "support" ], "conformance-checkers/html/elements/picture/junk-span-wrapping-novalid.html": [ - "701a263d569e1c7e598fa323bfbfb1718e129c0a", + "5e9262ddb70d3874615807343347da5e6f4fb4ce", "support" ], "conformance-checkers/html/elements/picture/junk-style-scroped-novalid.html": [ - "7aae2a0fe7a9e48b7f496d9de6fc57789bc6eb6c", + "bb622258f3405dbe6bcefdf2cd585676277ebfe3", "support" ], "conformance-checkers/html/elements/picture/junk-svg-no-img-novalid.html": [ - "0a444584989ad9f5c9b75da64cf773cd789d6875", + "1464b8f79ba060630ed6791644cb8d99b0d258d2", "support" ], "conformance-checkers/html/elements/picture/junk-svg-novalid.html": [ - "03d47c7189fe52119bfd144c87ee1cd08dabdbf2", + "769415548ec4e7b9b6cb0a95e1d47e92d2931612", "support" ], "conformance-checkers/html/elements/picture/junk-text-after-img-novalid.html": [ - "700f317c2b0984a3da0b0a50433265a68d4c47e6", + "f730e98115514760daa0c862cbd0d8c13e4c2067", "support" ], "conformance-checkers/html/elements/picture/junk-text-after-source-novalid.html": [ - "99c173e8f6049b19c235ee3e043daeb8661a6823", + "82023174149e4b159787e63f1efc43845af2da05", "support" ], "conformance-checkers/html/elements/picture/junk-text-before-img-novalid.html": [ - "256804c9623031882f8c303c417fa1eed61d8e6c", + "dc5b2e57a110730ebc282e4f34245563babbe1a4", "support" ], "conformance-checkers/html/elements/picture/junk-text-before-source-novalid.html": [ - "cf1cf0f4ea5a67cb4240c29a8f0a0aa4b033d308", + "0817bd361692113bee6a2392dbf57246913e4661", "support" ], "conformance-checkers/html/elements/picture/junk-video-before-novalid.html": [ - "2e91d9c2984aad5ccf22a6a46b5752a5b3c2963a", + "e7f2cd93d256c94753259a66b2f2618a5036373d", "support" ], "conformance-checkers/html/elements/picture/junk-video-no-img-novalid.html": [ - "05d89383b991d823b0f51a8480befb081a2cd23c", + "e65fe3d85e6653b94b89d542330e576ab5fabe91", "support" ], "conformance-checkers/html/elements/picture/link-rel-icon-srcset-novalid.html": [ - "df2d56c8efeff15a75ae531bbe99ba8a0b9085d9", + "bbd4ec8ecac75a75635c22859e39d50d2dd092ee", "support" ], "conformance-checkers/html/elements/picture/missing-img-empty-picture-novalid.html": [ - "6f604e165be844c1edeb6ebf9e6d2c01617ba0f0", + "5772ba29a70a0f850dfd3e1dece8ddc0a5512872", "support" ], "conformance-checkers/html/elements/picture/missing-img-only-script-novalid.html": [ - "96015048cff3d8e58097d620c980862f254e4388", + "5d1e7dca71b5497ac3a7daf35f2d7569fe5480ad", "support" ], "conformance-checkers/html/elements/picture/missing-img-only-source-novalid.html": [ - "b8b25bd73773e312d9fdb53a6b0e52fd026cb46f", + "dc535ae8fb42d01f5cca0869be6ec67bfb1b66bd", "support" ], "conformance-checkers/html/elements/picture/missing-img-script-and-source-novalid.html": [ - "ea61fadbdb1690fa3ecaf770417c15f5a980b4ee", + "c41226368c0c18730a6c923bb12700ac2731a88a", "support" ], "conformance-checkers/html/elements/picture/missing-img-source-and-script-novalid.html": [ - "a31715d3369cd45604d544dc5c2f9c26769fcd2a", + "01f4c833640101eafcf7b1af9a7d4045ebd4ffbc", "support" ], "conformance-checkers/html/elements/picture/multiple-img-novalid.html": [ - "bed5b38ac90e5739a99493e234e29df902b7627c", + "5da354872dbb56e794e93bbbdc6ca63288a071bb", "support" ], "conformance-checkers/html/elements/picture/multiple-img-with-script-novalid.html": [ - "973d01f807bcf7d7fbf0a2d6ce16a991b0052fc7", + "9a0d3c7b4437cc0777f0ce144175742e0b5278e7", "support" ], "conformance-checkers/html/elements/picture/multiple-img-with-source-and-script-novalid.html": [ - "8c722ac0704fd81da87dffc24ab034659cb7faca", + "a97d7ccca1f5cfe3488dea622688f77edd864fa2", "support" ], "conformance-checkers/html/elements/picture/multiple-img-with-source-novalid.html": [ - "d6c2402e85f7d9ec5503ef27f7a8501491274208", + "60740ee48e1ca6ab49a22d76a3e30561c2f99bc8", "support" ], "conformance-checkers/html/elements/picture/object-srcset-novalid.html": [ - "df784de7ef2bb9d77ba175e7b641df3b1b105a10", + "62482e92db9110c90634756c17d5fcae2dda99d8", "support" ], "conformance-checkers/html/elements/picture/parent-dl-novalid.html": [ - "12b32af343028038c4bf9a6570bbbd75dbcab183", + "8277b989d9483d857f1d009b585b233b34ccb424", "support" ], "conformance-checkers/html/elements/picture/parent-hgroup-novalid.html": [ - "3b260d27f285a858e78e31d326ffc6e7a3ce7de5", + "936d93e21fdcd82ce7812e0d9750b7a8d932823c", "support" ], "conformance-checkers/html/elements/picture/parent-noscript-in-head-novalid.html": [ - "648a16c1dc886f0e41fc4271c4b48300e929b487", + "d04b77248c0e14695ae8060b954a32529ebf6ca8", + "support" + ], + "conformance-checkers/html/elements/picture/parent-rp-novalid.html": [ + "5763e57ae90bb98faeebb6a15eb49a80180f2062", "support" ], "conformance-checkers/html/elements/picture/parent-ul-novalid.html": [ - "ed39ef722bb834a83f916920b2667d6f9061a756", + "2bad211f31d4b536f766d8694f25f4ce0e72e63e", "support" ], "conformance-checkers/html/elements/picture/picture-align-novalid.html": [ - "494a44d0b5d5acf46aac9b4dfd9a1bf3aa9f7563", + "81ce1eeed07a288a32d117c76ff2d60341738e1d", "support" ], "conformance-checkers/html/elements/picture/picture-alt-novalid.html": [ - "678dfe46a99bb9230d6d32b175153b7a58b435be", + "80f5bfe9482ed20b2f3f4005b3f902115950780e", "support" ], "conformance-checkers/html/elements/picture/picture-aria-role-application-novalid.html": [ - "6d1771f2a9e99aba3dc10b0f7e5788383a30121a", + "db4a9356c3b872a7b8a7b675d53cf8e5eeb537be", "support" ], "conformance-checkers/html/elements/picture/picture-aria-role-button-novalid.html": [ - "ad144b79d7f34cfaf989ddc6f84497dabd3fe03c", + "e362cfdc23816589f88b2e645b4cb089ae713662", "support" ], "conformance-checkers/html/elements/picture/picture-aria-role-img-novalid.html": [ - "f91f267105892a33ed95a283fbb0605ffecc92ba", + "1d9540acf555914b12bf0f904a732ea998f22d57", "support" ], "conformance-checkers/html/elements/picture/picture-aria-role-presentation-novalid.html": [ - "7c8998c2ab90a157699a4509057e95858c24e9cf", + "428fdc7477873223f6e63ca773be9577a708fbcb", "support" ], "conformance-checkers/html/elements/picture/picture-aria-role-region-novalid.html": [ - "336b58d6fa98d574d941e2af5617fe492b9ab09e", + "b264824ea8074500581b27e66ef8b4fea7fe354f", "support" ], "conformance-checkers/html/elements/picture/picture-border-novalid.html": [ - "013d6d668b5b950a376fa9c8f5d56c4ad0873db1", + "1882bb31e6027d2d8755afd83647fcd40a18e512", "support" ], "conformance-checkers/html/elements/picture/picture-crossorigin-novalid.html": [ - "733be02c5bd2d462a41521778631cd5bd4c52d44", + "ed45d49a63f34eb0c673922ded0104bfd08a2988", "support" ], "conformance-checkers/html/elements/picture/picture-height-novalid.html": [ - "d5c0f0c1a0fd3f4e981b16cbbf5dabcce0484814", + "ad7da34636015f56fff99986d6992651dd8c2ec1", "support" ], "conformance-checkers/html/elements/picture/picture-hspace-novalid.html": [ - "53912928bfd0823234fe20ed490fff54725d9192", + "fb9b97ee5819435fa238df016df90b568ff6c6a9", "support" ], "conformance-checkers/html/elements/picture/picture-ismap-novalid.html": [ - "d6dbfe4254a0517a7a034dfd348eb14e98033cf3", + "58fcfcfae2069d49c463f1ea0541753d62d0a9e0", "support" ], "conformance-checkers/html/elements/picture/picture-isvalid.html": [ - "302ce107e9a5641654c678048e7915de0b385a69", + "efc4d4023eb0c8f3adb46f57f0f1fa298461de19", "support" ], "conformance-checkers/html/elements/picture/picture-longdesc-novalid.html": [ - "86d77931388830754cd03fbcdd943e333f2c56ab", + "2aa1e086b178c156f8b6f9b2113911baec04c5c8", "support" ], "conformance-checkers/html/elements/picture/picture-lowsrc-novalid.html": [ - "00361b00febae086126c94267496dbadda881ad3", + "be2315431dc16e945ca1924d630be144c526a466", "support" ], "conformance-checkers/html/elements/picture/picture-media-novalid.html": [ - "e81f5e9ef0cf7804c4421ef21480a25a3fdc4814", + "4e3e8c4f427a30325079fcd3161063691fe2e4cb", "support" ], "conformance-checkers/html/elements/picture/picture-name-novalid.html": [ - "d8867a1b2efd318aa1b54dae87edabf2cfb1acbf", + "b846050183e4350faac53934ccbe5bd7c7b3a8f9", "support" ], "conformance-checkers/html/elements/picture/picture-sizes-novalid.html": [ - "8064a3d26859804f056972afe9c096f30f1e6202", + "8f90bdd6d92f97597db76fa7c1ef4e162dac4d3a", "support" ], "conformance-checkers/html/elements/picture/picture-src-novalid.html": [ - "b5e6e30e829799091a704ab1afd04aaf04d341e5", + "00b5825c4f183924b4efac35d4eaf7f1d9d61582", "support" ], "conformance-checkers/html/elements/picture/picture-srcset-novalid.html": [ - "1f3703e50be693e6ba97b6386d748817060954b8", + "6075ef734eebd6d8de47e1e15e7d7a3e63a92e02", "support" ], "conformance-checkers/html/elements/picture/picture-usemap-novalid.html": [ - "1def698f176805c92bc4e80b8241a93b38323f57", + "60d2cdcf6ffcbe9e1b30e77a6d6c3e62a9913762", "support" ], "conformance-checkers/html/elements/picture/picture-vspace-novalid.html": [ - "fc62cd514d9b874579041db156945f3d7ffd3430", + "aed4fa45ac779f64f6097a3f985b9d172bc726c0", "support" ], "conformance-checkers/html/elements/picture/picture-width-novalid.html": [ - "1fa63afa0c4cc78c39ed58306a2a48a2bcceb07c", + "01b3901953257c278dcb9482c398f27de9aaf94f", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-auto-source-size-value-novalid.html": [ - "734ed4a8c52ce2316d7184c8fc331d3e9054eff8", + "df9c8b24e808ae99c8842db7d485759edd40d122", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-comma-novalid.html": [ - "06b83dc4ae5d191e65f881bd20b45ec59c80af0e", + "c33642a21d0e630e6b712f8b8b7df62390d29228", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-css-comment-after-plus-novalid.html": [ - "c3e04ca6b6e93ccbfc4a12126d3b1d1eef13b503", + "14c85d1e67b933edeca2a446834c797149629ded", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-css-comment-before-unit-novalid.html": [ - "3d0ad297dc244a2909710808a28a93bf1d91fa32", + "3e5ee116ed75e647a903c64b9a77a0b2bf10082f", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-default-first-novalid.html": [ - "c5331b0d4ef6d3ddee8cb3e5a2eb5183e99fa3d4", + "5afb90ef047f7158f1e389fd3402665bc3a7341e", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-default-source-size-value-novalid.html": [ - "2f70de718abd24d34091c700f10fa792365ac3c8", + "3a419b379c79bb43778d5506f4b7f6bf549bff91", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-deg-source-size-value-novalid.html": [ - "d0e608b95d69a56433a3cb676a7cfb3f9c9354d8", + "038faa5323164637ceb049730af5812c921a999e", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-dpcm-source-size-value-novalid.html": [ - "c8b8b7a2dd85cc6876e466fbe37ad4966fc2a174", + "84db64355b51c25e454719098a741470b4adc932", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-dpi-source-size-value-novalid.html": [ - "95160c13939edaed15a1e794f1fc4d360541f5e2", + "a50757617b902cf1cd13aa585c7d7f0de39f14f7", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-dppx-source-size-value-novalid.html": [ - "778f6b49b9975e033f1fd7a096d6379a396aeabf", + "e50642ba48539bfb77f08718296aaa31e4b362a7", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-empty-novalid.html": [ - "be232a5cd1f04e4470fa79b088c86c9e60633936", + "9ffe660d5fcbb3a3e7cd09955dab60310dab067b", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-foo-bar-source-size-value-novalid.html": [ - "7e969dafcb6efaffe5a7ad478fd104896b2dd788", + "45ce5512bf633017dbe169848e54da224a991acf", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-grad-source-size-value-novalid.html": [ - "506ebf561cb2cb288d95f7c8433b439476269cb8", + "ac89302bce3468558768cef67bf3bd73f36444a0", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-hz-source-size-value-novalid.html": [ - "bc4e21c3fd202cc0f4625f432d4cab21387ee7ca", + "94d58ec98c4c4b758488177627e99af7e0ed258c", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-inherit-source-size-value-novalid.html": [ - "c232648dc6f94a578015b32a1bd7adb9106432e2", + "96103df2dc0cf1a1793a64c0d09f058bf6ef76f8", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-initial-source-size-value-novalid.html": [ - "b70a543dee38bf3211d215ad925a50dcf5132a04", + "94dfcbd9431b10ec3e13c6308e90453836e85dde", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-junk-in-default-novalid.html": [ - "1121b56691f4fbc2c10f21261fb506f60ff5970b", + "d73502a8ec110eb3735002d5fc48584eee417792", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-junk-in-source-size-novalid.html": [ - "1fc7cffec927e8c3e8a7b896531cb0bf24ba10b8", + "9681d67bf1fc6b4fbdda727a627b8cc21058c7c4", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-khz-source-size-value-novalid.html": [ - "039da34cf6906384bca119ce02695499bb9cd492", + "b1a31b0c024291aa2fff6692a50d131f93a8266d", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-media-all-and-min-width-novalid.html": [ - "1ac0cf6e31ae6739e146d6a952962731786c449f", + "8ba429c8a1eeb0f66d45addacc006c995c2ba648", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-media-all-novalid.html": [ - "453ba8ac9e2ec824593c1622e3385acc87835cc1", + "e09bb2b593e30a1c612d946897060c60dbe625e3", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-media-bad-junk-novalid.html": [ - "27fc624ac537fd7f91c1aae5d627c090aa1b4f95", + "0d5854417f0e4688bfffca8d053832db176ea5da", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-media-general-enclosed-junk-novalid.html": [ - "b8b8f8e990912814a0fc80eb8e123fadb27239ff", + "67f80827174394e7f954562f3197295cc3693ea8", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-media-min-width-no-parenthesis-novalid.html": [ - "b442eeddcc116fcaf1a9c9e88bfa01356c0c4013", + "0a3e5cb2c640691302b8ecacdc6bcfbc8f986ea4", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-ms-source-size-value-novalid.html": [ - "4fa0acf7c17e3584539a157f9d362048c6941150", + "da8f67714ee94cb33256d24c75a89e7668ba6cc5", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-negative-source-size-value-novalid.html": [ - "0ac929a8194c6c8d95c828efb90be06d446d950d", + "ad28f404b5a7f8157ce864160cfb43cc8e7743e6", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-no-unit-in-source-size-value-novalid.html": [ - "6c01862695095f7d316ae34144b42ad963bc57a9", + "915d5be21f60280022da3d758a606ac07915f10b", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-percent-in-source-size-value-novalid.html": [ - "2864631e091bc0069513de4afb3ef55389d5cfe2", + "7d5b7c102d1fa389500cbe1251e49684677097e8", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-rad-source-size-value-novalid.html": [ - "ec98f9d349f5e8cb19438c39765e347554cb27a3", + "c33365f75482a462d06805ab6cbfc08b8d72668b", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-s-source-size-value-novalid.html": [ - "a85f14d919073cf421669823c661d84569a19e7e", + "0aac2f5330483f73bb12c3624c336642e9e275f3", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-scientific-notation-negative-novalid.html": [ - "8a4d9c66830f086e3f4814f033872053441fe952", + "816f2fa0e219dbfac0df55aa7e65dbd455c7a623", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-scientific-notation-non-integer-in-exponent-novalid.html": [ - "08db943cd92b4df750a8803c6af0c6c38ca8fac2", + "fac203893e97c29329178095632595b98a47bdc8", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-trailing-comma-novalid.html": [ - "8a6a809375f3788ea29c0f4470c73fd16edf2d9f", + "29316620eceead6acfe8cfc7af19163d79a35f74", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-trailing-junk-novalid.html": [ - "d987fecfc2406a9e3aebb401e6caada149475e92", + "deef3b0e43632001a1b459cea980e7ed2c0551ff", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-turn-source-size-value-novalid.html": [ - "6edfd39c8af1deaf957cdce416a270e2b3e7c716", + "4e7870d5b180ec7164eb14e91392f2e4a18bb01d", "support" ], "conformance-checkers/html/elements/picture/sizes-microsyntax-two-defaults-novalid.html": [ - "ee6ce9f63e367ba89d620e76286116444b4443d8", + "bb5a144b525746bf0fa9f4f5ddd02e622dbccfd1", "support" ], "conformance-checkers/html/elements/picture/source-after-img-novalid.html": [ - "3a209dc590def1544d518b6b9e9e00a0ca20620a", + "de9f5461ff6011e12118e4af38326bcb31cb73f9", "support" ], "conformance-checkers/html/elements/picture/source-align-novalid.html": [ - "e1584674f0c0986a0d5fb672323902404420dc97", + "958aea50ee1e61a41b390c2ac2987c2063f6a3a4", "support" ], "conformance-checkers/html/elements/picture/source-alt-novalid.html": [ - "0bd6646f096c9deb86e0ec93053e5b6589766535", + "31799a727c4149b62f9551a762786e4c02b8acff", "support" ], "conformance-checkers/html/elements/picture/source-aria-role-img-novalid.html": [ - "6f8d130aa1f4f77eddb33ac6bb232691c7c6ccd9", + "d88e29ff93dba30457102c0698a071d898936f20", "support" ], "conformance-checkers/html/elements/picture/source-aria-role-presentation-novalid.html": [ - "b0fcbc05e10d177d76184b4eaf89cb085ede4311", + "13464a014190c065cb16f8a21f5a9bf0819e5525", "support" ], "conformance-checkers/html/elements/picture/source-before-and-after-img-novalid.html": [ - "3e083105bbcbd6f8fdb053defc3f122dd628fe7e", + "9b54722b266fa619d751c704f6f7aaa521ef5c12", "support" ], "conformance-checkers/html/elements/picture/source-border-novalid.html": [ - "fa746a81d98de883d797a5ac830fb753073c08c5", + "c75a22191210f488ddaf38c1e7fe65c778a8d444", "support" ], "conformance-checkers/html/elements/picture/source-crossorigin-novalid.html": [ - "a4ebb7ecb0d8538967d918b93a260d27629c3115", + "aadccf9658356964018793eaeb517022cbc7fd88", "support" ], "conformance-checkers/html/elements/picture/source-height-novalid.html": [ - "2eeb159345c4c1ff1ee0e1374d4b03fe07350a94", + "af37ef1f1894bb32f20d581312a3eac7c80a558d", "support" ], "conformance-checkers/html/elements/picture/source-hspace-novalid.html": [ - "a6e717357f782e53abc2981ab4d5d5e9e958844b", + "cf796bd27ddb4a8523462ab3ad94de2f8a59c81a", "support" ], "conformance-checkers/html/elements/picture/source-ismap-novalid.html": [ - "2c02869e3578081b2bc5b708bf75e17a5f872e4f", + "a31514f431edd06afe771b05049dc951412760af", "support" ], "conformance-checkers/html/elements/picture/source-longdesc-novalid.html": [ - "c523ef2107605d9dab748b0806660c00a56326d0", + "84a6f124db20f7e1036ae76cf35676a16e905cd5", "support" ], "conformance-checkers/html/elements/picture/source-name-novalid.html": [ - "dab3247e7730c7fb1772dcc8e8ee7f590f88fbf9", + "0308647413877def2c1986023cf951405d23dad0", "support" ], "conformance-checkers/html/elements/picture/source-no-srcset-novalid.html": [ - "acb6eab05bf689928e910c2b15418ed64b4219ea", + "5b2a3837b610cceb891a972a2776f79358d49e34", "support" ], "conformance-checkers/html/elements/picture/source-no-srcset-with-media-novalid.html": [ - "a7625f755a2bc2cab6fd5f1dc87c20293d104547", + "a3e687433147541d4a198a89489f381df3b9d37b", "support" ], "conformance-checkers/html/elements/picture/source-no-srcset-with-sizes-novalid.html": [ - "517c67054b729802c8f7e2ee7b605966edcbca5e", + "503f7d55854a8821399140d8e864be6a6f456609", "support" ], "conformance-checkers/html/elements/picture/source-no-srcset-with-type-novalid.html": [ - "510c7eed6b9aa5c53b2dc128f4db67271c14d53a", + "4d21d5b860987f79c41e3d6e30f494d61352ba3c", "support" ], "conformance-checkers/html/elements/picture/source-src-novalid.html": [ - "a5eff2b7019d06a8f8fc6417128dbb9fb0c1e539", + "758a29a9fa51fbcd4f850da0f3087963edb62e20", "support" ], "conformance-checkers/html/elements/picture/source-src-srcset-novalid.html": [ - "80714cb86fb49a28d44546461679917862791d82", + "3dbab2194d3a74e8b2546932f4cee749fba97a9a", "support" ], "conformance-checkers/html/elements/picture/source-srcset-h-with-sizes-novalid.html": [ - "5da6331e53959a57e416a8fc1496f1a90a3d7784", + "91bbf65cfd4144e0a497ae48c8b8de1018c36350", "support" ], "conformance-checkers/html/elements/picture/source-srcset-w-and-x-with-sizes-novalid.html": [ - "cf6603ea8ff9fc83d7a6738f81d64e8cd0e44ff5", + "babdcb6b9be14f68932a0a59b24b61724f0b8dc2", "support" ], "conformance-checkers/html/elements/picture/source-srcset-w-no-sizes-novalid.html": [ - "0375c5415f25291f5a00b91481158afa51951624", + "94fd3aef229e44a340e3b0db7dc2103c16689dc1", "support" ], "conformance-checkers/html/elements/picture/source-srcset-x-with-sizes-novalid.html": [ - "a8efda291ee13ff898bc93a0af1830092db87f5f", + "4e3d679554063a2157ef785caaa3332b540364a7", "support" ], "conformance-checkers/html/elements/picture/source-type-srcset-w-novalid.html": [ - "a9ccaa312b8c6e3cd34717e2dc506d26da760ea7", + "7a8fe9af0e1ea9aaafb755c3e453c35c6a28be65", "support" ], "conformance-checkers/html/elements/picture/source-usemap-novalid.html": [ - "603bb472d8a7abd1a1e8c901169b0064ba417559", + "5eb2fdc66b9250f1e14945a0bc01a62138ecf414", "support" ], "conformance-checkers/html/elements/picture/source-vspace-novalid.html": [ - "2e26c73ce442d0dd797cb435ea8145dcaca04cf5", + "6bd83d1be992dfde9b729c8475edef7a1fb7509a", "support" ], "conformance-checkers/html/elements/picture/source-width-novalid.html": [ - "1649b791b29a77ac8cd9bf2ac7050029af481321", + "a481bd1421d8bcb8c0238ed13d2fa4228fcd915f", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-broken-url-novalid.html": [ - "82388ab5136d132ab6e60804d0c73d9b56644240", + "43aa15f762189fa97ac9df56fa2db6e65dff64ff", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-comma-novalid.html": [ - "ff36674849eb114a37f927005a3e53520e00ee58", + "94d6e199c694879698bd68a53b88baccb3e94aa3", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-css-comment-after-descriptor-novalid.html": [ - "758c3551ca7d282f5138f89b08d87c854eb45f1e", + "8a7360a2e69b64bef1cfbbcc5a698fe863e79def", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-curly-bracket-junk-novalid.html": [ - "346f160886d0c05dad7c9dfecd08027fd5fe752d", + "98230eac7b95b1e570fb0c8c4feee9c729a1112d", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-empty-novalid.html": [ - "ad8a12a3a03e9503f4ca80cb8cc8998d8a04fac5", + "f511e88e732dcbb70ec58130cf8efd44c18eadbc", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-function-novalid.html": [ - "499a14752b4edd7e68325673589fcabf7e8d67de", + "aadcc4c648687c851982c9f611886c0e418bdd3b", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-h-novalid.html": [ - "3c381e04ebac7aaa091009303ba269161988b9ea", + "66b739688f595eae1a97c53304c08a6fde15943c", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-infinity-x-novalid.html": [ - "51aba7b2970dc1c76abc8a3ba29989f60b0470ea", + "19d679d8e3130e4c1b57a2d272d49cefacf057ab", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-leading-comma-multiple-novalid.html": [ - "c715e0e35d0f9d7ad51420c6ba1fc790738bcfb1", + "c9407d1d7ab4efaccc2a44ed32d6015f4e56cce5", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-leading-comma-novalid.html": [ - "ad138943734fa353ec5404e946b6e0303d50fe08", + "c09dc183534223c34ea17c1edb444f8f24808829", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-leading-dot-x-valid.html": [ @@ -486936,131 +487071,131 @@ "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-nan-x-novalid.html": [ - "da7d829dff656e3ddb3eb90f9c4c06aaa53c2310", + "3cd64a69cfc8a134e74989ab17788c3130c4f100", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-negative-w-novalid.html": [ - "0e61668fd882284f6e1f04a4d22edad9cb733997", + "093552e9a1c17af58b99f3326ee213f88775ba2b", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-negative-x-novalid.html": [ - "08e5fb70a4a8d52dff8b52ab4c5483558a18eef5", + "9b69e0c1f81c9446bec4cbbdaffecb94efdd7e46", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-negative-zero-w-novalid.html": [ - "ebc5d346a76c900dc04a8f4fc2b67da1a87b1d13", + "b4edfbe9742b4455b58ebcda9b29c3df503609cd", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-negative-zero-x-novalid.html": [ - "d1260c027fb01ce648b96f642faa8cb4d3e54418", + "a68489093a989640d23ec9ebb3148d92e63c7449", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-non-integer-w-novalid.html": [ - "05554d8ee376d07b5e7ea1ab05b2b2ccdc844eba", + "e09f9f003b71c545d9345bf3b5242c806e0b0e69", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-parenthesis-junk-novalid.html": [ - "1459e1610b2c62446e60201565e94484c9765107", + "b58caaa0754c369f1b1cfd7129852e51515a85db", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-pipe-junk-novalid.html": [ - "7c1ee3a0414bc93faa87f7c5949f61fd1d6f165c", + "9becc4fbabdb53dd5115f30893f7226bc9eac4ff", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-plus-w-novalid.html": [ - "c452c91738e49d89e307e84c5e4f4c0fb882334a", + "5bc9d91495ae3f7e746746b6aa678bb92cddb0b9", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-plus-x-novalid.html": [ - "7c285635d9694cdb1f9e7efe2f93d31b02033710", + "242a0a5eabdedb4459438f9d71aeee42eaa4d859", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-scientific-notation-w-novalid.html": [ - "b1be35753909d76b3351f50dac532209d27caf28", + "e17e4bc65128ef486313c5b06184f1bbe34347f6", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-square-bracket-junk-novalid.html": [ - "effc9379673f3feedf366525b6a2175aecbb135e", + "69e7febbd93f976f5421d734cf10a19c00111606", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-trailing-comma-multiple-novalid.html": [ - "869af64fa5b0be42d72bbec0d2a2dc22b3965311", + "978b7d44b119152829e42a246a05fc4af9270813", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-trailing-comma-novalid.html": [ - "9250e468dff6043226e30fb02340c7b39170c16b", + "0a0ad83f06f2c8c15512df53833709e7aa07ebd0", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-unique-descriptors-1x-and-omitted-novalid.html": [ - "72bc68e075bad7fe0878bbcbe601f0c600feb01d", + "0a381c378ca498a4143aafe157ba16a9a01c87c7", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-unique-descriptors-2x-novalid.html": [ - "9ab38cd24128dc421eefa317de8774202b9d4282", + "d2559446e83d4b176a6e957758f53f379e7f31e9", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-unique-descriptors-integer-and-decimals-x-novalid.html": [ - "76d6eeccf493b45817c02b0cc091a6cfa6d286f3", + "22130738061cfee025553601b65c6f08b28dc0bd", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-unique-descriptors-w-novalid.html": [ - "d5c8fdab130a65eedc8b08e87591d1e65ec87f11", + "c561e1041434f5650c5d6bdf812bf97719d89e58", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-uppercase-w-novalid.html": [ - "51601192f3faf88bb8eb28435cf76b064ac513f5", + "d587be5f5ee0c6468cdcca15dd0f007520e0a3ca", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-w-and-h-novalid.html": [ - "84ef6ae2bb85305e6c88b357adfb338e74f3ebca", + "036f5a46e45b85c275de759ebd675a546863bacd", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-w-and-no-descriptor-novalid.html": [ - "78c44834ef307a3385d51a036e43142f3eff6cfc", + "b4084fbd82961e87303992301609fc4b8b562c2a", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-x-and-h-novalid.html": [ - "4c26cfaf3b964eb175d9b805988dfc603bedb3ff", + "54d4d1f03ee5738603fc66f1f1af2499a2ec3850", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-x-and-w-novalid.html": [ - "3c0cd89b9fe3c68b0d0d5a5bef1dfbda318d3f6f", + "2dedd9c2c8229ffb1cb1e021ceef492d212c482d", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-zero-w-novalid.html": [ - "908343f81b226eb5b4a43586708adbd24b24b8e6", + "2f1a5abe9d97834c31a36ad6816d734e5b62deb3", "support" ], "conformance-checkers/html/elements/picture/srcset-microsyntax-zero-x-novalid.html": [ - "fbf7e98e69805b09fdaad97c930811adad9ff25a", + "39b610772725043de8a8f8da79f6ef7f33cde39a", "support" ], "conformance-checkers/html/elements/picture/svg-image-srcset-novalid.html": [ - "22950c23e83a6b1499b7e7a89edbe4fabb3a0c3b", + "fd6289fd7eaaaff57ffbb7abbfab7e8033fb50ed", "support" ], "conformance-checkers/html/elements/picture/track-srcset-novalid.html": [ - "99dd22be0fd577c4227f23108d69998fd6b2d94b", + "2668a8400ed4b0440d020310824b18f146732077", "support" ], "conformance-checkers/html/elements/picture/video-source-media-src-novalid.html": [ - "f065a12f49357079e8242592ef415434e8e5a98a", + "a18d20389d2f4553ad5a1171fa2e09639a995ab2", "support" ], "conformance-checkers/html/elements/picture/video-source-sizes-srcset-novalid.html": [ - "a20fd2db62671b25422724040da4006e39cc181c", + "be370c75cf782b1f170c4ed196553b9d5e8715d5", "support" ], "conformance-checkers/html/elements/picture/video-source-srcset-novalid.html": [ - "bde4a64b8f62b688f40a5290ee32dcf78d5c8490", + "440a2885908c9c4de74b21ac2a5b741dcc17ea57", "support" ], "conformance-checkers/html/elements/picture/video-source-srcset-src-novalid.html": [ - "f7bf48446543efeee872180f7ccb9e0c30dd8c1e", + "588581fce792a34abd4569b908e3ce764b163fed", "support" ], "conformance-checkers/html/elements/picture/video-srcset-novalid.html": [ - "2115044869dd63193d39568b0ff844c974a7b364", + "7ff3e3ecddbb4a492813f918ea303f6d21abbd49", "support" ], "conformance-checkers/html/elements/pre/model-isvalid.html": [ @@ -489812,7 +489947,7 @@ "support" ], "conformance-checkers/messages.json": [ - "2dcd3830d72dc42396e7270557954d107e6abbc0", + "4439888f1753132daf7aa6c07dc55397a18d94fd", "support" ], "conformance-checkers/tools/build-svg-tests.py": [ @@ -489828,7 +489963,7 @@ "support" ], "conformance-checkers/tools/picture.py": [ - "5b03f67ac9884a02c2ad0369104f9a4e4856079a", + "417eff14368fe057e0415363ae89531b31fd03a3", "support" ], "conformance-checkers/tools/url.py": [ @@ -496664,7 +496799,7 @@ "testharness" ], "credential-management/federatedcredential-framed-get.sub.https.html": [ - "08688ab440bbfdf76896da5353bdddb3e9876c34", + "a7c87e2331ffdb518fe33d42aed1f269cfc8b9a3", "testharness" ], "credential-management/idlharness.https.window.js": [ @@ -496672,7 +496807,7 @@ "testharness" ], "credential-management/passwordcredential-framed-get.sub.https.html": [ - "04bb16a2670b81246ae4b8c21472e777a54a23df", + "d86c6e09c70874f06714c9cde0b63a2cef959f69", "testharness" ], "credential-management/require_securecontext.html": [ @@ -587507,6 +587642,10 @@ "3ccd1462fd1530e29b43b3710b0708d270818a8f", "reftest" ], + "css/css-position/position-absolute-dynamic-static-position-inline.html": [ + "c0f9ac07188f1e49e869ac65f8a075f4827a6cb8", + "reftest" + ], "css/css-position/position-absolute-dynamic-static-position-margin-001.html": [ "78b0ced9df2fd0ea299a7cc35e9ca0c360f453fa", "reftest" @@ -588387,7 +588526,7 @@ "8cec2799c2e0218e2e0c796ee4589b64d732cb39", "support" ], - "css/css-pseudo/marker-content-007.html": [ + "css/css-pseudo/marker-content-007.tentative.html": [ "fb452666e3c16094945ea5212e66cf04914f47f4", "reftest" ], @@ -588395,7 +588534,7 @@ "6d5052b378b7a5f626a51cb033fba8f7339192aa", "support" ], - "css/css-pseudo/marker-content-008.html": [ + "css/css-pseudo/marker-content-008.tentative.html": [ "88aee13dc8c9530967d73da7f09a609a40e483ac", "reftest" ], @@ -588403,7 +588542,7 @@ "a3db09f078148cdfe8105bc0d12186e15cf33d48", "support" ], - "css/css-pseudo/marker-content-009.html": [ + "css/css-pseudo/marker-content-009.tentative.html": [ "b3627cca7554076f85d59869eec7bc80e39b82be", "reftest" ], @@ -588419,7 +588558,7 @@ "62a64a1e5e16ac7d90ada265317235cfb6dbe64f", "support" ], - "css/css-pseudo/marker-content-011.html": [ + "css/css-pseudo/marker-content-011.tentative.html": [ "0cc20b0cdcd242021bc37b9e2d3500ed21c5b35f", "reftest" ], @@ -588504,7 +588643,7 @@ "reftest" ], "css/css-pseudo/parsing/marker-supported-properties.html": [ - "a34fd76fea48eb05b080933b63e049a667d33b3c", + "0ffd6f4c2b82dfa9819b4890b1d7c1e61dd8e2b2", "testharness" ], "css/css-pseudo/parsing/tree-abiding-pseudo-elements.html": [ @@ -593299,10 +593438,6 @@ "d2617f8aa2d1c966e394abb1d1617c012ea4648e", "testharness" ], - "css/css-sizing/ortho-writing-mode-001.html": [ - "9342802645faa7b57a12ce4b8ef17d755fcaface", - "reftest" - ], "css/css-sizing/orthogonal-writing-mode-float-in-inline.html": [ "fa95069dbf0083b0dc7095d2bb3acf20a6ccf898", "reftest" @@ -607500,7 +607635,7 @@ "support" ], "css/css-transitions/README.md": [ - "f11374e47b1876d06231854907c3082b5d4774ab", + "f72f11dccae5e8b63de6148573723f86fbb4c708", "support" ], "css/css-transitions/animations/text-shadow-interpolation.html": [ @@ -612692,7 +612827,7 @@ "testharness" ], "css/css-values/minmax-length-computed.html": [ - "410884495461508d94b3a11c385ab1afba60d75d", + "2d6e24e51944beb0f7d030bd99eb14576f7dd3dc", "testharness" ], "css/css-values/minmax-length-invalid.html": [ @@ -612700,7 +612835,7 @@ "testharness" ], "css/css-values/minmax-length-percent-computed.html": [ - "881905ddd565960d47839f1b5a64770ad7627ba5", + "acd0f2b31bb7554d1e74dd43ad56bd5a68543f07", "testharness" ], "css/css-values/minmax-length-percent-invalid.html": [ @@ -621315,6 +621450,10 @@ "04a8a2289aa67e05a359ece1d09d961539d82571", "testharness" ], + "css/cssom/border-shorthand-serialization.html": [ + "9b5821563c49c8874f7bbd8dc4ffb2f9813a789e", + "testharness" + ], "css/cssom/computed-style-001.html": [ "d637b066b03a71283ad89315a5c346a1715900f1", "testharness" @@ -625712,7 +625851,7 @@ "support" ], "css/support/computed-testcommon.js": [ - "c7c7e073203a67844ebcdf029f5c323964a41c99", + "43851cb87fccb7d09cb985b294ae27d14317aedd", "support" ], "css/support/green.ico": [ @@ -625888,7 +626027,7 @@ "support" ], "css/tools/apiclient/README.md": [ - "528625e45274cbb481ed8bfb2d3b2ff4d0e07dc7", + "6e332b852adc993940e6765ff9f7075d09a21fcf", "support" ], "css/tools/apiclient/__init__.py": [ @@ -635988,11 +636127,11 @@ "support" ], "docs/writing-tests/testdriver-extension-tutorial.md": [ - "262e394353632ccc4aaa8b42955d09a0de61624f", + "92ce939f09f5499c7a0bdff60bf42c0752e2ff78", "support" ], "docs/writing-tests/testdriver.md": [ - "6b398b993b61f835dc18b1a97019ab3d3d1377e0", + "bc1cf8dcad17210ad0400c79ea33b1231cfff4c8", "support" ], "docs/writing-tests/testharness-api.md": [ @@ -637667,6 +637806,10 @@ "55a969415ce62e9c14d02e58d63b2827ae2aa6bc", "testharness" ], + "dom/svg-insert-crash.html": [ + "539fb1fae7057a2d331d6c5f8e4a07efab6bc98a", + "testharness" + ], "dom/traversal/NodeFilter-constants.html": [ "1ce4736cc618046fdc3def9aa1bf1b9469beb56e", "testharness" @@ -637908,7 +638051,7 @@ "support" ], "dpub-aam/README.md": [ - "ce4804944404b7bb51690d763070ffb7f6b6a986", + "2805b143bda310e6f0570e4e4a78bc8898dd3282", "support" ], "dpub-aam/doc-abstract-manual.html": [ @@ -638076,7 +638219,7 @@ "support" ], "dpub-aria/README.md": [ - "b2ffb99fd51a2448af4259768603fb6388d01185", + "cf76613c6b9e01d1cb77f99d9c39c57f01c7861a", "support" ], "dpub-aria/inuse-manual.html": [ @@ -641515,6 +641658,14 @@ "961d40336aeb3ed04c58b9a8b6196b3393cb92d5", "support" ], + "feature-policy/feature-policy-frame-policy-timing-iframe-camera.https.sub.html": [ + "8ea5d77cfecae3ff97791fd29b7f5cc0cd77323b", + "support" + ], + "feature-policy/feature-policy-frame-policy-timing.https.sub.html": [ + "c78d16132bc6ab1dc787fef4901f215d1377272d", + "testharness" + ], "feature-policy/feature-policy-header-policy-allowed-for-all.https.sub.html": [ "6bf7ca65326a8a5a146b2f5c399b7adbce527805", "testharness" @@ -642952,7 +643103,7 @@ "support" ], "fetch/content-type/README.md": [ - "3a9d1bd7266baaaaf74c29954debcd0187511ca4", + "f553b7ee8e6c9b158f73120c6c77542297d47931", "support" ], "fetch/content-type/resources/content-type.py": [ @@ -643136,7 +643287,7 @@ "testharness" ], "fetch/corb/script-resource-with-nonsniffable-types.tentative.sub.html": [ - "4e34ecd94b47839f271ec8d6998c06941e76b44f", + "917e54984f460fc1f5a9c13c9ae4520492e17355", "testharness" ], "fetch/corb/style-css-mislabeled-as-html-nosniff.sub.html": [ @@ -643324,7 +643475,7 @@ "support" ], "fetch/metadata/appcache.tentative.https.sub.html": [ - "5e35472fcfdce6972191160b57fa7cce559f96a0", + "3dc47c696fb87ead0ef808b99b7e6e52cff01ebe", "testharness" ], "fetch/metadata/embed.tentative.https.sub.html": [ @@ -647259,12 +647410,20 @@ "1bc116ada46d39b0e7b17dc448cab0c33707057a", "testharness" ], + "html/browsers/sandboxing/sandbox-navigation-timing-iframe.tentative.html": [ + "43726e7720065d9fe3c7d2ea3f3563f5f80315bb", + "support" + ], + "html/browsers/sandboxing/sandbox-navigation-timing.tentative.html": [ + "686f1c0c9f6847772edbe2ef070a483db1df3d9d", + "testharness" + ], "html/browsers/sandboxing/sandbox-new-execution-context-iframe.html": [ "dc15d57c6a352e045ef59d6103ac1540ebc3ad82", "support" ], "html/browsers/sandboxing/sandbox-new-execution-context.html": [ - "6692257bc416114df6c29a2b63586646f5113925", + "653729384feccd527e40cbe7b5ba514c09bed8ba", "testharness" ], "html/browsers/sandboxing/sandbox-parse-noscript-ref.html": [ @@ -648083,6 +648242,22 @@ "43c44cffd64e01f12a8d0dc22bbddfdd05a79a90", "support" ], + "html/cross-origin-embedder-policy/require-corp-about-blank.html": [ + "b94cb57b95f8c290a8d3ed32b4f6b55d4f629159", + "testharness" + ], + "html/cross-origin-embedder-policy/require-corp-about-blank.html.headers": [ + "8df98474b589d070992677cb0134bd47bd0509c4", + "support" + ], + "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html": [ + "a832db1cebbf106b215a8f7c8900bf5f1d3287e3", + "testharness" + ], + "html/cross-origin-embedder-policy/require-corp-about-srcdoc.html.headers": [ + "8df98474b589d070992677cb0134bd47bd0509c4", + "support" + ], "html/cross-origin-embedder-policy/require-corp-sw-from-none.https.html": [ "896ea46ff08000dae262187268b7d8f57ccd1573", "testharness" @@ -655639,6 +655814,10 @@ "839548f01cf0283607d35bedfe4d9dfb25320982", "reftest" ], + "html/semantics/document-metadata/the-style-element/mutations.window.js": [ + "145ea8b66a97e2684ff64bc36ab63b6504841e40", + "testharness" + ], "html/semantics/document-metadata/the-style-element/style-error-01.html": [ "0bdef0e17588cf6d2f95a2a14784f2ac26ad1c43", "testharness" @@ -666208,11 +666387,15 @@ "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPoints.html.ini": [ - "358c6f0902e88fc61d24368b0d0874d318ae92d3", + "c7b3482c786fc4532488f388b802930ccea8dc0e", + "support" + ], + "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html.ini": [ + "40626b8193ecc99e3e5ec5fe181f5553bfd8473a", "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/multiTouchPointsWithPause.html.ini": [ - "83ade1dddf02b0e9d9df5721338bd68c0d0acac3", + "4f1939a431ae272024f62a4169bf8431efc2c5bb", "support" ], "infrastructure/metadata/infrastructure/testdriver/actions/pause.html.ini": [ @@ -666231,8 +666414,8 @@ "3e43b63af9545f2828efd2f7ce510bbc9a87bbfc", "support" ], - "infrastructure/metadata/infrastructure/testdriver/set_permission.html.ini": [ - "9a250edf1a918bc53b41ef9fee429478a9587e1e", + "infrastructure/metadata/infrastructure/testdriver/set_permission.https.html.ini": [ + "2101196fa2fe436c3f94c5f84451f1746501c84d", "support" ], "infrastructure/metadata/infrastructure/testdriver/virtual_authenticator.html.ini": [ @@ -666455,6 +666638,10 @@ "c8169733306b4f348509145f2f04df2573cc6c3e", "testharness" ], + "infrastructure/testdriver/actions/multiTouchPointsTwoTouchStarts.html": [ + "5014be40f6176111107e4e8d49a67fe0af1cdb31", + "testharness" + ], "infrastructure/testdriver/actions/multiTouchPointsWithPause.html": [ "645caf2c720ee6af08a37d4c7e1e1d68c565fd55", "testharness" @@ -666491,8 +666678,8 @@ "2170347c9729564f7e492009b3d20b3267422c1d", "testharness" ], - "infrastructure/testdriver/set_permission.html": [ - "1e92a26398d3215646e4d4d152549510abea1cdc", + "infrastructure/testdriver/set_permission.https.html": [ + "af743f638289602ecc512a7dbd4000de6056b796", "testharness" ], "infrastructure/testdriver/virtual_authenticator.html": [ @@ -667080,7 +667267,7 @@ "support" ], "interfaces/webauthn.idl": [ - "fd35c0dfd373a6b31ae3664ca20637b07c35ecec", + "29025f35eecb5c82b33ffcc7039c4a99f081f4e3", "support" ], "interfaces/webdriver.idl": [ @@ -667903,6 +668090,10 @@ "0a7b408b649fe04604b6f08188a2399eefbbd0a4", "support" ], + "loading/lazyload/disconnected-image-loading-lazy.tentative.html": [ + "c3b72b26239ea18c0575b65d0d6aa3aaef08792d", + "testharness" + ], "loading/lazyload/iframe-loading-eager.tentative.html": [ "26209332ff5a0c4af64e0ae4893f1c396a111ce1", "testharness" @@ -681219,6 +681410,10 @@ "c824ecf1d2b47630f8ebcef3ed42c8c908c8e9eb", "testharness" ], + "permissions/test-periodic-background-sync-permission.html": [ + "c3b6a1d8b9e2ae2e0d1819959fb03d43fa058fbb", + "testharness" + ], "picture-in-picture/META.yml": [ "b878dd547b8267196db6563b0009035af3d4f52a", "support" @@ -681771,6 +681966,10 @@ "207d477697d823d6611b4d8dc6681b3e2fc90a73", "testharness" ], + "portals/csp/frame-ancestors.sub.html": [ + "57f1eb3d88c7b27a1ab82e66b06a7e7511bb0b1d", + "testharness" + ], "portals/csp/frame-src.sub.html": [ "34f1474d4b37f6a867b858a0bfc88e03db48153a", "testharness" @@ -695623,6 +695822,14 @@ "6ddad159524db2870acd4a56115af6d74c460387", "support" ], + "resource-timing/resources/sw-install.html": [ + "0a2fbe2245b865681e88178903e450a6edfe9d73", + "support" + ], + "resource-timing/resources/sw.js": [ + "4e4fe1e1f068fd88e57506ac4ac295a9ea4f0193", + "support" + ], "resource-timing/resources/webperftestharness.js": [ "8e04e52f9c57fafb6a599da3a1963aa6ed545e6f", "support" @@ -695663,6 +695870,10 @@ "598a727bf88e7f47556d509f6929a86b64b0506c", "support" ], + "resource-timing/workerStart-tao-protected.https.html": [ + "cf5c2e3d606fba4543e251caa980abc71a901c14", + "testharness" + ], "resources/.htaccess": [ "fd46101ca0099e76a8ed5723515f6e1bd220aebb", "support" @@ -695776,7 +695987,7 @@ "support" ], "resources/chromium/nfc-mock.js": [ - "224a6078c1e0d95299d1e3a2e79c6bf3f7614b5f", + "6823f6362fa13c77c3acb556b4b7f6467144dde8", "support" ], "resources/chromium/sensor.mojom.js": [ @@ -695836,7 +696047,7 @@ "support" ], "resources/chromium/webxr-test.js": [ - "c4bfec3547d42524c7d3df4a0cda47720466251c", + "739d771d40bede77937cf5f767727fff63f8b9f9", "support" ], "resources/chromium/webxr-test.js.headers": [ @@ -695924,7 +696135,7 @@ "support" ], "resources/test/tests/functional/api-tests-1.html": [ - "e4246e7faba8a57920bca06eafa11f7817fb07ed", + "7d46994aa9903fcd156477d56eefe1d6157ffb32", "support" ], "resources/test/tests/functional/api-tests-2.html": [ @@ -696151,6 +696362,10 @@ "abfa4ab800b3c8e6b5f6fd3b42a982cc2e4fe99e", "support" ], + "resources/test/tests/unit/assert_object_equals.html": [ + "73a9b958438c1b83d1e4b4c79870013c98bc5ad7", + "support" + ], "resources/test/tests/unit/basic.html": [ "d907c7bb9fbf4fa4dc674bd57e6a856b68ed13ea", "support" @@ -696220,7 +696435,7 @@ "support" ], "resources/testdriver.js": [ - "22d5ead72267a39b7a0b954b479e60ab6516ec9f", + "f102c8774f7efcb3e9c9bddebcd5ab3d715011d2", "support" ], "resources/testdriver.js.headers": [ @@ -696339,8 +696554,8 @@ "e1b50f670105f3a05dacd3518d62770685121c67", "support" ], - "screen_enumeration/getScreens.tentative.https.any.js": [ - "0b8c226ddbd7035d29760b8afa84d8429a3d3482", + "screen_enumeration/getScreens.tentative.https.window.js": [ + "3b893bbbb772a773dfa9c18cf4bd844cfe4db99f", "testharness" ], "scroll-animations/META.yml": [ @@ -698716,7 +698931,7 @@ "support" ], "service-workers/service-worker/resources/dummy-worker-interceptor.js": [ - "1c381fd180e2b3d3b7a11394926096141b0a3c76", + "5129ed51ea550c210abc53e11209e7a3e9dc36b1", "support" ], "service-workers/service-worker/resources/dummy.html": [ @@ -701111,6 +701326,10 @@ "1f34178beace0786a347a6b378489b3741c960d9", "support" ], + "sms/detached-iframe.https.html": [ + "bde6e25b80c63ff30ef279bc576e3d993466c3f3", + "testharness" + ], "sms/idlharness.https.any.js": [ "0c31744937c6dbc9b292586ab8ce5f10b268f3ed", "testharness" @@ -701820,11 +702039,11 @@ "support" ], "svg-aam/README.md": [ - "e9163e3536129676dbc5e381180f6ec9b3143e89", + "a1dcef58700dd65643e49dcd4f1abec417f12f34", "support" ], "svg/META.yml": [ - "ee0fff087c4f9a5723f53cc002e228a713e730da", + "a928f0c399126a5e463e1497c4a454dabe6f24fe", "support" ], "svg/README.md": [ @@ -702091,10 +702310,6 @@ "4879e5f6ce8774f176526406ecff680bba65b6a9", "testharness" ], - "svg/animations/discard-on-discard.html": [ - "4a6b9f9368dcb020120f502e4528860beb5f14c6", - "testharness" - ], "svg/animations/end-attribute-change-end-time.html": [ "9f05d7d405d364a1eadfa104c1c4bd90a2bf3b8c", "testharness" @@ -705575,6 +705790,14 @@ "d1a7dbf747efa7c26973773c8233c38c3ff74ea0", "testharness" ], + "svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg": [ + "116c61c45ebfa7d2725df78f3a920fc3c24c7165", + "reftest" + ], + "svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg": [ + "7c4c5e0fcf3352e89f808e308c5477ae7e862f24", + "reftest" + ], "svg/painting/reftests/markers-orient-001-ref.svg": [ "871003f3a2303404696d467a7cfaad729b811206", "support" @@ -706123,6 +706346,14 @@ "120941444a4898197d6b6001f9908a6cd48b62ba", "support" ], + "svg/struct/reftests/requiredextensions-empty-string.svg": [ + "28f5da4a3e4358821d907a2883b6ef8fa40eeaa4", + "reftest" + ], + "svg/struct/reftests/requiredextensions-xhtml.tentative.svg": [ + "911f983cab68ee733b01517486b198fa6fcf3dc0", + "reftest" + ], "svg/struct/reftests/support/etag-max-age-zero-icons.svg": [ "6f7fb0f830158972800e2c5c6d8f8de6a53bf2c8", "support" @@ -706844,7 +707075,7 @@ "support" ], "tools/ci/run_tc.py": [ - "b4cb2b01b9745de1c234c9eeaf414e65b8fe7ae3", + "482de1ad336a1824d2335c9e6d7996063f71a78e", "support" ], "tools/ci/taskcluster-run.py": [ @@ -706860,7 +707091,7 @@ "support" ], "tools/ci/tc/decision.py": [ - "92a27ef79ab3fb49aff79197ca503b7a766c8c03", + "0c935b93f8ee87f66dadefddd3a116160ed9dd3f", "support" ], "tools/ci/tc/download.py": [ @@ -706872,7 +707103,7 @@ "support" ], "tools/ci/tc/tasks/test.yml": [ - "a64ef3749211bbb2b3580efc2eee3ea5a810ea6f", + "6e5e1b5070adc14c0c90498b82e5fecaae4f6c1e", "support" ], "tools/ci/tc/testdata/epochs_daily_push_event.json": [ @@ -706900,7 +707131,7 @@ "support" ], "tools/ci/tc/tests/test_valid.py": [ - "d6cbfba4e2cb69488ce585d4db9064dcaa5fe6fa", + "4280387127d35a513592908242c60f4bd3610ffe", "support" ], "tools/ci/tests/test_jobs.py": [ @@ -707184,7 +707415,7 @@ "support" ], "tools/manifest/testpaths.py": [ - "3c1f09d437304a0ce7bbcbc542dede672f01a17e", + "2197792cd64eb8b61a48c1615089fd5376902a8f", "support" ], "tools/manifest/tests/__init__.py": [ @@ -711664,7 +711895,7 @@ "support" ], "tools/wpt/browser.py": [ - "a94d5509cc8ba1bfcc4cbceafd9f511a4f9804ab", + "3ee98d959ec5befc58b884e0ec5385d554bc8725", "support" ], "tools/wpt/commands.json": [ @@ -711700,7 +711931,7 @@ "support" ], "tools/wpt/run.py": [ - "4c1f2c99128de8937dca01479b1b4c4319414f8b", + "0c732e7ae8aee7d441015642ba8f2fcbd7e66e0e", "support" ], "tools/wpt/testfiles.py": [ @@ -711776,7 +712007,7 @@ "support" ], "tools/wptrunner/docs/expectation.rst": [ - "77938abe03d55ce14571ec1b4c2b43d0ed4a409b", + "e0bc7a850bf581921d5062a07154d01a0cb18e4e", "support" ], "tools/wptrunner/docs/internals.rst": [ @@ -711972,7 +712203,11 @@ "support" ], "tools/wptrunner/wptrunner/browsers/__init__.py": [ - "957d2a689acda4801cddc351e1c2cd4c06a8d7e3", + "da68ddb861876262864b3cf7954f2584edb06c65", + "support" + ], + "tools/wptrunner/wptrunner/browsers/android_weblayer.py": [ + "93f4d6b630d288c75f888cb7304bbf8a4195db6c", "support" ], "tools/wptrunner/wptrunner/browsers/android_webview.py": [ @@ -712072,7 +712307,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/base.py": [ - "c8a26d042ebb3fc8276b73f3520e8e523bffc7df", + "9e302107118fd42fb84765fb16d87ecbf0270c5a", "support" ], "tools/wptrunner/wptrunner/executors/executorchrome.py": [ @@ -712116,7 +712351,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/executorwebdriver.py": [ - "8ea59b2577d0825080e1f425e33e114d62b695fb", + "221f48a3ea9cb8cf37a687203bce94af5a8b0f2a", "support" ], "tools/wptrunner/wptrunner/executors/executorwebkit.py": [ @@ -712128,7 +712363,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/protocol.py": [ - "1a47fa9f1d8cc46a7fe5b8657b20dea6de60b0bf", + "a1e8dacecb695af1039829dceb493f91da77b6dc", "support" ], "tools/wptrunner/wptrunner/executors/pytestrunner/__init__.py": [ @@ -712244,7 +712479,7 @@ "support" ], "tools/wptrunner/wptrunner/testrunner.py": [ - "8dece20a8e93e279204ccfee70f07ce8a8debab3", + "f1b1faa4498ca61483159acd690f458b5ba32fbe", "support" ], "tools/wptrunner/wptrunner/tests/__init__.py": [ @@ -712872,7 +713107,7 @@ "testharness" ], "trusted-types/TrustedTypePolicyFactory-constants.tentative.html": [ - "001a6cea4813b0c7f720448d95690c63429405a6", + "0ba2eb62375a57c78f1caba4592e880b92483599", "testharness" ], "trusted-types/TrustedTypePolicyFactory-createPolicy-createXYZTests.tentative.html": [ @@ -712964,7 +713199,7 @@ "testharness" ], "trusted-types/block-text-node-insertion-into-script-element.tentative.html": [ - "a6aa061f7307330e027c3e8b26e6b931cee2bb7c", + "04b19f7e42111a11073a4049350f7d8ddde7d1b2", "testharness" ], "trusted-types/csp-block-eval.tentative.html": [ @@ -716852,7 +717087,7 @@ "support" ], "wai-aria/README.md": [ - "66d6d087f68e7b5d0220c80ac0b2f5f0ab88cf4c", + "4e1a7706e33337e798f98d983a89eb44b77a21d5", "support" ], "wai-aria/alertdialog_modal_false-manual.html": [ @@ -718336,7 +718571,7 @@ "testharness" ], "web-animations/interfaces/Animatable/animate.html": [ - "2d09cdf4545e8073786215169fd3f26c28a7e119", + "95d7db7bb3ba36fc9a0914ebe0d2c8e910e29cf1", "testharness" ], "web-animations/interfaces/Animatable/getAnimations.html": [ @@ -718468,7 +718703,7 @@ "testharness" ], "web-animations/interfaces/KeyframeEffect/target.html": [ - "10f42eea4e5b406c822802c1078fcc1295cb8a39", + "a9827d64d3d076185daee4787589832cc74f0ec0", "testharness" ], "web-animations/resources/easing-tests.js": [ @@ -718548,11 +718783,11 @@ "testharness" ], "web-animations/timing-model/animations/reverse-running-animation-ref.html": [ - "0aaa0443649acd9453f5b52534016a92889b157e", + "7fcdf9156f82ae51ed3004fa00ef1fc1f01192db", "support" ], "web-animations/timing-model/animations/reverse-running-animation.html": [ - "584aa0029ea2e5aa4926035756b5f49d74fa9f54", + "c5179a72c9dc83ce1c4426b5a844d61a039e250b", "reftest" ], "web-animations/timing-model/animations/reversing-an-animation.html": [ @@ -718564,15 +718799,15 @@ "testharness" ], "web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html": [ - "b1fc43e795226dd8a395bc62ebee9792c541b191", + "6687ad7612e2b37fc7d4d5604e27252cbeb7166d", "testharness" ], "web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html": [ - "9d07d53df46164d53b1a3c8f4a10787608c5f014", + "0522c43b16a881a14b339294e5ed56b8ae064f92", "testharness" ], "web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html": [ - "a1727994bdb9b8da10bfdd36baa3d8e0ccc4ef1d", + "14c9c60100585554f55dde1e225fdfc5b27f1df3", "testharness" ], "web-animations/timing-model/animations/setting-the-target-effect-of-an-animation.html": [ @@ -718759,12 +718994,8 @@ "32c24570db165422a60a18b767c828dab10c5b9c", "support" ], - "web-nfc/NDEFErrorEvent_constructor.https.html": [ - "243893620c64a7d9fd0e71f506293dc5705716e7", - "testharness" - ], "web-nfc/NDEFMessage_constructor.https.html": [ - "f32f179b95798fe590a518603eff35265cd51494", + "1c842f5c7b61c35d09e2cd41014e1b8e04839624", "testharness" ], "web-nfc/NDEFReader-document-hidden-manual.https.html": [ @@ -718772,11 +719003,11 @@ "manual" ], "web-nfc/NDEFReader_scan.https.html": [ - "78160fbcb2ab11a8ebc80c39a6fd935eddc0844b", + "d3101ab8e1a9b3da7b16b4b2530493ac46ed2528", "testharness" ], "web-nfc/NDEFReader_scan_filter.https.html": [ - "4c1e7de44008889386e71431d7b4d0042739fe4e", + "850d9b9c08833e6048b88e84c14945d3c0629a17", "testharness" ], "web-nfc/NDEFReader_scan_iframe.https.html": [ @@ -718784,11 +719015,11 @@ "testharness" ], "web-nfc/NDEFReadingEvent_constructor.https.html": [ - "3d734105e9ce0ed68e86e421f80847fa485779fe", + "cc56f8a18bdc6f7a0cde3f9f7246330f8e867dd6", "testharness" ], "web-nfc/NDEFRecord_constructor.https.html": [ - "1b2dda9bfc87da146c3b3562dff64568fb68f9b1", + "f3546b99dcb9461a519579b656ce33adacaaf5a3", "testharness" ], "web-nfc/NDEFWriter-document-hidden-manual.https.html": [ @@ -718796,7 +719027,7 @@ "manual" ], "web-nfc/NDEFWriter_push.https.html": [ - "a33b1fab3034af2058a133e8182086dc2cb2dfbe", + "bacbcaaeff39955c062a99f93d3ee443184e824e", "testharness" ], "web-nfc/README.md": [ @@ -718804,7 +719035,7 @@ "support" ], "web-nfc/idlharness.https.window.js": [ - "74ffc21b2204ea894dcea32a4aface9bc69739c1", + "a1eb3386b73a8425dbd85bf1498bcce783a10857", "testharness" ], "web-nfc/nfc_insecure_context.html": [ @@ -718812,7 +719043,7 @@ "testharness" ], "web-nfc/resources/nfc-helpers.js": [ - "3ce725a7c475b28d96f15dfd12736ed8a54f0006", + "b9e260ac71403a8e30422b4f8d1d63c40d3d00c4", "support" ], "web-nfc/resources/support-iframe.html": [ @@ -719428,11 +719659,11 @@ "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html": [ - "d87e35b571d75c0ff595ab023f4a54a420111523", + "84458d0aaa77788b6de7ccd09b64f18a6bf9ede4", "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https.html": [ - "79d402c51862f019413f4ed789bbe8ce4b27e175", + "5f4bee7c5312c89207a25801cd0c2d6055ec00b5", "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-automatic-pull.https.html": [ @@ -719456,11 +719687,11 @@ "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html": [ - "0a9966add85c6cdd35ce54eb05aae0986c5d9b8e", + "0914edbb3b0ababb646784be605177c8e4a79a09", "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html": [ - "9d65d872b987943491cace95b8cdf729158fbd0d", + "a8a7f5ed1de78b90432641d617e60a1b58dd893f", "testharness" ], "webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-options.https.html": [ @@ -719812,7 +720043,7 @@ "support" ], "webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html": [ - "a2fa8040b2c6100f7ec22f0f133525808403ce01", + "38bd94a037c3b15e59fe6e99acbf013636de9003", "testharness" ], "webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/mediaElementAudioSourceToScriptProcessorTest.html": [ @@ -719820,7 +720051,7 @@ "testharness" ], "webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/no-cors.https.html": [ - "38324a9f67a67f50f134fb78af43117e2ec9b8c8", + "de2f0b7dd3b680cbb38d1b0546c6656b1e03e1b2", "testharness" ], "webaudio/the-audio-api/the-mediastreamaudiodestinationnode-interface/.gitkeep": [ @@ -720067,6 +720298,14 @@ "ff0efcb656a740e9fdee2a3cc8dbfddda9b2a563", "testharness" ], + "webauthn/resources/common-inputs.js": [ + "8370f7f079a014ea58dd3ce606b7fa48dcc88a3e", + "support" + ], + "webauthn/resources/utils.js": [ + "f361a94d2e4f63b18bf1f7f2971db6322a30000f", + "support" + ], "webauthn/securecontext.http.html": [ "52786950f383eb0454edcf9fad9b637dde956ca8", "testharness" @@ -720075,6 +720314,10 @@ "6c9aabd11ea3a51688962890dde29d5c41ec6c6f", "testharness" ], + "webauthn/webauthn-testdriver-basic.https.html": [ + "7790f5d0d3fd7567df24a3aeebc4d7541c118e1a", + "testharness" + ], "webdriver/META.yml": [ "a397b497c32234d3889c738f51b96a3ba3b2a96f", "support" @@ -727524,7 +727767,7 @@ "testharness" ], "workers/Worker-constructor-proto.any.js": [ - "73eabd55226d67b05fc3a86a9e57880b9a725e5b", + "90ad767b9807853f6fbc611dbeac435b4c14079b", "testharness" ], "workers/Worker-custom-event.any.js": [ @@ -727536,7 +727779,7 @@ "testharness" ], "workers/Worker-location.sub.any.js": [ - "2ef944553105767535f6e3119048091f959bfac8", + "1c3dabff0361c03b0a338b004854f728a8ea5d29", "testharness" ], "workers/Worker-messageport.html": [ @@ -727544,7 +727787,7 @@ "testharness" ], "workers/Worker-multi-port.html": [ - "9a89583ad91b40e64c7a3682da1e5053e18b4d26", + "138f8f02d4e722509905f01cd64bfb93b997f9bd", "testharness" ], "workers/Worker-nested-importScripts-error.html": [ @@ -727592,7 +727835,7 @@ "testharness" ], "workers/WorkerGlobalScope-close.html": [ - "a193a3478f4a58176314727898593428a53726a3", + "08ab1ca515c60b6ecf1d3e4555d8ade349e28c13", "testharness" ], "workers/WorkerGlobalScope_ErrorEvent_colno.htm": [ @@ -727768,7 +728011,7 @@ "testharness" ], "workers/Worker_script_mimetype.htm": [ - "04fe68e6628675f8c9a0b1f300dab4001f381615", + "55d81d5d1c9b6105f1815dc09390467b47f0965d", "testharness" ], "workers/Worker_terminate_event_queue.htm": [ diff --git a/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini b/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini deleted file mode 100644 index 86715ffc9c2..00000000000 --- a/tests/wpt/metadata/css/CSS2/floats/floats-in-table-caption-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[floats-in-table-caption-001.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/text/white-space-002.xht.ini b/tests/wpt/metadata/css/CSS2/text/white-space-002.xht.ini new file mode 100644 index 00000000000..b1d1b14db72 --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/text/white-space-002.xht.ini @@ -0,0 +1,2 @@ +[white-space-002.xht] + expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/text/white-space-003.xht.ini b/tests/wpt/metadata/css/CSS2/text/white-space-003.xht.ini new file mode 100644 index 00000000000..182a9fc2d1e --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/text/white-space-003.xht.ini @@ -0,0 +1,2 @@ +[white-space-003.xht] + expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/visudet/line-height-204.html.ini b/tests/wpt/metadata/css/CSS2/visudet/line-height-204.html.ini new file mode 100644 index 00000000000..3d28990c283 --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/visudet/line-height-204.html.ini @@ -0,0 +1,2 @@ +[line-height-204.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/compositing/parsing/background-blend-mode-computed.html.ini b/tests/wpt/metadata/css/compositing/parsing/background-blend-mode-computed.html.ini index 96ac8d2b25d..fbf61931b98 100644 --- a/tests/wpt/metadata/css/compositing/parsing/background-blend-mode-computed.html.ini +++ b/tests/wpt/metadata/css/compositing/parsing/background-blend-mode-computed.html.ini @@ -56,3 +56,60 @@ [Property background-blend-mode value 'difference' computes to 'difference'] expected: FAIL + [Property background-blend-mode value 'screen, overlay'] + expected: FAIL + + [Property background-blend-mode value 'darken'] + expected: FAIL + + [Property background-blend-mode value 'normal, luminosity'] + expected: FAIL + + [Property background-blend-mode value 'luminosity'] + expected: FAIL + + [Property background-blend-mode value 'exclusion'] + expected: FAIL + + [Property background-blend-mode value 'multiply'] + expected: FAIL + + [Property background-blend-mode value 'screen'] + expected: FAIL + + [Property background-blend-mode value 'color-burn'] + expected: FAIL + + [Property background-blend-mode value 'hue'] + expected: FAIL + + [Property background-blend-mode value 'saturation'] + expected: FAIL + + [Property background-blend-mode value 'hard-light'] + expected: FAIL + + [Property background-blend-mode value 'color-dodge'] + expected: FAIL + + [Property background-blend-mode value 'normal'] + expected: FAIL + + [Property background-blend-mode value 'color'] + expected: FAIL + + [Property background-blend-mode value 'difference'] + expected: FAIL + + [Property background-blend-mode value 'lighten'] + expected: FAIL + + [Property background-blend-mode value 'soft-light'] + expected: FAIL + + [Property background-blend-mode value 'overlay'] + expected: FAIL + + [Property background-blend-mode value 'color, saturation'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/compositing/parsing/isolation-computed.html.ini b/tests/wpt/metadata/css/compositing/parsing/isolation-computed.html.ini index ef7f5a83c6e..8978a3dea3d 100644 --- a/tests/wpt/metadata/css/compositing/parsing/isolation-computed.html.ini +++ b/tests/wpt/metadata/css/compositing/parsing/isolation-computed.html.ini @@ -5,3 +5,9 @@ [Property isolation value 'auto' computes to 'auto'] expected: FAIL + [Property isolation value 'auto'] + expected: FAIL + + [Property isolation value 'isolate'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/align-content-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/align-content-computed.html.ini index 036730941a3..165bf87de0b 100644 --- a/tests/wpt/metadata/css/css-align/parsing/align-content-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/align-content-computed.html.ini @@ -23,3 +23,27 @@ [Property align-content value 'space-evenly' computes to 'space-evenly'] expected: FAIL + [Property align-content value 'last baseline'] + expected: FAIL + + [Property align-content value 'baseline'] + expected: FAIL + + [Property align-content value 'unsafe end'] + expected: FAIL + + [Property align-content value 'normal'] + expected: FAIL + + [Property align-content value 'space-evenly'] + expected: FAIL + + [Property align-content value 'safe flex-start'] + expected: FAIL + + [Property align-content value 'start'] + expected: FAIL + + [Property align-content value 'end'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/align-items-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/align-items-computed.html.ini index 7901836699f..a6bf5fa814d 100644 --- a/tests/wpt/metadata/css/css-align/parsing/align-items-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/align-items-computed.html.ini @@ -23,3 +23,27 @@ [Property align-items value 'last baseline' computes to 'last baseline'] expected: FAIL + [Property align-items value 'self-end'] + expected: FAIL + + [Property align-items value 'start'] + expected: FAIL + + [Property align-items value 'unsafe center'] + expected: FAIL + + [Property align-items value 'last baseline'] + expected: FAIL + + [Property align-items value 'end'] + expected: FAIL + + [Property align-items value 'self-start'] + expected: FAIL + + [Property align-items value 'safe self-end'] + expected: FAIL + + [Property align-items value 'normal'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/align-self-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/align-self-computed.html.ini index fa61b083ab8..6d95449604f 100644 --- a/tests/wpt/metadata/css/css-align/parsing/align-self-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/align-self-computed.html.ini @@ -26,3 +26,30 @@ [Property align-self value 'start' computes to 'start'] expected: FAIL + [Property align-self value 'safe self-end'] + expected: FAIL + + [Property align-self value 'self-start'] + expected: FAIL + + [Property align-self value 'unsafe center'] + expected: FAIL + + [Property align-self value 'normal'] + expected: FAIL + + [Property align-self value 'self-end'] + expected: FAIL + + [Property align-self value 'start'] + expected: FAIL + + [Property align-self value 'auto'] + expected: FAIL + + [Property align-self value 'last baseline'] + expected: FAIL + + [Property align-self value 'end'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/column-gap-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/column-gap-computed.html.ini index 1ac6a8db6fe..25d3ec3ed8d 100644 --- a/tests/wpt/metadata/css/css-align/parsing/column-gap-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/column-gap-computed.html.ini @@ -14,3 +14,18 @@ [Property column-gap value 'calc(10px - 0.5em)' computes to '0px'] expected: FAIL + [Property column-gap value 'normal'] + expected: FAIL + + [Property column-gap value 'calc(10px + 0.5em)'] + expected: FAIL + + [Property column-gap value '40%'] + expected: FAIL + + [Property column-gap value 'calc(10px - 0.5em)'] + expected: FAIL + + [Property column-gap value 'calc(50% + 60px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/gap-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/gap-computed.html.ini index 77d70251f90..4b82ec79ae3 100644 --- a/tests/wpt/metadata/css/css-align/parsing/gap-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/gap-computed.html.ini @@ -32,3 +32,36 @@ [Property gap value 'calc(-0.5em + 10px)' computes to '0px'] expected: FAIL + [Property gap value '20% calc(20% + 10px)'] + expected: FAIL + + [Property gap value 'normal'] + expected: FAIL + + [Property gap value 'normal 10px'] + expected: FAIL + + [Property gap value '20%'] + expected: FAIL + + [Property gap value '10px'] + expected: FAIL + + [Property gap value '10px 20%'] + expected: FAIL + + [Property gap value 'calc(-0.5em + 10px) calc(0.5em + 10px)'] + expected: FAIL + + [Property gap value 'calc(20% + 10px) normal'] + expected: FAIL + + [Property gap value 'calc(20% + 10px)'] + expected: FAIL + + [Property gap value 'calc(-0.5em + 10px)'] + expected: FAIL + + [Property gap value 'calc(0.5em + 10px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/justify-content-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/justify-content-computed.html.ini index f96a01069a2..47abd3064e3 100644 --- a/tests/wpt/metadata/css/css-align/parsing/justify-content-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/justify-content-computed.html.ini @@ -23,3 +23,27 @@ [Property justify-content value 'safe flex-start' computes to 'safe flex-start'] expected: FAIL + [Property justify-content value 'start'] + expected: FAIL + + [Property justify-content value 'end'] + expected: FAIL + + [Property justify-content value 'unsafe end'] + expected: FAIL + + [Property justify-content value 'normal'] + expected: FAIL + + [Property justify-content value 'unsafe right'] + expected: FAIL + + [Property justify-content value 'safe flex-start'] + expected: FAIL + + [Property justify-content value 'space-evenly'] + expected: FAIL + + [Property justify-content value 'left'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/justify-items-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/justify-items-computed.html.ini index b9104efccf3..3cd51733267 100644 --- a/tests/wpt/metadata/css/css-align/parsing/justify-items-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/justify-items-computed.html.ini @@ -59,3 +59,60 @@ [Property justify-items value 'end' computes to 'end'] expected: FAIL + [Property justify-items value 'legacy right'] + expected: FAIL + + [Property justify-items value 'safe self-end'] + expected: FAIL + + [Property justify-items value 'center'] + expected: FAIL + + [Property justify-items value 'legacy'] + expected: FAIL + + [Property justify-items value 'normal'] + expected: FAIL + + [Property justify-items value 'legacy center'] + expected: FAIL + + [Property justify-items value 'flex-start'] + expected: FAIL + + [Property justify-items value 'self-end'] + expected: FAIL + + [Property justify-items value 'last baseline'] + expected: FAIL + + [Property justify-items value 'safe left'] + expected: FAIL + + [Property justify-items value 'right'] + expected: FAIL + + [Property justify-items value 'start'] + expected: FAIL + + [Property justify-items value 'end'] + expected: FAIL + + [Property justify-items value 'stretch'] + expected: FAIL + + [Property justify-items value 'unsafe center'] + expected: FAIL + + [Property justify-items value 'flex-end'] + expected: FAIL + + [Property justify-items value 'self-start'] + expected: FAIL + + [Property justify-items value 'legacy left'] + expected: FAIL + + [Property justify-items value 'baseline'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/justify-self-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/justify-self-computed.html.ini index 97de7bd520a..b739e8a51d0 100644 --- a/tests/wpt/metadata/css/css-align/parsing/justify-self-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/justify-self-computed.html.ini @@ -47,3 +47,51 @@ [Property justify-self value 'unsafe center' computes to 'unsafe center'] expected: FAIL + [Property justify-self value 'center'] + expected: FAIL + + [Property justify-self value 'safe self-end'] + expected: FAIL + + [Property justify-self value 'auto'] + expected: FAIL + + [Property justify-self value 'unsafe center'] + expected: FAIL + + [Property justify-self value 'baseline'] + expected: FAIL + + [Property justify-self value 'start'] + expected: FAIL + + [Property justify-self value 'last baseline'] + expected: FAIL + + [Property justify-self value 'normal'] + expected: FAIL + + [Property justify-self value 'end'] + expected: FAIL + + [Property justify-self value 'flex-end'] + expected: FAIL + + [Property justify-self value 'stretch'] + expected: FAIL + + [Property justify-self value 'self-start'] + expected: FAIL + + [Property justify-self value 'flex-start'] + expected: FAIL + + [Property justify-self value 'self-end'] + expected: FAIL + + [Property justify-self value 'left'] + expected: FAIL + + [Property justify-self value 'unsafe right'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/place-content-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/place-content-computed.html.ini index ffe746f3fcf..c940f4a8ce1 100644 --- a/tests/wpt/metadata/css/css-align/parsing/place-content-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/place-content-computed.html.ini @@ -68,3 +68,72 @@ [Property place-content value 'normal right' computes to 'normal right'] expected: FAIL + [Property place-content value 'last baseline flex-start'] + expected: FAIL + + [Property place-content value 'first baseline stretch'] + expected: FAIL + + [Property place-content value 'flex-start flex-start'] + expected: FAIL + + [Property place-content value 'space-around'] + expected: FAIL + + [Property place-content value 'space-evenly'] + expected: FAIL + + [Property place-content value 'safe flex-start'] + expected: FAIL + + [Property place-content value 'center normal'] + expected: FAIL + + [Property place-content value 'end'] + expected: FAIL + + [Property place-content value 'stretch'] + expected: FAIL + + [Property place-content value 'normal normal'] + expected: FAIL + + [Property place-content value 'center'] + expected: FAIL + + [Property place-content value 'space-evenly unsafe end'] + expected: FAIL + + [Property place-content value 'baseline stretch'] + expected: FAIL + + [Property place-content value 'space-between'] + expected: FAIL + + [Property place-content value 'baseline space-around'] + expected: FAIL + + [Property place-content value 'first baseline start'] + expected: FAIL + + [Property place-content value 'baseline'] + expected: FAIL + + [Property place-content value 'last baseline'] + expected: FAIL + + [Property place-content value 'normal stretch'] + expected: FAIL + + [Property place-content value 'normal right'] + expected: FAIL + + [Property place-content value 'first baseline'] + expected: FAIL + + [Property place-content value 'baseline unsafe left'] + expected: FAIL + + [Property place-content value 'unsafe end unsafe end'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/place-items-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/place-items-computed.html.ini index 5acfddefa0d..92e56bb50ad 100644 --- a/tests/wpt/metadata/css/css-align/parsing/place-items-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/place-items-computed.html.ini @@ -53,3 +53,57 @@ [Property place-items value 'stretch baseline' computes to 'stretch baseline'] expected: FAIL + [Property place-items value 'flex-end'] + expected: FAIL + + [Property place-items value 'safe self-end'] + expected: FAIL + + [Property place-items value 'center'] + expected: FAIL + + [Property place-items value 'stretch legacy left'] + expected: FAIL + + [Property place-items value 'first baseline right legacy'] + expected: FAIL + + [Property place-items value 'unsafe center unsafe center'] + expected: FAIL + + [Property place-items value 'stretch stretch'] + expected: FAIL + + [Property place-items value 'safe self-end normal'] + expected: FAIL + + [Property place-items value 'normal'] + expected: FAIL + + [Property place-items value 'baseline unsafe left'] + expected: FAIL + + [Property place-items value 'self-start'] + expected: FAIL + + [Property place-items value 'first baseline'] + expected: FAIL + + [Property place-items value 'flex-end legacy'] + expected: FAIL + + [Property place-items value 'normal right'] + expected: FAIL + + [Property place-items value 'last baseline center'] + expected: FAIL + + [Property place-items value 'last baseline last baseline'] + expected: FAIL + + [Property place-items value 'end end'] + expected: FAIL + + [Property place-items value 'stretch baseline'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/place-self-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/place-self-computed.html.ini index 5c6b792b5ff..cdfa9f7b492 100644 --- a/tests/wpt/metadata/css/css-align/parsing/place-self-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/place-self-computed.html.ini @@ -47,3 +47,51 @@ [Property place-self value 'center center' computes to 'center'] expected: FAIL + [Property place-self value 'safe self-end safe self-end'] + expected: FAIL + + [Property place-self value 'unsafe center stretch'] + expected: FAIL + + [Property place-self value 'auto last baseline'] + expected: FAIL + + [Property place-self value 'baseline flex-end'] + expected: FAIL + + [Property place-self value 'center center'] + expected: FAIL + + [Property place-self value 'flex-end'] + expected: FAIL + + [Property place-self value 'last baseline last baseline'] + expected: FAIL + + [Property place-self value 'auto auto'] + expected: FAIL + + [Property place-self value 'normal right'] + expected: FAIL + + [Property place-self value 'stretch'] + expected: FAIL + + [Property place-self value 'start'] + expected: FAIL + + [Property place-self value 'unsafe center'] + expected: FAIL + + [Property place-self value 'normal'] + expected: FAIL + + [Property place-self value 'first baseline'] + expected: FAIL + + [Property place-self value 'baseline unsafe left'] + expected: FAIL + + [Property place-self value 'self-start'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-align/parsing/row-gap-computed.html.ini b/tests/wpt/metadata/css/css-align/parsing/row-gap-computed.html.ini index 076774827b9..a6b34573538 100644 --- a/tests/wpt/metadata/css/css-align/parsing/row-gap-computed.html.ini +++ b/tests/wpt/metadata/css/css-align/parsing/row-gap-computed.html.ini @@ -17,3 +17,21 @@ [Property row-gap value 'calc(-0.5em + 10px)' computes to '0px'] expected: FAIL + [Property row-gap value '20%'] + expected: FAIL + + [Property row-gap value 'normal'] + expected: FAIL + + [Property row-gap value 'calc(20% + 10px)'] + expected: FAIL + + [Property row-gap value '10px'] + expected: FAIL + + [Property row-gap value 'calc(-0.5em + 10px)'] + expected: FAIL + + [Property row-gap value 'calc(0.5em + 10px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-animations/parsing/animation-computed.html.ini b/tests/wpt/metadata/css/css-animations/parsing/animation-computed.html.ini index 543182ae329..4664b2fec70 100644 --- a/tests/wpt/metadata/css/css-animations/parsing/animation-computed.html.ini +++ b/tests/wpt/metadata/css/css-animations/parsing/animation-computed.html.ini @@ -32,3 +32,36 @@ [Property animation value 'both' computes to '0s ease 0s 1 normal both running none'] expected: FAIL + [Property animation value '1s'] + expected: FAIL + + [Property animation value 'anim paused both reverse, 4 1s -3s cubic-bezier(0, -2, 1, 3)'] + expected: FAIL + + [Property animation value 'none'] + expected: FAIL + + [Property animation value 'cubic-bezier(0, -2, 1, 3)'] + expected: FAIL + + [Property animation value 'anim paused both reverse 4 1s -3s cubic-bezier(0, -2, 1, 3)'] + expected: FAIL + + [Property animation value '1s -3s'] + expected: FAIL + + [Property animation value 'anim'] + expected: FAIL + + [Property animation value 'paused'] + expected: FAIL + + [Property animation value 'both'] + expected: FAIL + + [Property animation value '4'] + expected: FAIL + + [Property animation value 'reverse'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-animations/parsing/animation-timing-function-computed.html.ini b/tests/wpt/metadata/css/css-animations/parsing/animation-timing-function-computed.html.ini index e414d490ff3..5b93366e898 100644 --- a/tests/wpt/metadata/css/css-animations/parsing/animation-timing-function-computed.html.ini +++ b/tests/wpt/metadata/css/css-animations/parsing/animation-timing-function-computed.html.ini @@ -11,3 +11,15 @@ [Property animation-timing-function value 'steps(2, jump-end)' computes to 'steps(2)'] expected: FAIL + [Property animation-timing-function value 'steps(2, jump-start)'] + expected: FAIL + + [Property animation-timing-function value 'steps(2, jump-none)'] + expected: FAIL + + [Property animation-timing-function value 'steps(2, jump-end)'] + expected: FAIL + + [Property animation-timing-function value 'steps(2, jump-both)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/background-repeat/background-repeat-round-roundup.xht.ini b/tests/wpt/metadata/css/css-backgrounds/background-repeat/background-repeat-round-roundup.xht.ini new file mode 100644 index 00000000000..f20284a5396 --- /dev/null +++ b/tests/wpt/metadata/css/css-backgrounds/background-repeat/background-repeat-round-roundup.xht.ini @@ -0,0 +1,2 @@ +[background-repeat-round-roundup.xht] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-attachment-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-attachment-computed.html.ini index 4ab44b88fb0..457bb823139 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-attachment-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-attachment-computed.html.ini @@ -2,3 +2,6 @@ [Property background-attachment value 'scroll, fixed, local' computes to 'scroll'] expected: FAIL + [Property background-attachment value 'scroll, fixed, local'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-clip-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-clip-computed.html.ini index 9c542887681..2237d957e08 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-clip-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-clip-computed.html.ini @@ -2,3 +2,6 @@ [Property background-clip value 'border-box, padding-box, content-box' computes to 'border-box'] expected: FAIL + [Property background-clip value 'border-box, padding-box, content-box'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-computed.html.ini index dd4fdc7e6c8..d759e0e484a 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-computed.html.ini @@ -77,3 +77,81 @@ [Property background-size value 'contain' computes to 'contain, contain, contain'] expected: FAIL + [Property background-origin value 'content-box, border-box, padding-box, content-box'] + expected: FAIL + + [Property background-clip value 'content-box, border-box'] + expected: FAIL + + [Property background-position-y value '-20%, 10px'] + expected: FAIL + + [Property background-position value '12px 13px, 50% 6px, 30px -10px'] + expected: FAIL + + [Property background-clip value 'border-box'] + expected: FAIL + + [Property background-repeat value 'repeat-x, repeat'] + expected: FAIL + + [Property background-repeat value 'repeat-y, round no-repeat, repeat-x, repeat'] + expected: FAIL + + [Property background-position-x value 'calc(10px - 0.5em), -20%, right, 15%'] + expected: FAIL + + [Property background-origin value 'border-box'] + expected: FAIL + + [Property background-position-y value '0.5em'] + expected: FAIL + + [Property background-attachment value 'local, fixed, scroll'] + expected: FAIL + + [Property background-position value '12px 13px, 50% 6px, 30px -10px, -7px 8px'] + expected: FAIL + + [Property background-clip value 'content-box, border-box, padding-box, content-box'] + expected: FAIL + + [Property background-position value '50% 6px'] + expected: FAIL + + [Property background-attachment value 'scroll, fixed'] + expected: FAIL + + [Property background-origin value 'content-box, border-box'] + expected: FAIL + + [Property background-size value 'contain'] + expected: FAIL + + [Property background-attachment value 'local'] + expected: FAIL + + [Property background-attachment value 'local, fixed, scroll, fixed'] + expected: FAIL + + [Property background-position-y value 'calc(10px - 0.5em), -20%, bottom, 15%'] + expected: FAIL + + [Property background-repeat value 'round'] + expected: FAIL + + [Property background-position-x value '0.5em'] + expected: FAIL + + [Property background-size value 'auto 1px, 2% 3%, contain, 7px 8px'] + expected: FAIL + + [Property background-size value 'auto 1px, 2% 3%'] + expected: FAIL + + [Property background-position value '12px 13px, 50% 6px'] + expected: FAIL + + [Property background-position-x value '-20%, 10px'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-origin-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-origin-computed.html.ini index 4a015c2ccb9..a2a8b8df621 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-origin-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-origin-computed.html.ini @@ -2,3 +2,6 @@ [Property background-origin value 'border-box, padding-box, content-box' computes to 'border-box'] expected: FAIL + [Property background-origin value 'border-box, padding-box, content-box'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-computed.html.ini index 360feb221db..85664759844 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-computed.html.ini @@ -86,3 +86,90 @@ [Property background-position value 'calc(10px - 0.5em) calc(10px + 0.5em)' computes to '-10px 30px'] expected: FAIL + [Property background-position value 'center left'] + expected: FAIL + + [Property background-position value 'center right 7%'] + expected: FAIL + + [Property background-position value '12px 13px, 50% 6px, 30px -10px'] + expected: FAIL + + [Property background-position value 'bottom'] + expected: FAIL + + [Property background-position value 'right 11% bottom'] + expected: FAIL + + [Property background-position value 'right 9%'] + expected: FAIL + + [Property background-position value 'bottom 16% left'] + expected: FAIL + + [Property background-position value '5% top'] + expected: FAIL + + [Property background-position value 'left'] + expected: FAIL + + [Property background-position value '-2% -3%'] + expected: FAIL + + [Property background-position value 'calc(10px + 0.5em) calc(10px - 0.5em)'] + expected: FAIL + + [Property background-position value 'center 6px'] + expected: FAIL + + [Property background-position value 'center center'] + expected: FAIL + + [Property background-position value 'left bottom'] + expected: FAIL + + [Property background-position value 'right top 14%'] + expected: FAIL + + [Property background-position value 'left 10px center'] + expected: FAIL + + [Property background-position value 'bottom center'] + expected: FAIL + + [Property background-position value 'left 12px top 13px'] + expected: FAIL + + [Property background-position value 'right center'] + expected: FAIL + + [Property background-position value 'center'] + expected: FAIL + + [Property background-position value 'center top 8px'] + expected: FAIL + + [Property background-position value '1px center'] + expected: FAIL + + [Property background-position value 'bottom right 19%'] + expected: FAIL + + [Property background-position value 'calc(10px - 0.5em) calc(10px + 0.5em)'] + expected: FAIL + + [Property background-position value 'top 15px center'] + expected: FAIL + + [Property background-position value '1px'] + expected: FAIL + + [Property background-position value 'top 17px right -18px'] + expected: FAIL + + [Property background-position value 'top left'] + expected: FAIL + + [Property background-position value 'center bottom'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-x-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-x-computed.html.ini index 774732efcbd..dc222895fe2 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-x-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-x-computed.html.ini @@ -32,3 +32,24 @@ [Property background-position-x value '0.5em, x-start, x-end' computes to '20px'] expected: FAIL + [Property background-position-x value 'calc(10px - 0.5em), left -20%, right 10px'] + expected: FAIL + + [Property background-position-x value 'center, left, right'] + expected: FAIL + + [Property background-position-x value '0.5em, x-start, x-end'] + expected: FAIL + + [Property background-position-x value 'x-end'] + expected: FAIL + + [Property background-position-x value 'x-start'] + expected: FAIL + + [Property background-position-x value 'calc(10px - 0.5em), -20%, 10px'] + expected: FAIL + + [Property background-position-x value '-20%, 10px'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-y-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-y-computed.html.ini index cd34047f7ad..591ba3f32c3 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-y-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-position-y-computed.html.ini @@ -32,3 +32,24 @@ [Property background-position-y value 'calc(10px - 0.5em), -20%, 10px' computes to '-10px'] expected: FAIL + [Property background-position-y value 'y-end'] + expected: FAIL + + [Property background-position-y value '0.5em, y-start, y-end'] + expected: FAIL + + [Property background-position-y value 'calc(10px - 0.5em), top -20%, bottom 10px'] + expected: FAIL + + [Property background-position-y value 'y-start'] + expected: FAIL + + [Property background-position-y value 'calc(10px - 0.5em), -20%, 10px'] + expected: FAIL + + [Property background-position-y value '-20%, 10px'] + expected: FAIL + + [Property background-position-y value 'center, top, bottom'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-repeat-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-repeat-computed.html.ini index 9868193e4e3..ee19764bded 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-repeat-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-repeat-computed.html.ini @@ -2,3 +2,6 @@ [Property background-repeat value 'repeat-x, repeat-y, repeat' computes to 'repeat-x'] expected: FAIL + [Property background-repeat value 'repeat-x, repeat-y, repeat'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/background-size-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/background-size-computed.html.ini index ede3103de7a..5a6bde56052 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/background-size-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/background-size-computed.html.ini @@ -1,3 +1,7 @@ [background-size-computed.html] [Property background-size value 'auto 1px, 2% 3%, contain' computes to 'auto 1px'] expected: FAIL + + [Property background-size value 'auto 1px, 2% 3%, contain'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/border-color-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/border-color-computed.html.ini index 4fd1a9683e4..c56e81b8669 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/border-color-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/border-color-computed.html.ini @@ -11,3 +11,15 @@ [Property border-color value 'red yellow green blue' computes to 'rgb(255, 0, 0) rgb(255, 255, 0) rgb(0, 128, 0) rgb(0, 0, 255)'] expected: FAIL + [Property border-color value 'red yellow currentcolor'] + expected: FAIL + + [Property border-color value 'red yellow'] + expected: FAIL + + [Property border-color value 'red yellow green blue'] + expected: FAIL + + [Property border-color value 'currentcolor'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/border-image-source-computed.sub.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/border-image-source-computed.sub.html.ini index 7ffe55ac942..19f4337a212 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/border-image-source-computed.sub.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/border-image-source-computed.sub.html.ini @@ -2,3 +2,6 @@ [Property border-image-source value 'conic-gradient(from 90deg at 80% 90%, lime, black)' computes to 'conic-gradient(from 90deg at 80% 90%, rgb(0, 255, 0), rgb(0, 0, 0))'] expected: FAIL + [Property border-image-source value 'conic-gradient(from 90deg at 80% 90%, lime, black)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/border-radius-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/border-radius-computed.html.ini index 913f868a0eb..7b3c38d8496 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/border-radius-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/border-radius-computed.html.ini @@ -26,3 +26,30 @@ [Property border-radius value '1px 2% 2% 2% / 1px 2% 3px 2%' computes to '1px 2% 2% / 1px 2% 3px'] expected: FAIL + [Property border-radius value '1px 2% 1px 1px'] + expected: FAIL + + [Property border-radius value '1px 1px 2% 2%'] + expected: FAIL + + [Property border-radius value '1px 2% 3px 4%'] + expected: FAIL + + [Property border-radius value '1px 1px 1px 1px / 1px 1px 2% 1px'] + expected: FAIL + + [Property border-radius value '5em / 1px 2% 3px 4%'] + expected: FAIL + + [Property border-radius value '1px 1px 1px 2% / 1px 2% 1px 2%'] + expected: FAIL + + [Property border-radius value '1px 2% 3px 4% / 5em'] + expected: FAIL + + [Property border-radius value '1px 2% 2% 2% / 1px 2% 3px 2%'] + expected: FAIL + + [Property border-radius value '1px'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/border-style-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/border-style-computed.html.ini index f7eb5184b12..2a6fb0cb85e 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/border-style-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/border-style-computed.html.ini @@ -11,3 +11,15 @@ [Property border-style value 'solid double groove ridge' computes to 'solid double groove ridge'] expected: FAIL + [Property border-style value 'hidden dotted dashed'] + expected: FAIL + + [Property border-style value 'inset outset'] + expected: FAIL + + [Property border-style value 'solid double groove ridge'] + expected: FAIL + + [Property border-style value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-backgrounds/parsing/border-width-computed.html.ini b/tests/wpt/metadata/css/css-backgrounds/parsing/border-width-computed.html.ini index ff24d33e8b7..2155e7a8526 100644 --- a/tests/wpt/metadata/css/css-backgrounds/parsing/border-width-computed.html.ini +++ b/tests/wpt/metadata/css/css-backgrounds/parsing/border-width-computed.html.ini @@ -17,3 +17,21 @@ [Property border-width value '2px thin medium thick' computes to '2px 1px 3px 5px'] expected: FAIL + [Property border-width value '1px 2px'] + expected: FAIL + + [Property border-width value '1px 2px 3px 4px'] + expected: FAIL + + [Property border-width value '1px 2px 3px'] + expected: FAIL + + [Property border-width value '2px thin medium thick'] + expected: FAIL + + [Property border-width value '1px'] + expected: FAIL + + [Property border-width value '0.5em'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-flexbox/parsing/flex-computed.html.ini b/tests/wpt/metadata/css/css-flexbox/parsing/flex-computed.html.ini index a4ef36ffacf..27480998a87 100644 --- a/tests/wpt/metadata/css/css-flexbox/parsing/flex-computed.html.ini +++ b/tests/wpt/metadata/css/css-flexbox/parsing/flex-computed.html.ini @@ -23,3 +23,27 @@ [Property flex value '2 3' computes to '2 3 0%'] expected: FAIL + [Property flex value '8 auto'] + expected: FAIL + + [Property flex value '7% 8'] + expected: FAIL + + [Property flex value 'calc(10px + 0.5em)'] + expected: FAIL + + [Property flex value '1'] + expected: FAIL + + [Property flex value '4 5 6px'] + expected: FAIL + + [Property flex value '2 3'] + expected: FAIL + + [Property flex value 'calc(10px - 0.5em)'] + expected: FAIL + + [Property flex value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-flexbox/parsing/flex-flow-computed.html.ini b/tests/wpt/metadata/css/css-flexbox/parsing/flex-flow-computed.html.ini index 527777e42df..e78684d9220 100644 --- a/tests/wpt/metadata/css/css-flexbox/parsing/flex-flow-computed.html.ini +++ b/tests/wpt/metadata/css/css-flexbox/parsing/flex-flow-computed.html.ini @@ -5,3 +5,9 @@ [Property flex-flow value 'row-reverse wrap' computes to 'row-reverse wrap'] expected: FAIL + [Property flex-flow value 'column wrap-reverse'] + expected: FAIL + + [Property flex-flow value 'row-reverse wrap'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-flexbox/parsing/flex-grow-computed.html.ini b/tests/wpt/metadata/css/css-flexbox/parsing/flex-grow-computed.html.ini index e981a2b47d1..cf980a5f29a 100644 --- a/tests/wpt/metadata/css/css-flexbox/parsing/flex-grow-computed.html.ini +++ b/tests/wpt/metadata/css/css-flexbox/parsing/flex-grow-computed.html.ini @@ -5,3 +5,9 @@ [Property flex-grow value '2.34e+06' computes to '2.34e+06'] expected: FAIL + [Property flex-grow value '2.34e+06'] + expected: FAIL + + [Property flex-grow value '6.78e+08'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-flexbox/parsing/flex-shrink-computed.html.ini b/tests/wpt/metadata/css/css-flexbox/parsing/flex-shrink-computed.html.ini index 167953230f3..64b00ffa14e 100644 --- a/tests/wpt/metadata/css/css-flexbox/parsing/flex-shrink-computed.html.ini +++ b/tests/wpt/metadata/css/css-flexbox/parsing/flex-shrink-computed.html.ini @@ -5,3 +5,9 @@ [Property flex-shrink value '6.78e+08' computes to '6.78e+08'] expected: FAIL + [Property flex-shrink value '2.34e+06'] + expected: FAIL + + [Property flex-shrink value '6.78e+08'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-computed.html.ini index 4d97e8212a8..943a91f0970 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-computed.html.ini @@ -1871,3 +1871,930 @@ [Property font value '100 italic semi-condensed small-caps xx-large/1.2 fantasy' computes to 'italic small-caps 100 semi-condensed 32px / 1.2 fantasy'] expected: FAIL + [Property font value 'normal 100 normal ultra-expanded 20%/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps bolder normal italic xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'italic small-caps bolder 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic small-caps lighter normal 20%/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps lighter semi-condensed normal xx-small fantasy'] + expected: FAIL + + [Property font value 'normal lighter normal small-caps 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value '100 italic xx-small serif'] + expected: FAIL + + [Property font value 'normal lighter condensed calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'small-caps italic bold normal xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value 'italic 900 ultra-expanded normal smaller serif'] + expected: FAIL + + [Property font value 'normal italic small-caps bold 10px/normal cursive'] + expected: FAIL + + [Property font value 'normal italic lighter normal xx-small Menu'] + expected: FAIL + + [Property font value 'normal small-caps normal xx-small "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value '900 normal semi-condensed smaller fantasy'] + expected: FAIL + + [Property font value '900 italic normal medium/normal sans-serif'] + expected: FAIL + + [Property font value 'bold italic small-caps ultra-condensed calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'normal normal ultra-condensed 100 smaller serif'] + expected: FAIL + + [Property font value 'italic normal normal small-caps medium/normal serif'] + expected: FAIL + + [Property font value 'normal bold italic normal xx-small cursive'] + expected: FAIL + + [Property font value 'bolder normal italic smaller cursive'] + expected: FAIL + + [Property font value 'small-caps italic ultra-expanded lighter 20%/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps normal italic xx-small "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal normal small-caps italic xx-small cursive'] + expected: FAIL + + [Property font value 'italic bold larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value '900 normal normal small-caps xx-large/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps normal italic normal medium/normal serif'] + expected: FAIL + + [Property font value 'italic small-caps semi-condensed 900 xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'normal semi-condensed small-caps 100 xx-small Menu'] + expected: FAIL + + [Property font value 'normal normal italic normal xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value 'italic normal small-caps normal 10px/normal monospace'] + expected: FAIL + + [Property font value 'normal italic ultra-expanded bold 20%/1.2 monospace'] + expected: FAIL + + [Property font value 'italic ultra-condensed small-caps lighter 10px/normal cursive'] + expected: FAIL + + [Property font value 'normal 900 small-caps normal smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value '900 10px/normal cursive'] + expected: FAIL + + [Property font value 'ultra-expanded normal small-caps smaller cursive'] + expected: FAIL + + [Property font value 'italic small-caps normal medium/normal cursive'] + expected: FAIL + + [Property font value 'normal extra-condensed normal italic 20%/1.2 cursive'] + expected: FAIL + + [Property font value 'bolder normal expanded italic 20%/1.2 Menu'] + expected: FAIL + + [Property font value 'normal normal small-caps condensed xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'italic small-caps xx-small sans-serif'] + expected: FAIL + + [Property font value 'normal normal normal small-caps 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal normal italic small-caps larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'small-caps 100 italic smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal expanded italic normal xx-large/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal 100 medium/normal cursive'] + expected: FAIL + + [Property font value 'normal normal 900 normal smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic normal semi-condensed smaller monospace'] + expected: FAIL + + [Property font value 'small-caps normal xx-large/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps extra-expanded normal larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'expanded normal italic small-caps xx-large/1.2 serif'] + expected: FAIL + + [Property font value 'normal normal ultra-expanded small-caps larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic bold small-caps xx-small fantasy'] + expected: FAIL + + [Property font value 'italic 100 extra-expanded larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'lighter normal small-caps italic xx-large/1.2 sans-serif'] + expected: FAIL + + [Property font value 'small-caps bold italic extra-condensed 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'ultra-condensed italic normal 10px/normal monospace'] + expected: FAIL + + [Property font value 'normal normal normal normal smaller monospace'] + expected: FAIL + + [Property font value 'italic condensed normal calc(30% - 40px)/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'small-caps normal ultra-condensed normal medium/normal sans-serif'] + expected: FAIL + + [Property font value 'small-caps ultra-condensed normal italic 10px/normal sans-serif'] + expected: FAIL + + [Property font value 'ultra-expanded 100 small-caps italic smaller serif'] + expected: FAIL + + [Property font value 'normal small-caps normal normal medium/normal serif'] + expected: FAIL + + [Property font value 'italic small-caps extra-condensed xx-small cursive'] + expected: FAIL + + [Property font value 'bolder italic extra-condensed xx-small sans-serif'] + expected: FAIL + + [Property font value 'ultra-condensed bolder normal italic 10px/normal serif'] + expected: FAIL + + [Property font value 'normal italic small-caps condensed 20%/1.2 fantasy'] + expected: FAIL + + [Property font value 'normal small-caps italic lighter calc(30% - 40px)/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal small-caps semi-condensed 10px/normal Menu'] + expected: FAIL + + [Property font value '100 italic small-caps 10px/normal Menu'] + expected: FAIL + + [Property font value 'expanded 100 xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'normal normal normal ultra-condensed xx-small sans-serif'] + expected: FAIL + + [Property font value 'small-caps normal condensed lighter larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'small-caps italic normal normal 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'bold normal 20%/1.2 fantasy'] + expected: FAIL + + [Property font value 'small-caps normal normal larger/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'bolder condensed normal calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'italic normal extra-expanded 900 calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'extra-expanded normal normal larger/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'normal italic 100 small-caps medium/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal italic extra-expanded small-caps 10px/normal fantasy'] + expected: FAIL + + [Property font value 'extra-condensed small-caps italic 900 20%/1.2 serif'] + expected: FAIL + + [Property font value 'italic extra-condensed 20%/1.2 cursive'] + expected: FAIL + + [Property font value 'condensed small-caps bold calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'extra-expanded small-caps normal 100 larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'normal italic small-caps larger/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value '100 normal normal italic medium/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal normal small-caps lighter medium/normal fantasy'] + expected: FAIL + + [Property font value 'italic lighter small-caps expanded xx-large/1.2 Menu'] + expected: FAIL + + [Property font value 'small-caps italic normal semi-condensed xx-small sans-serif'] + expected: FAIL + + [Property font value 'normal normal small-caps 20%/1.2 serif'] + expected: FAIL + + [Property font value 'extra-expanded lighter small-caps normal larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal small-caps italic extra-condensed xx-small serif'] + expected: FAIL + + [Property font value 'normal small-caps 100 medium/normal sans-serif'] + expected: FAIL + + [Property font value 'normal italic normal extra-condensed xx-large/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal normal italic medium/normal cursive'] + expected: FAIL + + [Property font value 'semi-condensed normal italic xx-small Menu'] + expected: FAIL + + [Property font value 'italic semi-expanded normal small-caps medium/normal Menu'] + expected: FAIL + + [Property font value 'ultra-condensed normal small-caps normal 10px/normal fantasy'] + expected: FAIL + + [Property font value 'semi-expanded normal italic normal medium/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'bold small-caps normal smaller Menu'] + expected: FAIL + + [Property font value '100 normal italic small-caps 20%/1.2 monospace'] + expected: FAIL + + [Property font value 'italic normal bold xx-small serif'] + expected: FAIL + + [Property font value 'normal small-caps expanded italic calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'italic 100 normal small-caps 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'normal bolder normal italic smaller Menu'] + expected: FAIL + + [Property font value 'italic normal normal calc(30% - 40px)/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'normal semi-condensed normal bolder xx-small monospace'] + expected: FAIL + + [Property font value '900 expanded normal small-caps xx-large/1.2 Menu'] + expected: FAIL + + [Property font value 'bold normal small-caps xx-small "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'semi-expanded small-caps lighter italic medium/normal fantasy'] + expected: FAIL + + [Property font value 'lighter normal normal normal xx-small Menu'] + expected: FAIL + + [Property font value 'small-caps normal 900 normal 10px/normal monospace'] + expected: FAIL + + [Property font value 'condensed italic normal small-caps calc(30% - 40px)/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal italic normal 900 medium/normal Menu'] + expected: FAIL + + [Property font value 'small-caps extra-condensed normal 900 20%/1.2 cursive'] + expected: FAIL + + [Property font value 'normal small-caps italic 10px/normal monospace'] + expected: FAIL + + [Property font value 'normal small-caps normal ultra-condensed smaller fantasy'] + expected: FAIL + + [Property font value 'extra-condensed italic lighter small-caps 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal ultra-condensed small-caps 10px/normal cursive'] + expected: FAIL + + [Property font value 'italic normal 20%/1.2 monospace'] + expected: FAIL + + [Property font value 'lighter normal italic normal 10px/normal fantasy'] + expected: FAIL + + [Property font value '100 semi-expanded normal italic medium/normal monospace'] + expected: FAIL + + [Property font value 'small-caps normal bold italic 20%/1.2 Menu'] + expected: FAIL + + [Property font value '900 italic small-caps normal 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic condensed 900 normal calc(30% - 40px)/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'semi-expanded medium/normal Menu'] + expected: FAIL + + [Property font value 'normal small-caps italic normal 20%/1.2 Menu'] + expected: FAIL + + [Property font value 'normal 900 italic calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'italic extra-expanded small-caps larger/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'small-caps bold normal normal medium/normal fantasy'] + expected: FAIL + + [Property font value 'italic 10px/normal fantasy'] + expected: FAIL + + [Property font value 'italic normal lighter small-caps xx-large/1.2 cursive'] + expected: FAIL + + [Property font value '900 condensed small-caps normal calc(30% - 40px)/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'normal small-caps calc(30% - 40px)/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'normal 100 small-caps larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'bold small-caps italic normal medium/normal fantasy'] + expected: FAIL + + [Property font value 'small-caps normal normal normal smaller cursive'] + expected: FAIL + + [Property font value 'condensed 100 italic calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'bolder small-caps normal normal 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic normal semi-expanded normal 10px/normal Menu'] + expected: FAIL + + [Property font value 'normal normal normal larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'italic bold ultra-condensed small-caps 10px/normal sans-serif'] + expected: FAIL + + [Property font value '100 normal small-caps condensed larger/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'extra-condensed italic normal normal 20%/1.2 Menu'] + expected: FAIL + + [Property font value 'normal italic normal normal calc(30% - 40px)/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'semi-condensed italic normal 100 xx-small serif'] + expected: FAIL + + [Property font value 'ultra-condensed italic bolder normal 10px/normal Menu'] + expected: FAIL + + [Property font value 'small-caps condensed italic calc(30% - 40px)/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'extra-condensed normal normal small-caps 20%/1.2 fantasy'] + expected: FAIL + + [Property font value 'condensed normal normal bolder calc(30% - 40px)/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'extra-expanded normal italic lighter larger/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'ultra-expanded normal normal normal smaller sans-serif'] + expected: FAIL + + [Property font value 'italic normal normal normal xx-small "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'small-caps 100 calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'small-caps italic normal 10px/normal Menu'] + expected: FAIL + + [Property font value 'italic semi-condensed bold small-caps xx-small Menu'] + expected: FAIL + + [Property font value 'small-caps italic expanded smaller Menu'] + expected: FAIL + + [Property font value 'semi-condensed normal 900 xx-small "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal italic 900 semi-condensed xx-large/1.2 serif'] + expected: FAIL + + [Property font value 'small-caps italic smaller monospace'] + expected: FAIL + + [Property font value 'bolder normal normal calc(30% - 40px)/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'normal extra-condensed small-caps normal 20%/1.2 fantasy'] + expected: FAIL + + [Property font value 'italic semi-condensed normal normal xx-small monospace'] + expected: FAIL + + [Property font value 'bolder normal small-caps normal medium/normal serif'] + expected: FAIL + + [Property font value 'bold extra-condensed 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'lighter small-caps extra-expanded larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'normal extra-expanded bolder italic larger/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'small-caps 900 italic normal 10px/normal serif'] + expected: FAIL + + [Property font value 'italic small-caps normal normal xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value 'italic small-caps 100 ultra-condensed calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'normal small-caps normal italic xx-large/1.2 sans-serif'] + expected: FAIL + + [Property font value 'italic small-caps condensed normal medium/normal fantasy'] + expected: FAIL + + [Property font value 'ultra-expanded italic smaller fantasy'] + expected: FAIL + + [Property font value 'normal bolder small-caps extra-condensed 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'normal normal lighter semi-condensed calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'normal normal small-caps normal calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'semi-expanded italic small-caps medium/normal sans-serif'] + expected: FAIL + + [Property font value 'normal normal italic extra-condensed 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal bold normal normal larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'ultra-condensed small-caps italic normal 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'semi-condensed 900 italic normal xx-small fantasy'] + expected: FAIL + + [Property font value 'normal normal normal bold calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'normal lighter italic ultra-condensed xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'small-caps lighter normal ultra-condensed larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'normal bold small-caps italic 10px/normal serif'] + expected: FAIL + + [Property font value 'condensed normal small-caps 100 calc(30% - 40px)/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'normal normal bolder small-caps 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'normal extra-expanded larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'extra-expanded italic small-caps 900 larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'normal medium/normal sans-serif'] + expected: FAIL + + [Property font value 'normal normal expanded normal medium/normal monospace'] + expected: FAIL + + [Property font value 'lighter italic condensed normal medium/normal cursive'] + expected: FAIL + + [Property font value 'small-caps semi-condensed italic normal xx-small monospace'] + expected: FAIL + + [Property font value 'semi-condensed small-caps normal xx-small sans-serif'] + expected: FAIL + + [Property font value 'italic small-caps normal ultra-expanded smaller Menu'] + expected: FAIL + + [Property font value 'italic 900 normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'bold semi-condensed small-caps italic xx-small monospace'] + expected: FAIL + + [Property font value 'normal normal semi-expanded xx-small fantasy'] + expected: FAIL + + [Property font value '900 small-caps larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'italic expanded normal bolder xx-large/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'expanded bolder small-caps xx-large/1.2 Menu'] + expected: FAIL + + [Property font value 'normal normal normal italic 10px/normal Menu'] + expected: FAIL + + [Property font value 'normal italic small-caps normal smaller sans-serif'] + expected: FAIL + + [Property font value 'italic normal small-caps extra-condensed calc(30% - 40px)/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic normal 100 condensed larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'semi-expanded normal bold normal medium/normal serif'] + expected: FAIL + + [Property font value '100 italic semi-condensed small-caps xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value 'extra-expanded 900 normal larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'italic normal bolder normal medium/normal sans-serif'] + expected: FAIL + + [Property font value 'italic normal expanded small-caps 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal italic expanded normal smaller cursive'] + expected: FAIL + + [Property font value 'small-caps 900 normal xx-small cursive'] + expected: FAIL + + [Property font value 'expanded small-caps normal italic xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value '900 small-caps ultra-condensed italic 10px/normal serif'] + expected: FAIL + + [Property font value 'normal small-caps 900 normal xx-large/1.2 cursive'] + expected: FAIL + + [Property font value 'italic normal normal ultra-condensed larger/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'normal 100 semi-condensed normal xx-small fantasy'] + expected: FAIL + + [Property font value 'xx-small serif'] + expected: FAIL + + [Property font value 'italic lighter normal normal 10px/normal serif'] + expected: FAIL + + [Property font value 'normal normal bold italic 10px/normal serif'] + expected: FAIL + + [Property font value 'normal ultra-expanded normal smaller serif'] + expected: FAIL + + [Property font value 'small-caps normal 100 smaller fantasy'] + expected: FAIL + + [Property font value 'extra-condensed lighter normal small-caps 20%/1.2 sans-serif'] + expected: FAIL + + [Property font value 'small-caps italic normal 100 calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'normal normal extra-expanded italic xx-large/1.2 Menu'] + expected: FAIL + + [Property font value 'small-caps normal ultra-expanded xx-small serif'] + expected: FAIL + + [Property font value 'ultra-expanded bold normal normal smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'small-caps ultra-expanded 100 italic smaller sans-serif'] + expected: FAIL + + [Property font value 'lighter semi-condensed normal normal xx-small fantasy'] + expected: FAIL + + [Property font value 'expanded italic small-caps normal xx-large/1.2 cursive'] + expected: FAIL + + [Property font value 'small-caps normal normal italic 10px/normal fantasy'] + expected: FAIL + + [Property font value 'normal italic normal small-caps xx-small monospace'] + expected: FAIL + + [Property font value 'lighter ultra-condensed italic small-caps 10px/normal sans-serif'] + expected: FAIL + + [Property font value 'condensed small-caps calc(30% - 40px)/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'small-caps semi-expanded italic bold medium/normal Menu'] + expected: FAIL + + [Property font value 'bolder small-caps italic expanded xx-large/1.2 monospace'] + expected: FAIL + + [Property font value 'bolder ultra-expanded italic normal smaller serif'] + expected: FAIL + + [Property font value 'small-caps italic extra-expanded normal 10px/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal ultra-condensed normal normal 10px/normal sans-serif'] + expected: FAIL + + [Property font value 'small-caps normal italic expanded larger/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'normal bolder italic small-caps medium/normal fantasy'] + expected: FAIL + + [Property font value '100 small-caps ultra-expanded normal smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'bold extra-expanded italic larger/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal ultra-expanded lighter small-caps smaller cursive'] + expected: FAIL + + [Property font value 'italic small-caps normal bold larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'italic extra-condensed 100 20%/1.2 fantasy'] + expected: FAIL + + [Property font value 'normal bold expanded small-caps xx-large/1.2 Menu'] + expected: FAIL + + [Property font value 'italic normal small-caps smaller fantasy'] + expected: FAIL + + [Property font value 'italic bolder small-caps normal medium/normal monospace'] + expected: FAIL + + [Property font value 'normal italic bolder calc(30% - 40px)/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'normal italic semi-expanded larger/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'semi-expanded bold italic small-caps medium/normal monospace'] + expected: FAIL + + [Property font value 'small-caps normal normal bolder 20%/1.2 monospace'] + expected: FAIL + + [Property font value 'normal small-caps bolder condensed smaller monospace'] + expected: FAIL + + [Property font value 'ultra-expanded italic bold smaller monospace'] + expected: FAIL + + [Property font value 'lighter small-caps normal italic 20%/1.2 serif'] + expected: FAIL + + [Property font value 'extra-condensed normal small-caps italic 20%/1.2 monospace'] + expected: FAIL + + [Property font value 'normal normal italic bolder smaller Menu'] + expected: FAIL + + [Property font value 'small-caps normal extra-condensed italic xx-large/1.2 cursive'] + expected: FAIL + + [Property font value 'normal italic 10px/normal sans-serif'] + expected: FAIL + + [Property font value 'small-caps extra-expanded lighter normal larger/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'lighter normal extra-expanded small-caps calc(30% - 40px)/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal ultra-expanded italic lighter smaller sans-serif'] + expected: FAIL + + [Property font value 'extra-expanded normal lighter small-caps larger/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'ultra-condensed normal normal italic 10px/normal cursive'] + expected: FAIL + + [Property font value 'small-caps bolder condensed calc(30% - 40px)/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'bold italic normal normal xx-large/1.2 cursive'] + expected: FAIL + + [Property font value '100 small-caps normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'italic normal small-caps 900 20%/1.2 Menu'] + expected: FAIL + + [Property font value 'small-caps expanded bolder xx-large/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'small-caps ultra-expanded normal normal smaller serif'] + expected: FAIL + + [Property font value 'normal normal 100 larger/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'italic ultra-expanded small-caps normal smaller sans-serif'] + expected: FAIL + + [Property font value 'normal semi-expanded 900 medium/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal small-caps extra-expanded lighter xx-small sans-serif'] + expected: FAIL + + [Property font value 'normal expanded bold normal xx-large/1.2 serif'] + expected: FAIL + + [Property font value 'ultra-expanded small-caps italic smaller Menu'] + expected: FAIL + + [Property font value 'normal small-caps bold italic larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'bold normal normal ultra-condensed larger/calc(120% + 1.2em) sans-serif'] + expected: FAIL + + [Property font value 'normal small-caps semi-expanded normal 20%/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'italic bolder normal smaller "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'expanded normal xx-large/1.2 "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'expanded normal bolder italic xx-large/1.2 sans-serif'] + expected: FAIL + + [Property font value 'bold normal semi-expanded normal 10px/normal monospace'] + expected: FAIL + + [Property font value 'normal italic normal 20%/1.2 cursive'] + expected: FAIL + + [Property font value 'normal 900 semi-expanded italic medium/normal monospace'] + expected: FAIL + + [Property font value 'normal condensed normal small-caps calc(30% - 40px)/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'small-caps medium/normal "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'semi-expanded small-caps normal normal medium/normal cursive'] + expected: FAIL + + [Property font value 'bolder italic normal small-caps larger/calc(120% + 1.2em) fantasy'] + expected: FAIL + + [Property font value 'normal extra-expanded italic small-caps larger/calc(120% + 1.2em) serif'] + expected: FAIL + + [Property font value 'small-caps 100 semi-expanded italic medium/normal monospace'] + expected: FAIL + + [Property font value '900 normal italic extra-condensed calc(30% - 40px)/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'small-caps italic bolder semi-expanded larger/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'normal condensed small-caps italic calc(30% - 40px)/calc(120% + 1.2em) monospace'] + expected: FAIL + + [Property font value 'small-caps italic 900 medium/normal cursive'] + expected: FAIL + + [Property font value '100 extra-condensed small-caps 20%/1.2 cursive'] + expected: FAIL + + [Property font value 'normal semi-expanded italic medium/normal Menu'] + expected: FAIL + + [Property font value '900 small-caps italic xx-small cursive'] + expected: FAIL + + [Property font value 'normal 900 normal xx-large/1.2 fantasy'] + expected: FAIL + + [Property font value 'lighter italic normal ultra-expanded smaller monospace'] + expected: FAIL + + [Property font value 'small-caps normal italic lighter xx-large/1.2 sans-serif'] + expected: FAIL + + [Property font value 'semi-condensed small-caps bolder normal xx-small cursive'] + expected: FAIL + + [Property font value 'small-caps normal normal semi-expanded calc(30% - 40px)/calc(120% + 1.2em) Menu'] + expected: FAIL + + [Property font value 'italic normal normal 100 xx-large/1.2 sans-serif'] + expected: FAIL + + [Property font value 'normal small-caps normal bolder larger/calc(120% + 1.2em) cursive'] + expected: FAIL + + [Property font value 'small-caps normal bolder extra-expanded calc(30% - 40px)/calc(120% + 1.2em) "Non-Generic Example Family Name"'] + expected: FAIL + + [Property font value 'normal normal xx-large/1.2 cursive'] + expected: FAIL + + [Property font value 'small-caps expanded xx-large/1.2 Menu'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-feature-settings-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-feature-settings-computed.html.ini index 1148fa32756..eba51b4fc57 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-feature-settings-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-feature-settings-computed.html.ini @@ -23,3 +23,27 @@ [Property font-feature-settings value '"dlig", "smcp", "dlig" 0' computes to '"dlig", "smcp", "dlig" 0'] expected: FAIL + [Property font-feature-settings value '"liga" 0'] + expected: FAIL + + [Property font-feature-settings value '"smcp"'] + expected: FAIL + + [Property font-feature-settings value '"PKRN"'] + expected: FAIL + + [Property font-feature-settings value '"dlig"'] + expected: FAIL + + [Property font-feature-settings value '"c2sc"'] + expected: FAIL + + [Property font-feature-settings value '"tnum", "hist"'] + expected: FAIL + + [Property font-feature-settings value 'normal'] + expected: FAIL + + [Property font-feature-settings value '"dlig", "smcp", "dlig" 0'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-kerning-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-kerning-computed.html.ini index 211838e7cd9..271696393dd 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-kerning-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-kerning-computed.html.ini @@ -8,3 +8,12 @@ [Property font-kerning value 'auto' computes to 'auto'] expected: FAIL + [Property font-kerning value 'none'] + expected: FAIL + + [Property font-kerning value 'auto'] + expected: FAIL + + [Property font-kerning value 'normal'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-language-override-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-language-override-computed.html.ini index fcfff00336d..a2ee8c7b6b4 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-language-override-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-language-override-computed.html.ini @@ -5,3 +5,9 @@ [Property font-language-override value 'normal' computes to 'normal'] expected: FAIL + [Property font-language-override value 'normal'] + expected: FAIL + + [Property font-language-override value '"ksw"'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-optical-sizing-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-optical-sizing-computed.html.ini index 484fb8b1c17..7d95f3eaac5 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-optical-sizing-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-optical-sizing-computed.html.ini @@ -5,3 +5,9 @@ [Property font-optical-sizing value 'auto' computes to 'auto'] expected: FAIL + [Property font-optical-sizing value 'auto'] + expected: FAIL + + [Property font-optical-sizing value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-size-adjust-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-size-adjust-computed.html.ini index dba0bd0bcc9..0e1a6062034 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-size-adjust-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-size-adjust-computed.html.ini @@ -5,3 +5,9 @@ [Property font-size-adjust value '0.5' computes to '0.5'] expected: FAIL + [Property font-size-adjust value 'none'] + expected: FAIL + + [Property font-size-adjust value '0.5'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-synthesis-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-synthesis-computed.html.ini index 8ad737926c9..16d9c01f11a 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-synthesis-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-synthesis-computed.html.ini @@ -11,3 +11,15 @@ [Property font-synthesis value 'none' computes to 'none'] expected: FAIL + [Property font-synthesis value 'style'] + expected: FAIL + + [Property font-synthesis value 'weight'] + expected: FAIL + + [Property font-synthesis value 'weight style'] + expected: FAIL + + [Property font-synthesis value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-caps-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-caps-computed.html.ini index cbc02f7cb8e..b6d18476954 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-caps-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-caps-computed.html.ini @@ -14,3 +14,18 @@ [Property font-variant-caps value 'petite-caps' computes to 'petite-caps'] expected: FAIL + [Property font-variant-caps value 'all-small-caps'] + expected: FAIL + + [Property font-variant-caps value 'titling-caps'] + expected: FAIL + + [Property font-variant-caps value 'petite-caps'] + expected: FAIL + + [Property font-variant-caps value 'all-petite-caps'] + expected: FAIL + + [Property font-variant-caps value 'unicase'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-east-asian-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-east-asian-computed.html.ini index b9cf050a1a3..1329ea5052f 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-east-asian-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-east-asian-computed.html.ini @@ -35,3 +35,39 @@ [Property font-variant-east-asian value 'traditional' computes to 'traditional'] expected: FAIL + [Property font-variant-east-asian value 'jis78 proportional-width'] + expected: FAIL + + [Property font-variant-east-asian value 'simplified'] + expected: FAIL + + [Property font-variant-east-asian value 'proportional-width'] + expected: FAIL + + [Property font-variant-east-asian value 'simplified full-width ruby'] + expected: FAIL + + [Property font-variant-east-asian value 'ruby'] + expected: FAIL + + [Property font-variant-east-asian value 'normal'] + expected: FAIL + + [Property font-variant-east-asian value 'jis78'] + expected: FAIL + + [Property font-variant-east-asian value 'jis83'] + expected: FAIL + + [Property font-variant-east-asian value 'full-width'] + expected: FAIL + + [Property font-variant-east-asian value 'jis04'] + expected: FAIL + + [Property font-variant-east-asian value 'traditional'] + expected: FAIL + + [Property font-variant-east-asian value 'jis90'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-ligatures-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-ligatures-computed.html.ini index aa3ef8279aa..c8ec81b8edb 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-ligatures-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-ligatures-computed.html.ini @@ -29,3 +29,33 @@ [Property font-variant-ligatures value 'no-contextual' computes to 'no-contextual'] expected: FAIL + [Property font-variant-ligatures value 'discretionary-ligatures'] + expected: FAIL + + [Property font-variant-ligatures value 'historical-ligatures'] + expected: FAIL + + [Property font-variant-ligatures value 'contextual'] + expected: FAIL + + [Property font-variant-ligatures value 'common-ligatures'] + expected: FAIL + + [Property font-variant-ligatures value 'no-discretionary-ligatures'] + expected: FAIL + + [Property font-variant-ligatures value 'none'] + expected: FAIL + + [Property font-variant-ligatures value 'no-historical-ligatures'] + expected: FAIL + + [Property font-variant-ligatures value 'no-contextual'] + expected: FAIL + + [Property font-variant-ligatures value 'normal'] + expected: FAIL + + [Property font-variant-ligatures value 'no-common-ligatures'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-numeric-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-numeric-computed.html.ini index 5e02c786180..50f66a01667 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-numeric-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-numeric-computed.html.ini @@ -32,3 +32,36 @@ [Property font-variant-numeric value 'slashed-zero' computes to 'slashed-zero'] expected: FAIL + [Property font-variant-numeric value 'normal'] + expected: FAIL + + [Property font-variant-numeric value 'oldstyle-nums tabular-nums diagonal-fractions'] + expected: FAIL + + [Property font-variant-numeric value 'slashed-zero'] + expected: FAIL + + [Property font-variant-numeric value 'ordinal'] + expected: FAIL + + [Property font-variant-numeric value 'oldstyle-nums'] + expected: FAIL + + [Property font-variant-numeric value 'diagonal-fractions'] + expected: FAIL + + [Property font-variant-numeric value 'stacked-fractions'] + expected: FAIL + + [Property font-variant-numeric value 'proportional-nums'] + expected: FAIL + + [Property font-variant-numeric value 'lining-nums'] + expected: FAIL + + [Property font-variant-numeric value 'lining-nums proportional-nums stacked-fractions ordinal slashed-zero'] + expected: FAIL + + [Property font-variant-numeric value 'tabular-nums'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-position-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-position-computed.html.ini index 5ff2096182a..309c079adb7 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variant-position-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variant-position-computed.html.ini @@ -8,3 +8,12 @@ [Property font-variant-position value 'normal' computes to 'normal'] expected: FAIL + [Property font-variant-position value 'super'] + expected: FAIL + + [Property font-variant-position value 'normal'] + expected: FAIL + + [Property font-variant-position value 'sub'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-fonts/parsing/font-variation-settings-computed.html.ini b/tests/wpt/metadata/css/css-fonts/parsing/font-variation-settings-computed.html.ini index b75e941bdc6..4956456d560 100644 --- a/tests/wpt/metadata/css/css-fonts/parsing/font-variation-settings-computed.html.ini +++ b/tests/wpt/metadata/css/css-fonts/parsing/font-variation-settings-computed.html.ini @@ -11,3 +11,15 @@ [Property font-variation-settings value '"XHGT" calc(0.4 + 0.3)' computes to '"XHGT" 0.7'] expected: FAIL + [Property font-variation-settings value 'normal'] + expected: FAIL + + [Property font-variation-settings value '"wght" 700, "XHGT" 0.7'] + expected: FAIL + + [Property font-variation-settings value '"wght" 700'] + expected: FAIL + + [Property font-variation-settings value '"XHGT" calc(0.4 + 0.3)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-images/parsing/image-orientation-computed.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-orientation-computed.html.ini index 8388d10fd66..f505a603940 100644 --- a/tests/wpt/metadata/css/css-images/parsing/image-orientation-computed.html.ini +++ b/tests/wpt/metadata/css/css-images/parsing/image-orientation-computed.html.ini @@ -5,3 +5,9 @@ [Property image-orientation value 'none' computes to 'none'] expected: FAIL + [Property image-orientation value 'none'] + expected: FAIL + + [Property image-orientation value 'from-image'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-images/parsing/image-rendering-computed.html.ini b/tests/wpt/metadata/css/css-images/parsing/image-rendering-computed.html.ini index 1b0fc140356..7f86c7bc52d 100644 --- a/tests/wpt/metadata/css/css-images/parsing/image-rendering-computed.html.ini +++ b/tests/wpt/metadata/css/css-images/parsing/image-rendering-computed.html.ini @@ -5,3 +5,9 @@ [Property image-rendering value 'high-quality' computes to 'high-quality'] expected: FAIL + [Property image-rendering value 'smooth'] + expected: FAIL + + [Property image-rendering value 'high-quality'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-images/parsing/object-fit-computed.html.ini b/tests/wpt/metadata/css/css-images/parsing/object-fit-computed.html.ini index 27a9b2a40a7..7245a4bc778 100644 --- a/tests/wpt/metadata/css/css-images/parsing/object-fit-computed.html.ini +++ b/tests/wpt/metadata/css/css-images/parsing/object-fit-computed.html.ini @@ -17,3 +17,21 @@ [Property object-fit value 'cover' computes to 'cover'] expected: FAIL + [Property object-fit value 'fill'] + expected: FAIL + + [Property object-fit value 'cover scale-down'] + expected: FAIL + + [Property object-fit value 'contain'] + expected: FAIL + + [Property object-fit value 'cover'] + expected: FAIL + + [Property object-fit value 'scale-down'] + expected: FAIL + + [Property object-fit value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-images/parsing/object-position-computed.html.ini b/tests/wpt/metadata/css/css-images/parsing/object-position-computed.html.ini index c0556d12e5d..245daffddff 100644 --- a/tests/wpt/metadata/css/css-images/parsing/object-position-computed.html.ini +++ b/tests/wpt/metadata/css/css-images/parsing/object-position-computed.html.ini @@ -47,3 +47,51 @@ [Property object-position value 'right 20px bottom 10px' computes to 'calc(100% - 20px) calc(100% - 10px)'] expected: FAIL + [Property object-position value '-20% -30px'] + expected: FAIL + + [Property object-position value 'right 40%'] + expected: FAIL + + [Property object-position value '30px center'] + expected: FAIL + + [Property object-position value 'center 50px'] + expected: FAIL + + [Property object-position value '40px top'] + expected: FAIL + + [Property object-position value 'right 30% top 60px'] + expected: FAIL + + [Property object-position value 'right 20px bottom 10px'] + expected: FAIL + + [Property object-position value 'left bottom'] + expected: FAIL + + [Property object-position value 'right 20% bottom 10%'] + expected: FAIL + + [Property object-position value '10% center'] + expected: FAIL + + [Property object-position value 'center'] + expected: FAIL + + [Property object-position value 'center bottom'] + expected: FAIL + + [Property object-position value 'center top'] + expected: FAIL + + [Property object-position value 'center center'] + expected: FAIL + + [Property object-position value 'left center'] + expected: FAIL + + [Property object-position value 'right bottom'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-color-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-color-computed.html.ini index 26d7104a525..68354253576 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-color-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-color-computed.html.ini @@ -8,3 +8,12 @@ [Property text-decoration-color value 'rgb(0, 0, 255)' computes to 'rgb(0, 0, 255)'] expected: FAIL + [Property text-decoration-color value 'inherit'] + expected: FAIL + + [Property text-decoration-color value 'rgb(0, 0, 255)'] + expected: FAIL + + [Property text-decoration-color value 'currentcolor'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-computed.html.ini index f17954acc2a..44e2ee712b2 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-computed.html.ini @@ -53,3 +53,39 @@ [Property text-decoration value 'rgba(10, 20, 30, 0.4) dotted' computes to 'dotted rgba(10, 20, 30, 0.4)'] expected: FAIL + [Property text-decoration value 'auto'] + expected: FAIL + + [Property text-decoration value 'currentcolor'] + expected: FAIL + + [Property text-decoration value 'double overline underline'] + expected: FAIL + + [Property text-decoration value 'line-through'] + expected: FAIL + + [Property text-decoration value 'underline dashed rgb(0, 255, 0)'] + expected: FAIL + + [Property text-decoration value 'underline overline line-through red'] + expected: FAIL + + [Property text-decoration value 'rgba(10, 20, 30, 0.4) dotted'] + expected: FAIL + + [Property text-decoration value 'none'] + expected: FAIL + + [Property text-decoration value '10px'] + expected: FAIL + + [Property text-decoration value 'underline red from-font'] + expected: FAIL + + [Property text-decoration value 'solid'] + expected: FAIL + + [Property text-decoration value 'from-font'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-line-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-line-computed.html.ini index ffc3641723a..d6f18341300 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-line-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-line-computed.html.ini @@ -5,3 +5,9 @@ [Property text-decoration-line value 'grammar-error' computes to 'grammar-error'] expected: FAIL + [Property text-decoration-line value 'spelling-error'] + expected: FAIL + + [Property text-decoration-line value 'grammar-error'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-skip-ink-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-skip-ink-computed.html.ini index cd7bfe6eae5..6b6cc9dcf55 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-skip-ink-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-skip-ink-computed.html.ini @@ -5,3 +5,9 @@ [Property text-decoration-skip-ink value 'none' computes to 'none'] expected: FAIL + [Property text-decoration-skip-ink value 'none'] + expected: FAIL + + [Property text-decoration-skip-ink value 'auto'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-style-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-style-computed.html.ini index 9057105353f..5cff5aa0b38 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-style-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-decoration-style-computed.html.ini @@ -14,3 +14,18 @@ [Property text-decoration-style value 'dashed' computes to 'dashed'] expected: FAIL + [Property text-decoration-style value 'wavy'] + expected: FAIL + + [Property text-decoration-style value 'double'] + expected: FAIL + + [Property text-decoration-style value 'dashed'] + expected: FAIL + + [Property text-decoration-style value 'dotted'] + expected: FAIL + + [Property text-decoration-style value 'solid'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/parsing/text-underline-position-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/parsing/text-underline-position-computed.html.ini index 477e68c0fdc..9bb540564a3 100644 --- a/tests/wpt/metadata/css/css-text-decor/parsing/text-underline-position-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/parsing/text-underline-position-computed.html.ini @@ -14,3 +14,18 @@ [Property text-underline-position value 'right' computes to 'right'] expected: FAIL + [Property text-underline-position value 'under left'] + expected: FAIL + + [Property text-underline-position value 'left'] + expected: FAIL + + [Property text-underline-position value 'under'] + expected: FAIL + + [Property text-underline-position value 'right'] + expected: FAIL + + [Property text-underline-position value 'auto'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/text-decoration-thickness-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/text-decoration-thickness-computed.html.ini index 7b59ea11fdf..04ab080d661 100644 --- a/tests/wpt/metadata/css/css-text-decor/text-decoration-thickness-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/text-decoration-thickness-computed.html.ini @@ -8,3 +8,12 @@ [Property text-decoration-thickness value 'calc(10px - 8px)' computes to '2px'] expected: FAIL + [Property text-decoration-thickness value 'auto'] + expected: FAIL + + [Property text-decoration-thickness value 'from-font'] + expected: FAIL + + [Property text-decoration-thickness value 'calc(10px - 8px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text-decor/text-underline-offset-computed.html.ini b/tests/wpt/metadata/css/css-text-decor/text-underline-offset-computed.html.ini index 3b68af5f2b8..d33451897c9 100644 --- a/tests/wpt/metadata/css/css-text-decor/text-underline-offset-computed.html.ini +++ b/tests/wpt/metadata/css/css-text-decor/text-underline-offset-computed.html.ini @@ -8,3 +8,12 @@ [Property text-underline-offset value 'from-font' computes to 'from-font'] expected: FAIL + [Property text-underline-offset value 'auto'] + expected: FAIL + + [Property text-underline-offset value 'from-font'] + expected: FAIL + + [Property text-underline-offset value 'calc(10px - 8px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/hyphens/hyphens-out-of-flow-001.html.ini b/tests/wpt/metadata/css/css-text/hyphens/hyphens-out-of-flow-001.html.ini deleted file mode 100644 index be32a87e09c..00000000000 --- a/tests/wpt/metadata/css/css-text/hyphens/hyphens-out-of-flow-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[hyphens-out-of-flow-001.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini b/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini deleted file mode 100644 index 693999d7f9d..00000000000 --- a/tests/wpt/metadata/css/css-text/line-break/line-break-normal-018.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[line-break-normal-018.xht] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini b/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini deleted file mode 100644 index bd79bd226f9..00000000000 --- a/tests/wpt/metadata/css/css-text/line-break/line-break-strict-018.xht.ini +++ /dev/null @@ -1,2 +0,0 @@ -[line-break-strict-018.xht] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/parsing/hyphens-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/hyphens-computed.html.ini index 5f9ade1908c..710bcfd8ff0 100644 --- a/tests/wpt/metadata/css/css-text/parsing/hyphens-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/hyphens-computed.html.ini @@ -8,3 +8,12 @@ [Property hyphens value 'auto' computes to 'auto'] expected: FAIL + [Property hyphens value 'auto'] + expected: FAIL + + [Property hyphens value 'manual'] + expected: FAIL + + [Property hyphens value 'none'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/line-break-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/line-break-computed.html.ini index 9bccc62d419..e8f87f9aa3d 100644 --- a/tests/wpt/metadata/css/css-text/parsing/line-break-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/line-break-computed.html.ini @@ -14,3 +14,18 @@ [Property line-break value 'auto' computes to 'auto'] expected: FAIL + [Property line-break value 'anywhere'] + expected: FAIL + + [Property line-break value 'strict'] + expected: FAIL + + [Property line-break value 'auto'] + expected: FAIL + + [Property line-break value 'loose'] + expected: FAIL + + [Property line-break value 'normal'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/tab-size-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/tab-size-computed.html.ini index 01c3c576866..1e48f3528d6 100644 --- a/tests/wpt/metadata/css/css-text/parsing/tab-size-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/tab-size-computed.html.ini @@ -23,3 +23,27 @@ [Property tab-size value 'calc(10px + 0.5em)' computes to '30px'] expected: FAIL + [Property tab-size value '2.5'] + expected: FAIL + + [Property tab-size value '4'] + expected: FAIL + + [Property tab-size value 'calc(10px + 0.5em)'] + expected: FAIL + + [Property tab-size value '0px'] + expected: FAIL + + [Property tab-size value '16'] + expected: FAIL + + [Property tab-size value '10px'] + expected: FAIL + + [Property tab-size value 'calc(10px - 0.5em)'] + expected: FAIL + + [Property tab-size value '0'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/text-align-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/text-align-computed.html.ini index 368a34f8ac1..946a9e60638 100644 --- a/tests/wpt/metadata/css/css-text/parsing/text-align-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/text-align-computed.html.ini @@ -2,3 +2,6 @@ [Property text-align value 'match-parent' computes to 'center'] expected: FAIL + [Property text-align value 'match-parent'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/text-align-last-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/text-align-last-computed.html.ini index 96f920e032c..cc223d31d55 100644 --- a/tests/wpt/metadata/css/css-text/parsing/text-align-last-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/text-align-last-computed.html.ini @@ -23,3 +23,27 @@ [Property text-align-last value 'left' computes to 'left'] expected: FAIL + [Property text-align-last value 'end'] + expected: FAIL + + [Property text-align-last value 'center'] + expected: FAIL + + [Property text-align-last value 'auto'] + expected: FAIL + + [Property text-align-last value 'start'] + expected: FAIL + + [Property text-align-last value 'right'] + expected: FAIL + + [Property text-align-last value 'left'] + expected: FAIL + + [Property text-align-last value 'match-parent'] + expected: FAIL + + [Property text-align-last value 'justify'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/text-indent-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/text-indent-computed.html.ini index acb1aea64c9..f55b4b0e6fc 100644 --- a/tests/wpt/metadata/css/css-text/parsing/text-indent-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/text-indent-computed.html.ini @@ -11,3 +11,15 @@ [Property text-indent value 'calc(50% + 60px) hanging each-line' computes to 'calc(50% + 60px) hanging each-line'] expected: FAIL + [Property text-indent value 'each-line hanging calc(10px + 0.5em)'] + expected: FAIL + + [Property text-indent value '20% each-line'] + expected: FAIL + + [Property text-indent value 'calc(50% + 60px) hanging each-line'] + expected: FAIL + + [Property text-indent value '10px hanging'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/text-justify-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/text-justify-computed.html.ini index d7b982ed618..ae897a3a05a 100644 --- a/tests/wpt/metadata/css/css-text/parsing/text-justify-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/text-justify-computed.html.ini @@ -2,3 +2,6 @@ [Property text-justify value 'inter-character' computes to 'inter-character'] expected: FAIL + [Property text-justify value 'inter-character'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/white-space-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/white-space-computed.html.ini index dbc4390d8bf..20a75f681bf 100644 --- a/tests/wpt/metadata/css/css-text/parsing/white-space-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/white-space-computed.html.ini @@ -2,3 +2,6 @@ [Property white-space value 'break-spaces' computes to 'break-spaces'] expected: FAIL + [Property white-space value 'break-spaces'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/word-boundary-detection-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/word-boundary-detection-computed.html.ini index f22c4186d50..59898e48af0 100644 --- a/tests/wpt/metadata/css/css-text/parsing/word-boundary-detection-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/word-boundary-detection-computed.html.ini @@ -5,3 +5,9 @@ [Property word-boundary-detection value 'manual' computes to 'manual'] expected: FAIL + [Property word-boundary-detection value 'manual'] + expected: FAIL + + [Property word-boundary-detection value 'normal'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/word-boundary-expansion-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/word-boundary-expansion-computed.html.ini index f2dea9cf7a2..1ec2a730d65 100644 --- a/tests/wpt/metadata/css/css-text/parsing/word-boundary-expansion-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/word-boundary-expansion-computed.html.ini @@ -8,3 +8,12 @@ [Property word-boundary-expansion value 'none' computes to 'none'] expected: FAIL + [Property word-boundary-expansion value 'none'] + expected: FAIL + + [Property word-boundary-expansion value 'ideographic-space'] + expected: FAIL + + [Property word-boundary-expansion value 'space'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/parsing/word-break-computed.html.ini b/tests/wpt/metadata/css/css-text/parsing/word-break-computed.html.ini index dc7a2c8a123..3de00d7d68a 100644 --- a/tests/wpt/metadata/css/css-text/parsing/word-break-computed.html.ini +++ b/tests/wpt/metadata/css/css-text/parsing/word-break-computed.html.ini @@ -2,3 +2,6 @@ [Property word-break value 'break-word' computes to 'break-word'] expected: FAIL + [Property word-break value 'break-word'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-001.html.ini b/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-001.html.ini deleted file mode 100644 index ded993140eb..00000000000 --- a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-001.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[text-transform-full-size-kana-001.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-002.html.ini b/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-002.html.ini deleted file mode 100644 index 047905d059b..00000000000 --- a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-002.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[text-transform-full-size-kana-002.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-003.html.ini b/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-003.html.ini deleted file mode 100644 index 7e9e3e15a50..00000000000 --- a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-003.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[text-transform-full-size-kana-003.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-004.html.ini b/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-004.html.ini deleted file mode 100644 index f90c86d0e3d..00000000000 --- a/tests/wpt/metadata/css/css-text/text-transform/text-transform-full-size-kana-004.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[text-transform-full-size-kana-004.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini b/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini deleted file mode 100644 index 240d1283c3a..00000000000 --- a/tests/wpt/metadata/css/css-text/white-space/trailing-ideographic-space-004.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[trailing-ideographic-space-004.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/word-break/word-break-break-all-007.html.ini b/tests/wpt/metadata/css/css-text/word-break/word-break-break-all-007.html.ini new file mode 100644 index 00000000000..192f64b0826 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/word-break/word-break-break-all-007.html.ini @@ -0,0 +1,2 @@ +[word-break-break-all-007.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/word-break/word-break-keep-all-006.html.ini b/tests/wpt/metadata/css/css-text/word-break/word-break-keep-all-006.html.ini new file mode 100644 index 00000000000..3a512b4a124 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/word-break/word-break-keep-all-006.html.ini @@ -0,0 +1,2 @@ +[word-break-keep-all-006.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini b/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini index af79ecd5f12..03f2f3fe9d1 100644 --- a/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini +++ b/tests/wpt/metadata/css/css-transforms/animation/perspective-interpolation.html.ini @@ -1,5 +1,5 @@ [perspective-interpolation.html] - expected: TIMEOUT + expected: CRASH [ perspective interpolation] expected: FAIL diff --git a/tests/wpt/metadata/css/css-transforms/parsing/perspective-origin-computed.html.ini b/tests/wpt/metadata/css/css-transforms/parsing/perspective-origin-computed.html.ini index 60c6c1751e9..5266055ce8b 100644 --- a/tests/wpt/metadata/css/css-transforms/parsing/perspective-origin-computed.html.ini +++ b/tests/wpt/metadata/css/css-transforms/parsing/perspective-origin-computed.html.ini @@ -62,3 +62,66 @@ [Property perspective-origin value 'center center' computes to '100px 150px'] expected: FAIL + [Property perspective-origin value 'left'] + expected: FAIL + + [Property perspective-origin value 'right 40%'] + expected: FAIL + + [Property perspective-origin value 'center center'] + expected: FAIL + + [Property perspective-origin value '40px top'] + expected: FAIL + + [Property perspective-origin value 'bottom right'] + expected: FAIL + + [Property perspective-origin value '20% 30px'] + expected: FAIL + + [Property perspective-origin value 'center 50px'] + expected: FAIL + + [Property perspective-origin value '10%'] + expected: FAIL + + [Property perspective-origin value 'right calc(10px - 0.5em) top calc(10px - 0.5em)'] + expected: FAIL + + [Property perspective-origin value 'left 10px'] + expected: FAIL + + [Property perspective-origin value 'center bottom'] + expected: FAIL + + [Property perspective-origin value 'center left'] + expected: FAIL + + [Property perspective-origin value 'top'] + expected: FAIL + + [Property perspective-origin value '10% center'] + expected: FAIL + + [Property perspective-origin value 'left center'] + expected: FAIL + + [Property perspective-origin value 'center'] + expected: FAIL + + [Property perspective-origin value 'bottom 10% right 20%'] + expected: FAIL + + [Property perspective-origin value 'right 30% top -60px'] + expected: FAIL + + [Property perspective-origin value 'right 20px bottom 30px'] + expected: FAIL + + [Property perspective-origin value 'left bottom'] + expected: FAIL + + [Property perspective-origin value '30px center'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-transforms/parsing/transform-box-computed.html.ini b/tests/wpt/metadata/css/css-transforms/parsing/transform-box-computed.html.ini index 3cb6576be8c..13a32f78c49 100644 --- a/tests/wpt/metadata/css/css-transforms/parsing/transform-box-computed.html.ini +++ b/tests/wpt/metadata/css/css-transforms/parsing/transform-box-computed.html.ini @@ -14,3 +14,18 @@ [Property transform-box value 'fill-box' computes to 'fill-box'] expected: FAIL + [Property transform-box value 'border-box'] + expected: FAIL + + [Property transform-box value 'content-box'] + expected: FAIL + + [Property transform-box value 'view-box'] + expected: FAIL + + [Property transform-box value 'stroke-box'] + expected: FAIL + + [Property transform-box value 'fill-box'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-transforms/parsing/transform-origin-computed.html.ini b/tests/wpt/metadata/css/css-transforms/parsing/transform-origin-computed.html.ini index 04aff3c9216..a214ae306a2 100644 --- a/tests/wpt/metadata/css/css-transforms/parsing/transform-origin-computed.html.ini +++ b/tests/wpt/metadata/css/css-transforms/parsing/transform-origin-computed.html.ini @@ -65,3 +65,69 @@ [Property transform-origin value 'left' computes to '0px 150px'] expected: FAIL + [Property transform-origin value 'left'] + expected: FAIL + + [Property transform-origin value 'center 50px'] + expected: FAIL + + [Property transform-origin value 'center top'] + expected: FAIL + + [Property transform-origin value 'left bottom'] + expected: FAIL + + [Property transform-origin value '20% 30px'] + expected: FAIL + + [Property transform-origin value '-1px bottom 5px'] + expected: FAIL + + [Property transform-origin value '10% center'] + expected: FAIL + + [Property transform-origin value 'left 10px'] + expected: FAIL + + [Property transform-origin value 'center center'] + expected: FAIL + + [Property transform-origin value '10%'] + expected: FAIL + + [Property transform-origin value 'center left'] + expected: FAIL + + [Property transform-origin value '30px center'] + expected: FAIL + + [Property transform-origin value '40px top'] + expected: FAIL + + [Property transform-origin value 'bottom right'] + expected: FAIL + + [Property transform-origin value 'top'] + expected: FAIL + + [Property transform-origin value 'center'] + expected: FAIL + + [Property transform-origin value 'calc(-100% + 10px - 0.5em) calc(10px - 0.5em) calc(10px - 0.5em)'] + expected: FAIL + + [Property transform-origin value 'right 40%'] + expected: FAIL + + [Property transform-origin value 'left center 6px'] + expected: FAIL + + [Property transform-origin value 'center bottom'] + expected: FAIL + + [Property transform-origin value 'left center'] + expected: FAIL + + [Property transform-origin value 'right bottom 7px'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-transitions/no-transition-from-ua-to-blocking-stylesheet.html.ini b/tests/wpt/metadata/css/css-transitions/no-transition-from-ua-to-blocking-stylesheet.html.ini index 70a00a101f6..e35a452a186 100644 --- a/tests/wpt/metadata/css/css-transitions/no-transition-from-ua-to-blocking-stylesheet.html.ini +++ b/tests/wpt/metadata/css/css-transitions/no-transition-from-ua-to-blocking-stylesheet.html.ini @@ -1,2 +1,2 @@ [no-transition-from-ua-to-blocking-stylesheet.html] - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/metadata/css/css-transitions/parsing/transition-computed.html.ini b/tests/wpt/metadata/css/css-transitions/parsing/transition-computed.html.ini index 6a6c7faf72e..1d6a584e053 100644 --- a/tests/wpt/metadata/css/css-transitions/parsing/transition-computed.html.ini +++ b/tests/wpt/metadata/css/css-transitions/parsing/transition-computed.html.ini @@ -20,3 +20,24 @@ [Property transition value '1s -3s cubic-bezier(0, -2, 1, 3) top' computes to 'top 1s cubic-bezier(0, -2, 1, 3) -3s'] expected: FAIL + [Property transition value '1s -3s'] + expected: FAIL + + [Property transition value '1s -3s, cubic-bezier(0, -2, 1, 3) top'] + expected: FAIL + + [Property transition value 'none'] + expected: FAIL + + [Property transition value '1s'] + expected: FAIL + + [Property transition value 'cubic-bezier(0, -2, 1, 3)'] + expected: FAIL + + [Property transition value '1s -3s cubic-bezier(0, -2, 1, 3) top'] + expected: FAIL + + [Property transition value 'top'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-transitions/parsing/transition-timing-function-computed.html.ini b/tests/wpt/metadata/css/css-transitions/parsing/transition-timing-function-computed.html.ini index 5a41ca5ad57..a464ab197c6 100644 --- a/tests/wpt/metadata/css/css-transitions/parsing/transition-timing-function-computed.html.ini +++ b/tests/wpt/metadata/css/css-transitions/parsing/transition-timing-function-computed.html.ini @@ -11,3 +11,15 @@ [Property transition-timing-function value 'steps(2, jump-both)' computes to 'steps(2, jump-both)'] expected: FAIL + [Property transition-timing-function value 'steps(2, jump-both)'] + expected: FAIL + + [Property transition-timing-function value 'steps(2, jump-end)'] + expected: FAIL + + [Property transition-timing-function value 'steps(2, jump-start)'] + expected: FAIL + + [Property transition-timing-function value 'steps(2, jump-none)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-ui/parsing/caret-color-computed.html.ini b/tests/wpt/metadata/css/css-ui/parsing/caret-color-computed.html.ini index 9103c108a5f..c217a44d76c 100644 --- a/tests/wpt/metadata/css/css-ui/parsing/caret-color-computed.html.ini +++ b/tests/wpt/metadata/css/css-ui/parsing/caret-color-computed.html.ini @@ -8,3 +8,12 @@ [Property caret-color value 'red' computes to 'rgb(255, 0, 0)'] expected: FAIL + [Property caret-color value 'currentColor'] + expected: FAIL + + [Property caret-color value 'red'] + expected: FAIL + + [Property caret-color value 'auto'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-ui/parsing/resize-computed.html.ini b/tests/wpt/metadata/css/css-ui/parsing/resize-computed.html.ini index 04988af8df2..16a68e628d6 100644 --- a/tests/wpt/metadata/css/css-ui/parsing/resize-computed.html.ini +++ b/tests/wpt/metadata/css/css-ui/parsing/resize-computed.html.ini @@ -11,3 +11,15 @@ [Property resize value 'none' computes to 'none'] expected: FAIL + [Property resize value 'none'] + expected: FAIL + + [Property resize value 'horizontal'] + expected: FAIL + + [Property resize value 'vertical'] + expected: FAIL + + [Property resize value 'both'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-ui/parsing/user-select-computed.html.ini b/tests/wpt/metadata/css/css-ui/parsing/user-select-computed.html.ini index c6b1f4b60de..a0e53a1f7ba 100644 --- a/tests/wpt/metadata/css/css-ui/parsing/user-select-computed.html.ini +++ b/tests/wpt/metadata/css/css-ui/parsing/user-select-computed.html.ini @@ -14,3 +14,18 @@ [Property user-select value 'all' computes to 'all'] expected: FAIL + [Property user-select value 'all'] + expected: FAIL + + [Property user-select value 'text'] + expected: FAIL + + [Property user-select value 'none'] + expected: FAIL + + [Property user-select value 'auto'] + expected: FAIL + + [Property user-select value 'contain'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/clamp-length-computed.html.ini b/tests/wpt/metadata/css/css-values/clamp-length-computed.html.ini index 1e17130fab5..35bc011d78a 100644 --- a/tests/wpt/metadata/css/css-values/clamp-length-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/clamp-length-computed.html.ini @@ -11,3 +11,15 @@ [Property letter-spacing value 'clamp(10px, 20px, 30px)' computes to '20px'] expected: FAIL + [Property letter-spacing value 'clamp(10px, 20px, 30px)'] + expected: FAIL + + [Property letter-spacing value 'clamp(10px, 35px, 30px)'] + expected: FAIL + + [Property letter-spacing value 'clamp(30px, 100px, 20px)'] + expected: FAIL + + [Property letter-spacing value 'clamp(10px, 5px, 30px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-angle-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-angle-computed.html.ini index 2ccfc9a5c87..3a9e368ccdb 100644 --- a/tests/wpt/metadata/css/css-values/minmax-angle-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-angle-computed.html.ini @@ -95,3 +95,99 @@ [Property transform value 'rotate(min(1turn, 2turn))' computes to 'rotate(360deg)'] expected: FAIL + [Property transform value 'rotate(max(1rad))'] + expected: FAIL + + [Property transform value 'rotate(max(1deg, 2deg))'] + expected: FAIL + + [Property transform value 'rotate(max(1grad))'] + expected: FAIL + + [Property transform value 'rotate(min(1.57rad, 95deg))'] + expected: FAIL + + [Property transform value 'rotate(max(1rad, 2rad))'] + expected: FAIL + + [Property transform value 'rotate(min(1rad))'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) + max(0.25turn, 99grad)))'] + expected: FAIL + + [Property transform value 'rotate(calc(max(90deg, 1.56rad) / 2)'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) - max(0.25turn, 99grad)))'] + expected: FAIL + + [Property transform value 'rotate(min(1deg, 2deg))'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) + 0.25turn))'] + expected: FAIL + + [Property transform value 'rotate(min(1rad, 2rad))'] + expected: FAIL + + [Property transform value 'rotate(max(1turn))'] + expected: FAIL + + [Property transform value 'rotate(min(1grad))'] + expected: FAIL + + [Property transform value 'rotate(min(1turn, 2turn))'] + expected: FAIL + + [Property transform value 'rotate(max(1grad, 2grad))'] + expected: FAIL + + [Property transform value 'rotate(max(1deg))'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) - 0.125turn))'] + expected: FAIL + + [Property transform value 'rotate(max(91deg, 0.25turn))'] + expected: FAIL + + [Property transform value 'rotate(min(270deg, max(0.25turn, 3.14rad)))'] + expected: FAIL + + [Property transform value 'rotate(max(0.25turn, min(270deg, 3.14rad)))'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) / 2)'] + expected: FAIL + + [Property transform value 'rotate(max(1turn, 2turn))'] + expected: FAIL + + [Property transform value 'rotate(calc(max(90deg, 1.56rad) + 0.25turn))'] + expected: FAIL + + [Property transform value 'rotate(calc(max(90deg, 1.56rad) - 0.125turn))'] + expected: FAIL + + [Property transform value 'rotate(min(1deg))'] + expected: FAIL + + [Property transform value 'rotate(max(1.58rad, 90deg))'] + expected: FAIL + + [Property transform value 'rotate(min(1grad, 2grad))'] + expected: FAIL + + [Property transform value 'rotate(min(1turn))'] + expected: FAIL + + [Property transform value 'rotate(calc(min(90deg, 1.58rad) * 2)'] + expected: FAIL + + [Property transform value 'rotate(min(90deg, 0.26turn))'] + expected: FAIL + + [Property transform value 'rotate(calc(max(90deg, 1.56rad) * 2)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-integer-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-integer-computed.html.ini index 0b6cc5fc550..8c5176025bb 100644 --- a/tests/wpt/metadata/css/css-values/minmax-integer-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-integer-computed.html.ini @@ -29,3 +29,33 @@ [Property z-index value 'calc(min(0.3, 0.6) * 2)' computes to '1'] expected: FAIL + [Property z-index value 'max(0.4)'] + expected: FAIL + + [Property z-index value 'min(1.1, max(0.4, 0.6))'] + expected: FAIL + + [Property z-index value 'min(1)'] + expected: FAIL + + [Property z-index value 'calc(max(0.3, 0.6) / 2)'] + expected: FAIL + + [Property z-index value 'min(0.4)'] + expected: FAIL + + [Property z-index value 'max(1)'] + expected: FAIL + + [Property z-index value 'max(0.6)'] + expected: FAIL + + [Property z-index value 'calc(min(0.3, 0.6) * 2)'] + expected: FAIL + + [Property z-index value 'max(0.3, min(1.1, 0.4))'] + expected: FAIL + + [Property z-index value 'min(0.6)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-length-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-length-computed.html.ini index 0955fb5aa7a..0a95b909192 100644 --- a/tests/wpt/metadata/css/css-values/minmax-length-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-length-computed.html.ini @@ -239,3 +239,243 @@ [Property letter-spacing value 'calc(min(1em, 21px) - max(0.9em, 20px))' computes to 'normal'] expected: FAIL + [Property letter-spacing value 'min(1vmax)'] + expected: FAIL + + [Property letter-spacing value 'max(1ex, 2ex)'] + expected: FAIL + + [Property letter-spacing value 'max(15px, min(25px, 1em))'] + expected: FAIL + + [Property letter-spacing value 'max(1em, 2em)'] + expected: FAIL + + [Property letter-spacing value 'max(1px, 2px)'] + expected: FAIL + + [Property letter-spacing value 'max(1pc)'] + expected: FAIL + + [Property letter-spacing value 'min(15px, 1em)' fontSize=10px] + expected: FAIL + + [Property letter-spacing value 'max(1em)'] + expected: FAIL + + [Property letter-spacing value 'min(1px)'] + expected: FAIL + + [Property letter-spacing value 'calc(max(1em, 19px) + 10px)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) * 2'] + expected: FAIL + + [Property letter-spacing value 'min(1pt)'] + expected: FAIL + + [Property letter-spacing value 'min(1vmax, 2vmax)'] + expected: FAIL + + [Property letter-spacing value 'min(1em)'] + expected: FAIL + + [Property letter-spacing value 'min(25px, max(15px, 1em))'] + expected: FAIL + + [Property letter-spacing value 'max(1pt, 2pt)'] + expected: FAIL + + [Property letter-spacing value 'max(1mm, 2mm)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) + max(0.9em, 20px))'] + expected: FAIL + + [Property letter-spacing value 'min(1pt, 2pt)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) - max(0.9em, 20px))'] + expected: FAIL + + [Property letter-spacing value 'min(1vw)'] + expected: FAIL + + [Property letter-spacing value 'max(1rem)'] + expected: FAIL + + [Property letter-spacing value 'min(1rem)'] + expected: FAIL + + [Property letter-spacing value 'min(15px, 1em)'] + expected: FAIL + + [Property letter-spacing value 'calc(max(1em, 19px) / 2'] + expected: FAIL + + [Property letter-spacing value 'min(1vmin)'] + expected: FAIL + + [Property letter-spacing value 'min(1pc, 2pc)'] + expected: FAIL + + [Property letter-spacing value 'max(1pc, 2pc)'] + expected: FAIL + + [Property letter-spacing value 'max(1ex)'] + expected: FAIL + + [Property letter-spacing value 'min(1mm)'] + expected: FAIL + + [Property letter-spacing value 'max(1in)'] + expected: FAIL + + [Property letter-spacing value 'max(1pt)'] + expected: FAIL + + [Property letter-spacing value 'max(95px, 1in)'] + expected: FAIL + + [Property letter-spacing value 'max(1vmax)'] + expected: FAIL + + [Property letter-spacing value 'min(1in)'] + expected: FAIL + + [Property letter-spacing value 'min(1ex)'] + expected: FAIL + + [Property letter-spacing value 'min(1in, 2in)'] + expected: FAIL + + [Property letter-spacing value 'min(1ch, 2ch)'] + expected: FAIL + + [Property letter-spacing value 'max(15px, 1em)'] + expected: FAIL + + [Property letter-spacing value 'min(25px, 1em)'] + expected: FAIL + + [Property letter-spacing value 'max(1vmin)'] + expected: FAIL + + [Property letter-spacing value 'max(1vh, 2vh)'] + expected: FAIL + + [Property letter-spacing value 'max(1mm)'] + expected: FAIL + + [Property letter-spacing value 'min(1vmin, 2vmin)'] + expected: FAIL + + [Property letter-spacing value 'min(1vh, 2vh)'] + expected: FAIL + + [Property letter-spacing value 'max(15px, 2em)' fontSize=10px] + expected: FAIL + + [Property letter-spacing value 'max(1vmax, 2vmax)'] + expected: FAIL + + [Property letter-spacing value 'min(1mm, 2mm)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) - 10px)'] + expected: FAIL + + [Property letter-spacing value 'max(1rem, 2rem)'] + expected: FAIL + + [Property letter-spacing value 'max(1Q, 2Q)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) + 10px)'] + expected: FAIL + + [Property letter-spacing value 'min(1ex, 2ex)'] + expected: FAIL + + [Property letter-spacing value 'max(1cm)'] + expected: FAIL + + [Property letter-spacing value 'min(1Q, 2Q)'] + expected: FAIL + + [Property letter-spacing value 'min(1pc)'] + expected: FAIL + + [Property letter-spacing value 'min(1cm)'] + expected: FAIL + + [Property letter-spacing value 'max(1cm, 2cm)'] + expected: FAIL + + [Property letter-spacing value 'calc(max(1em, 19px) * 2'] + expected: FAIL + + [Property letter-spacing value 'max(1ch)'] + expected: FAIL + + [Property letter-spacing value 'max(1vw, 2vw)'] + expected: FAIL + + [Property letter-spacing value 'min(1px, 2px)'] + expected: FAIL + + [Property letter-spacing value 'min(95px, 1in)'] + expected: FAIL + + [Property letter-spacing value 'min(1rem, 2rem)'] + expected: FAIL + + [Property letter-spacing value 'min(1vh)'] + expected: FAIL + + [Property letter-spacing value 'min(1cm, 2cm)'] + expected: FAIL + + [Property letter-spacing value 'max(1px)'] + expected: FAIL + + [Property letter-spacing value 'max(1vw)'] + expected: FAIL + + [Property letter-spacing value 'min(1vw, 2vw)'] + expected: FAIL + + [Property letter-spacing value 'min(1Q)'] + expected: FAIL + + [Property letter-spacing value 'max(1in, 2in)'] + expected: FAIL + + [Property letter-spacing value 'max(1ch, 2ch)'] + expected: FAIL + + [Property letter-spacing value 'min(1ch)'] + expected: FAIL + + [Property letter-spacing value 'calc(min(1em, 21px) / 2'] + expected: FAIL + + [Property letter-spacing value 'max(25px, 1em)'] + expected: FAIL + + [Property letter-spacing value 'max(1Q)'] + expected: FAIL + + [Property letter-spacing value 'max(1vmin, 2vmin)'] + expected: FAIL + + [Property letter-spacing value 'min(1em, 2em)'] + expected: FAIL + + [Property letter-spacing value 'max(1vh)'] + expected: FAIL + + [Property letter-spacing value 'calc(max(1em, 19px) - 10px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-length-percent-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-length-percent-computed.html.ini index 2c3c8100418..5534ae5c023 100644 --- a/tests/wpt/metadata/css/css-values/minmax-length-percent-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-length-percent-computed.html.ini @@ -149,3 +149,153 @@ [Property margin-left value 'calc(max(1em, 15%) + 10px)' computes to '70px'] expected: FAIL + [Property margin-left value 'calc(min(1.5em, 10%) - max(1em, 15%))'] + expected: FAIL + + [Property margin-left value 'min(1em + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(min(1.5em, 10%) + 10px)'] + expected: FAIL + + [Property margin-left value 'min(1Q + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(min(1.5em, 10%) - 10px)'] + expected: FAIL + + [Property margin-left value 'calc(min(1.5em, 10%) * 2)'] + expected: FAIL + + [Property margin-left value 'calc(max(1em, 15%) * 2)'] + expected: FAIL + + [Property margin-left value 'max(1Q + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(max(1em, 15%) - 10px)'] + expected: FAIL + + [Property margin-left value 'min(30px + 10%, 60px + 5%)'] + expected: FAIL + + [Property margin-left value 'min(1vmax + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1px + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1vw + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1rem + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1pc + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1vmin + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1cm + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1cm + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1em, 10%)'] + expected: FAIL + + [Property margin-left value 'min(1px + 1%)'] + expected: FAIL + + [Property margin-left value 'max(20px, 10%)'] + expected: FAIL + + [Property margin-left value 'max(1in + 1%)'] + expected: FAIL + + [Property margin-left value 'min(20px, 10%)' width=100px] + expected: FAIL + + [Property margin-left value 'min(1pc + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1vmax + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(min(1.5em, 10%) / 2)'] + expected: FAIL + + [Property margin-left value 'min(1em, 10%)'] + expected: FAIL + + [Property margin-left value 'max(1vmin + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1pt + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1ex + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1vh + 1%)'] + expected: FAIL + + [Property margin-left value 'max(2em + 10%, 1em + 20%)'] + expected: FAIL + + [Property margin-left value 'min(1ch + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1mm + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(max(1em, 15%) + 10px)'] + expected: FAIL + + [Property margin-left value 'min(1em, 10%)' width=100px] + expected: FAIL + + [Property margin-left value 'min(20px, 10%)'] + expected: FAIL + + [Property margin-left value 'max(1em, 10%)' width=100px] + expected: FAIL + + [Property margin-left value 'max(1rem + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1in + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(min(1.5em, 10%) + max(1em, 15%))'] + expected: FAIL + + [Property margin-left value 'max(20px, 10%)' width=100px] + expected: FAIL + + [Property margin-left value 'max(1ex + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1mm + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1vh + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1pt + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1em + 1%)'] + expected: FAIL + + [Property margin-left value 'max(1ch + 1%)'] + expected: FAIL + + [Property margin-left value 'min(1vw + 1%)'] + expected: FAIL + + [Property margin-left value 'calc(max(1em, 15%) / 2)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-number-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-number-computed.html.ini index da5d7c62959..7293d0a802a 100644 --- a/tests/wpt/metadata/css/css-values/minmax-number-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-number-computed.html.ini @@ -41,3 +41,45 @@ [Property opacity value 'min(1)' computes to '1'] expected: FAIL + [Property opacity value 'calc(min(0.1, 0.2) + 0.05)'] + expected: FAIL + + [Property opacity value 'min(0.2, max(0.1, 0.15))'] + expected: FAIL + + [Property opacity value 'calc(max(0.1, 0.2) + 0.05)'] + expected: FAIL + + [Property opacity value 'max(1)'] + expected: FAIL + + [Property opacity value 'calc(min(0.1, 0.2) / 2)'] + expected: FAIL + + [Property opacity value 'calc(min(0.1, 0.2) * 2)'] + expected: FAIL + + [Property opacity value 'min(1)'] + expected: FAIL + + [Property opacity value 'calc(min(0.1, 0.2) + max(0.1, 0.05))'] + expected: FAIL + + [Property opacity value 'calc(max(0.1, 0.2) - 0.05)'] + expected: FAIL + + [Property opacity value 'calc(max(0.1, 0.2) / 2)'] + expected: FAIL + + [Property opacity value 'calc(min(0.1, 0.2) - max(0.1, 0.05))'] + expected: FAIL + + [Property opacity value 'calc(min(0.1, 0.2) - 0.05)'] + expected: FAIL + + [Property opacity value 'max(0.1, min(0.2, 0.15))'] + expected: FAIL + + [Property opacity value 'calc(max(0.1, 0.2) * 2)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-percentage-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-percentage-computed.html.ini index fcd372dd135..320e92be7f9 100644 --- a/tests/wpt/metadata/css/css-values/minmax-percentage-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-percentage-computed.html.ini @@ -41,3 +41,45 @@ [Property margin-left value 'calc(min(10%, 20%) - max(10%, 5%))' computes to '0px'] expected: FAIL + [Property margin-left value 'calc(min(10%, 20%) - max(10%, 5%))'] + expected: FAIL + + [Property margin-left value 'calc(max(10%, 20%) * 2)'] + expected: FAIL + + [Property margin-left value 'calc(min(10%, 20%) * 2)'] + expected: FAIL + + [Property margin-left value 'min(20%, max(10%, 15%))'] + expected: FAIL + + [Property margin-left value 'max(10%, min(20%, 15%))'] + expected: FAIL + + [Property margin-left value 'calc(max(10%, 20%) / 2)'] + expected: FAIL + + [Property margin-left value 'min(1%)'] + expected: FAIL + + [Property margin-left value 'calc(max(10%, 20%) - 5%)'] + expected: FAIL + + [Property margin-left value 'calc(min(10%, 20%) / 2)'] + expected: FAIL + + [Property margin-left value 'calc(max(10%, 20%) + 5%)'] + expected: FAIL + + [Property margin-left value 'calc(min(10%, 20%) + 5%)'] + expected: FAIL + + [Property margin-left value 'max(1%)'] + expected: FAIL + + [Property margin-left value 'calc(min(10%, 20%) - 5%)'] + expected: FAIL + + [Property margin-left value 'calc(min(10%, 20%) + max(10%, 5%))'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/minmax-time-computed.html.ini b/tests/wpt/metadata/css/css-values/minmax-time-computed.html.ini index 999eafddfd3..0e9738b9fad 100644 --- a/tests/wpt/metadata/css/css-values/minmax-time-computed.html.ini +++ b/tests/wpt/metadata/css/css-values/minmax-time-computed.html.ini @@ -65,3 +65,69 @@ [Property transition-delay value 'calc(min(0.5s, 600ms) - max(500ms, 0.4s))' computes to '0s'] expected: FAIL + [Property transition-delay value 'max(0.9s, 1000ms)'] + expected: FAIL + + [Property transition-delay value 'min(1s, 2s)'] + expected: FAIL + + [Property transition-delay value 'calc(max(0.5s, 400ms) + 500ms)'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) * 2)'] + expected: FAIL + + [Property transition-delay value 'calc(max(0.5s, 400ms) - 500ms)'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) - 500ms)'] + expected: FAIL + + [Property transition-delay value 'max(1s, 2s)'] + expected: FAIL + + [Property transition-delay value 'min(1ms)'] + expected: FAIL + + [Property transition-delay value 'max(1s)'] + expected: FAIL + + [Property transition-delay value 'max(1ms)'] + expected: FAIL + + [Property transition-delay value 'max(1ms, 2ms)'] + expected: FAIL + + [Property transition-delay value 'min(2s, max(1s, 1500ms))'] + expected: FAIL + + [Property transition-delay value 'min(1s)'] + expected: FAIL + + [Property transition-delay value 'calc(max(0.5s, 400ms) / 2)'] + expected: FAIL + + [Property transition-delay value 'max(1000ms, min(2000ms, 1.5s))'] + expected: FAIL + + [Property transition-delay value 'calc(max(0.5s, 400ms) * 2)'] + expected: FAIL + + [Property transition-delay value 'min(1ms, 2ms)'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) + max(500ms, 0.4s))'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) - max(500ms, 0.4s))'] + expected: FAIL + + [Property transition-delay value 'min(1s, 1100ms)'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) + 500ms)'] + expected: FAIL + + [Property transition-delay value 'calc(min(0.5s, 600ms) / 2)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/cssom-view/parsing/scroll-behavior-computed.html.ini b/tests/wpt/metadata/css/cssom-view/parsing/scroll-behavior-computed.html.ini index d5bad2f6490..27dff89c5ad 100644 --- a/tests/wpt/metadata/css/cssom-view/parsing/scroll-behavior-computed.html.ini +++ b/tests/wpt/metadata/css/cssom-view/parsing/scroll-behavior-computed.html.ini @@ -5,3 +5,9 @@ [Property scroll-behavior value 'auto' computes to 'auto'] expected: FAIL + [Property scroll-behavior value 'smooth'] + expected: FAIL + + [Property scroll-behavior value 'auto'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/cssom/border-shorthand-serialization.html.ini b/tests/wpt/metadata/css/cssom/border-shorthand-serialization.html.ini new file mode 100644 index 00000000000..5e4163cc85d --- /dev/null +++ b/tests/wpt/metadata/css/cssom/border-shorthand-serialization.html.ini @@ -0,0 +1,4 @@ +[border-shorthand-serialization.html] + [Declaration with border longhands and border-image is not serialized to a border shorthand declaration.] + expected: FAIL + diff --git a/tests/wpt/metadata/css/filter-effects/parsing/backdrop-filter-computed.html.ini b/tests/wpt/metadata/css/filter-effects/parsing/backdrop-filter-computed.html.ini index 668b41b7a22..5f3732dabbb 100644 --- a/tests/wpt/metadata/css/filter-effects/parsing/backdrop-filter-computed.html.ini +++ b/tests/wpt/metadata/css/filter-effects/parsing/backdrop-filter-computed.html.ini @@ -89,3 +89,87 @@ [Property backdrop-filter value 'brightness()' computes to 'brightness(1)'] expected: FAIL + [Property backdrop-filter value 'invert()'] + expected: FAIL + + [Property backdrop-filter value 'sepia()'] + expected: FAIL + + [Property backdrop-filter value 'opacity(100%)'] + expected: FAIL + + [Property backdrop-filter value 'sepia(0)'] + expected: FAIL + + [Property backdrop-filter value 'sepia(100%)'] + expected: FAIL + + [Property backdrop-filter value 'brightness(0)'] + expected: FAIL + + [Property backdrop-filter value 'grayscale(50%)'] + expected: FAIL + + [Property backdrop-filter value 'opacity(0)'] + expected: FAIL + + [Property backdrop-filter value 'drop-shadow(1px 2px)'] + expected: FAIL + + [Property backdrop-filter value 'hue-rotate()'] + expected: FAIL + + [Property backdrop-filter value 'invert(0)'] + expected: FAIL + + [Property backdrop-filter value 'contrast()'] + expected: FAIL + + [Property backdrop-filter value 'opacity()'] + expected: FAIL + + [Property backdrop-filter value 'blur(100px)'] + expected: FAIL + + [Property backdrop-filter value 'saturate()'] + expected: FAIL + + [Property backdrop-filter value 'contrast(0)'] + expected: FAIL + + [Property backdrop-filter value 'hue-rotate(90deg)'] + expected: FAIL + + [Property backdrop-filter value 'saturate(300%)'] + expected: FAIL + + [Property backdrop-filter value 'blur(10px) url("https://www.example.com/picture.svg#f") contrast(20) brightness(30)'] + expected: FAIL + + [Property backdrop-filter value 'brightness(300%)'] + expected: FAIL + + [Property backdrop-filter value 'drop-shadow(rgb(4, 5, 6) 1px 2px 0px)'] + expected: FAIL + + [Property backdrop-filter value 'invert(100%)'] + expected: FAIL + + [Property backdrop-filter value 'saturate(0)'] + expected: FAIL + + [Property backdrop-filter value 'contrast(300%)'] + expected: FAIL + + [Property backdrop-filter value 'blur()'] + expected: FAIL + + [Property backdrop-filter value 'none'] + expected: FAIL + + [Property backdrop-filter value 'grayscale()'] + expected: FAIL + + [Property backdrop-filter value 'brightness()'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/filter-effects/parsing/color-interpolation-filters-computed.html.ini b/tests/wpt/metadata/css/filter-effects/parsing/color-interpolation-filters-computed.html.ini index 920feb5800d..196307a049d 100644 --- a/tests/wpt/metadata/css/filter-effects/parsing/color-interpolation-filters-computed.html.ini +++ b/tests/wpt/metadata/css/filter-effects/parsing/color-interpolation-filters-computed.html.ini @@ -8,3 +8,12 @@ [Property color-interpolation-filters value 'srgb' computes to 'srgb'] expected: FAIL + [Property color-interpolation-filters value 'srgb'] + expected: FAIL + + [Property color-interpolation-filters value 'auto'] + expected: FAIL + + [Property color-interpolation-filters value 'linearrgb'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/filter-effects/parsing/filter-computed.html.ini b/tests/wpt/metadata/css/filter-effects/parsing/filter-computed.html.ini index 9b57d470e5b..ee892e282ec 100644 --- a/tests/wpt/metadata/css/filter-effects/parsing/filter-computed.html.ini +++ b/tests/wpt/metadata/css/filter-effects/parsing/filter-computed.html.ini @@ -14,3 +14,12 @@ [Property filter value 'blur(10px) url("https://www.example.com/picture.svg#f") contrast(20) brightness(30)' computes to 'blur(10px) url("https://www.example.com/picture.svg#f") contrast(20) brightness(30)'] expected: FAIL + [Property filter value 'blur(10px) url("https://www.example.com/picture.svg#f") contrast(20) brightness(30)'] + expected: FAIL + + [Property filter value 'drop-shadow(1px 2px)'] + expected: FAIL + + [Property filter value 'drop-shadow(rgb(4, 5, 6) 1px 2px 0px)'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/filter-effects/parsing/flood-color-computed.html.ini b/tests/wpt/metadata/css/filter-effects/parsing/flood-color-computed.html.ini index b99b3891082..d5095f991c8 100644 --- a/tests/wpt/metadata/css/filter-effects/parsing/flood-color-computed.html.ini +++ b/tests/wpt/metadata/css/filter-effects/parsing/flood-color-computed.html.ini @@ -23,3 +23,27 @@ [Property flood-color value 'teal' computes to 'rgb(0, 128, 128)'] expected: FAIL + [Property flood-color value 'rgb(100%, 100%, 0%)'] + expected: FAIL + + [Property flood-color value 'red'] + expected: FAIL + + [Property flood-color value 'hsl(120, 100%, 50%)'] + expected: FAIL + + [Property flood-color value 'teal'] + expected: FAIL + + [Property flood-color value 'currentcolor'] + expected: FAIL + + [Property flood-color value 'rgb(0, 0, 255)'] + expected: FAIL + + [Property flood-color value '#00FF00'] + expected: FAIL + + [Property flood-color value 'transparent'] + expected: FAIL + diff --git a/tests/wpt/metadata/css/filter-effects/parsing/lighting-color-computed.html.ini b/tests/wpt/metadata/css/filter-effects/parsing/lighting-color-computed.html.ini index f03ad70aaf9..6e8b420a5af 100644 --- a/tests/wpt/metadata/css/filter-effects/parsing/lighting-color-computed.html.ini +++ b/tests/wpt/metadata/css/filter-effects/parsing/lighting-color-computed.html.ini @@ -2,3 +2,6 @@ [Property lighting-color value 'rgb(1, 2, 3)' computes to 'rgb(1, 2, 3)'] expected: FAIL + [Property lighting-color value 'rgb(1, 2, 3)'] + expected: FAIL + diff --git a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini b/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini deleted file mode 100644 index d3f46c22377..00000000000 --- a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_html.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[contenttype_html.html] - expected: CRASH diff --git a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini b/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini deleted file mode 100644 index c3916f8555d..00000000000 --- a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_txt.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[contenttype_txt.html] - expected: CRASH diff --git a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini b/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini deleted file mode 100644 index cde6fe16ee2..00000000000 --- a/tests/wpt/metadata/dom/nodes/Document-contentType/contentType/contenttype_xml.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[contenttype_xml.html] - expected: CRASH diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini index 0f615a03436..7f5bd9d3587 100644 --- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini @@ -309,18 +309,3 @@ [ + diff --git a/tests/wpt/web-platform-tests/svg-aam/README.md b/tests/wpt/web-platform-tests/svg-aam/README.md index e9163e35361..a1dcef58700 100644 --- a/tests/wpt/web-platform-tests/svg-aam/README.md +++ b/tests/wpt/web-platform-tests/svg-aam/README.md @@ -3,7 +3,7 @@ svg-aam: Tests for the SVG Accessibility API Mappings The [SVG AAM Recommendation](https://www.w3.org/TR/svg-aam-1.0) define extensions to SVG for support of extended semantics. These -semantics make it easier for Assistive Technologies to intepret and +semantics make it easier for Assistive Technologies to interpret and present content to users with varying physical and cognitive abilities. The purpose of these tests is to help ensure that user agents support the diff --git a/tests/wpt/web-platform-tests/svg/META.yml b/tests/wpt/web-platform-tests/svg/META.yml index ee0fff087c4..a928f0c3991 100644 --- a/tests/wpt/web-platform-tests/svg/META.yml +++ b/tests/wpt/web-platform-tests/svg/META.yml @@ -7,3 +7,4 @@ suggested_reviewers: - svgeesus - dirkschulze - fsoder + - shallawa diff --git a/tests/wpt/web-platform-tests/svg/animations/discard-on-discard.html b/tests/wpt/web-platform-tests/svg/animations/discard-on-discard.html deleted file mode 100644 index 4a6b9f9368d..00000000000 --- a/tests/wpt/web-platform-tests/svg/animations/discard-on-discard.html +++ /dev/null @@ -1,54 +0,0 @@ - - - -Test the behavior of one discard applied on another discard - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg b/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg new file mode 100644 index 00000000000..116c61c45eb --- /dev/null +++ b/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-strokewidth-non-scaling-stroke.svg @@ -0,0 +1,13 @@ + + Markers: markerUnits=strokeWidth with vector-effect=non-scaling-stroke + + + + + + + + diff --git a/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg b/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg new file mode 100644 index 00000000000..7c4c5e0fcf3 --- /dev/null +++ b/tests/wpt/web-platform-tests/svg/painting/reftests/marker-units-userspaceonuse-non-scaling-stroke.svg @@ -0,0 +1,13 @@ + + Markers: markerUnits=userSpaceOnUse with vector-effect=non-scaling-stroke + + + + + + + + diff --git a/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-empty-string.svg b/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-empty-string.svg new file mode 100644 index 00000000000..28f5da4a3e4 --- /dev/null +++ b/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-empty-string.svg @@ -0,0 +1,6 @@ + + requiredExtensions: present but empty attribute evaluates to false + + + + diff --git a/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-xhtml.tentative.svg b/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-xhtml.tentative.svg new file mode 100644 index 00000000000..911f983cab6 --- /dev/null +++ b/tests/wpt/web-platform-tests/svg/struct/reftests/requiredextensions-xhtml.tentative.svg @@ -0,0 +1,12 @@ + + requiredExtensions: support for HTML/XHTML (non-normative) + + + + +
+ +
+ +
+
diff --git a/tests/wpt/web-platform-tests/tools/ci/run_tc.py b/tests/wpt/web-platform-tests/tools/ci/run_tc.py index b4cb2b01b97..482de1ad336 100755 --- a/tests/wpt/web-platform-tests/tools/ci/run_tc.py +++ b/tests/wpt/web-platform-tests/tools/ci/run_tc.py @@ -102,8 +102,12 @@ def get_parser(): help="Install web-platform.test certificates to UA store") p.add_argument("--no-install-certificates", action="store_false", default=None, help="Don't install web-platform.test certificates to UA store") - p.add_argument("--rev", - help="Revision that the task_head ref is expected to point to") + p.add_argument("--ref", + help="Git ref for the commit that should be run") + p.add_argument("--head-rev", + help="Commit at the head of the branch when the decision task ran") + p.add_argument("--merge-rev", + help="Provisional merge commit for PR when the decision task ran") p.add_argument("script", help="Script to run for the job") p.add_argument("script_args", @@ -262,13 +266,65 @@ def setup_environment(args): if args.oom_killer: start_userspace_oom_killer() - if args.checkout: - checkout_revision(args.checkout) +def setup_repository(args): + is_pr = os.environ.get("GITHUB_PULL_REQUEST", "false") != "false" + + # Initially task_head points at the same commit as the ref we want to test. + # However that may not be the same commit as we actually want to test if + # the branch changed since the decision task ran. The branch may have + # changed because someone has pushed more commits (either to the PR + # or later commits to the branch), or because someone has pushed to the + # base branch for the PR. + # + # In that case we take a different approach depending on whether this is a + # PR or a push to a branch. + # If this is a push to a branch, and the original commit is still fetchable, + # we try to fetch that (it may not be in the case of e.g. a force push). + # If it's not fetchable then we fail the run. + # For a PR we are testing the provisional merge commit. If that's changed it + # could be that the PR branch was updated or the base branch was updated. In the + # former case we fail the run because testing an old commit is a waste of + # resources. In the latter case we assume it's OK to use the current merge + # instead of the one at the time the decision task ran. + + if args.ref: + if is_pr: + assert args.ref.endswith("/merge") + expected_head = args.merge_rev + else: + expected_head = args.head_rev + + task_head = run(["git", "rev-parse", "task_head"], return_stdout=True).strip() + + if task_head != expected_head: + if not is_pr: + try: + run(["git", "fetch", "origin", "%s:task_head" % expected_head]) + except subprocess.CalledProcessError: + print("CRITICAL: task_head points at %s, expected %s and " + "unable to fetch expected commit.\n" + "This may be because the branch was updated" % (task_head, args.rev)) + sys.exit(1) + else: + # Convert the refs/pulls//merge to refs/pulls//head + head_ref = args.ref.rsplit("/", 1)[0] + "/head" + try: + remote_head = run(["git", "ls-remote", "origin", head_ref], + return_stdout=True).split("\t")[0] + except subprocess.CalledProcessError: + print("CRITICAL: Failed to read remote ref %s" % head_ref) + sys.exit(1) + if remote_head != args.head_rev: + print("CRITICAL: task_head points at %s, expected %s. " + "This may be because the branch was updated" % (task_head, args.rev)) + sys.exit(1) + print("INFO: Merge commit changed from %s to %s due to base branch changes. " + "Running task anyway." % (expected_head, task_head)) -def setup_repository(): if os.environ.get("GITHUB_PULL_REQUEST", "false") != "false": - parents = run(["git", "show", "--no-patch", "--format=%P", "task_head"], return_stdout=True).strip().split() + parents = run(["git", "rev-parse", "task_head^@"], + return_stdout=True).strip().split() if len(parents) == 2: base_head = parents[0] pr_head = parents[1] @@ -278,7 +334,8 @@ def setup_repository(): else: print("ERROR: Pull request HEAD wasn't a 2-parent merge commit; " "expected to test the merge of PR into the base") - commit = run(["git", "show", "--no-patch", "--format=%H", "task_head"], return_stdout=True).strip() + commit = run(["git", "rev-parse", "task_head"], + return_stdout=True).strip() print("HEAD: %s" % commit) print("Parents: %s" % ", ".join(parents)) sys.exit(1) @@ -289,6 +346,14 @@ def setup_repository(): # TODO: move this somewhere earlier in the task run(["git", "fetch", "--quiet", "origin", "%s:%s" % (branch, branch)]) + checkout_rev = args.checkout if args.checkout is not None else "task_head" + checkout_revision(checkout_rev) + + refs = run(["git", "for-each-ref", "refs/heads"], return_stdout=True) + print("INFO: git refs:\n%s" % refs) + print("INFO: checked out commit:\n%s" % run(["git", "rev-parse", "HEAD"], + return_stdout=True)) + def fetch_event_data(): try: @@ -333,13 +398,6 @@ def include_job(job): def main(): args = get_parser().parse_args() - if args.rev is not None: - task_head = run(["git", "rev-parse", "task_head"], return_stdout=True).strip() - if task_head != args.rev: - print("CRITICAL: task_head points at %s, expected %s. " - "This may be because the branch was updated" % (task_head, args.rev)) - sys.exit(1) - if "TASK_EVENT" in os.environ: event = json.loads(os.environ["TASK_EVENT"]) else: @@ -348,7 +406,7 @@ def main(): if event: set_variables(event) - setup_repository() + setup_repository(args) # Hack for backwards compatibility if args.script in ["run-all", "lint", "update_built", "tools_unittest", diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/decision.py b/tests/wpt/web-platform-tests/tools/ci/tc/decision.py index 92a27ef79ab..0c935b93f8e 100644 --- a/tests/wpt/web-platform-tests/tools/ci/tc/decision.py +++ b/tests/wpt/web-platform-tests/tools/ci/tc/decision.py @@ -121,24 +121,35 @@ def get_fetch_rev(event): is_pr, _ = get_triggers(event) if is_pr: # Try to get the actual rev so that all non-decision tasks are pinned to that - ref = "refs/pull/%s/merge" % event["pull_request"]["number"] - try: - output = subprocess.check_output(["git", "ls-remote", "origin", ref]) - except subprocess.CalledProcessError: - import traceback - logger.error(traceback.format_exc()) - logger.error("Failed to get merge commit sha1") - return ref, None - if not output: - logger.error("Failed to get merge commit") - return ref, None - return ref, output.split()[0] + rv = ["refs/pull/%s/merge" % event["pull_request"]["number"]] + # For every PR GitHub maintains a 'head' branch with commits from the + # PR, and a 'merge' branch containing a merge commit between the base + # branch and the PR. + for ref_type in ["head", "merge"]: + ref = "refs/pull/%s/%s" % (event["pull_request"]["number"], ref_type) + sha = None + try: + output = subprocess.check_output(["git", "ls-remote", "origin", ref]) + except subprocess.CalledProcessError: + import traceback + logger.error(traceback.format_exc()) + logger.error("Failed to get commit sha1 for %s" % ref) + else: + if not output: + logger.error("Failed to get commit for %s" % ref) + else: + sha = output.split()[0] + rv.append(sha) + rv = tuple(rv) else: - return event["ref"], event["after"] + # For a branch push we have a ref and a head but no merge SHA + rv = (event["ref"], event["after"], None) + assert len(rv) == 3 + return rv def build_full_command(event, task): - fetch_ref, fetch_sha = get_fetch_rev(event) + fetch_ref, head_sha, merge_sha = get_fetch_rev(event) cmd_args = { "task_name": task["name"], "repo_url": event["repository"]["clone_url"], @@ -149,8 +160,11 @@ def build_full_command(event, task): options = task.get("options", {}) options_args = [] - if fetch_sha is not None: - options_args.append("--rev=%s" % fetch_sha) + options_args.append("--ref=%s" % fetch_ref) + if head_sha is not None: + options_args.append("--head-rev=%s" % head_sha) + if merge_sha is not None: + options_args.append("--merge-rev=%s" % merge_sha) if options.get("oom-killer"): options_args.append("--oom-killer") if options.get("xvfb"): @@ -162,8 +176,6 @@ def build_full_command(event, task): # Check out the expected SHA unless it is overridden (e.g. to base_head). if options.get("checkout"): options_args.append("--checkout=%s" % options["checkout"]) - else: - options_args.append("--checkout=%s" % fetch_sha) for browser in options.get("browser", []): options_args.append("--browser=%s" % browser) if options.get("channel"): @@ -182,7 +194,7 @@ def build_full_command(event, task): return ["/bin/bash", "--login", - "-c", + "-xc", """ ~/start.sh \ %(repo_url)s \ diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml index a64ef374921..6e5e1b5070a 100644 --- a/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml +++ b/tests/wpt/web-platform-tests/tools/ci/tc/tasks/test.yml @@ -82,6 +82,8 @@ components: browser-chrome: {} + browser-servo: {} + tox-python2: env: TOXENV: py27 @@ -164,6 +166,11 @@ tasks: use: - trigger-weekly - trigger-push + - vars: + browser: servo + channel: nightly + use: + - trigger-push do: - ${vars.browser}-${vars.channel}-${vars.suite}: diff --git a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py index d6cbfba4e2c..4280387127d 100644 --- a/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py +++ b/tests/wpt/web-platform-tests/tools/ci/tc/tests/test_valid.py @@ -64,7 +64,7 @@ def test_verify_payload(): with open(data_path(filename), encoding="utf8") as f: event = json.load(f) - with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(event["after"], None)): + with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(None, event["after"], None)): with mock.patch("tools.ci.tc.decision.get_run_jobs", return_value=set(jobs)): task_id_map = decide(event) for name, (task_id, task_data) in task_id_map.items(): @@ -212,7 +212,7 @@ def test_verify_payload(): 'wpt-webkitgtk_minibrowser-nightly-wdspec-1'}) ]) def test_schedule_tasks(event_path, is_pr, files_changed, expected): - with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(is_pr, None)): + with mock.patch("tools.ci.tc.decision.get_fetch_rev", return_value=(None, None, None)): with mock.patch("tools.wpt.testfiles.repo_files_changed", return_value=files_changed): with open(data_path(event_path), encoding="utf8") as event_file: diff --git a/tests/wpt/web-platform-tests/tools/manifest/testpaths.py b/tests/wpt/web-platform-tests/tools/manifest/testpaths.py index 3c1f09d4373..2197792cd64 100644 --- a/tests/wpt/web-platform-tests/tools/manifest/testpaths.py +++ b/tests/wpt/web-platform-tests/tools/manifest/testpaths.py @@ -32,6 +32,8 @@ def create_parser(): parser = argparse.ArgumentParser() parser.add_argument( "-p", "--path", type=abs_path, help="Path to manifest file.") + parser.add_argument( + "--src-root", type=abs_path, default=None, help="Path to root of sourcetree.") parser.add_argument( "--tests-root", type=abs_path, default=wpt_root, help="Path to root of tests.") parser.add_argument( @@ -55,25 +57,35 @@ def create_parser(): return parser -def get_path_id_map(manifest_file, test_ids): - # type: (Manifest, Iterable[Text]) -> Dict[Text, List[Text]] +def get_path_id_map(src_root, tests_root, manifest_file, test_ids): + # type: (Text, Text, Manifest, Iterable[Text]) -> Dict[Text, List[Text]] test_ids = set(test_ids) path_id_map = defaultdict(list) # type: Dict[Text, List[Text]] + compute_rel_path = src_root != tests_root + for item_type, path, tests in manifest_file: for test in tests: if test.id in test_ids: - path_id_map[path].append(test.id) + if compute_rel_path: + rel_path = os.path.relpath(os.path.join(tests_root, path), + src_root) + else: + rel_path = path + path_id_map[rel_path].append(test.id) return path_id_map -def run(**kwargs): - # type: (**Any) -> None +def get_paths(**kwargs): + # type: (**Any) -> Dict[Text, List[Text]] tests_root = kwargs["tests_root"] assert tests_root is not None path = kwargs["path"] if path is None: path = os.path.join(kwargs["tests_root"], "MANIFEST.json") + src_root = kwargs["src_root"] + if src_root is None: + src_root = tests_root manifest_file = load_and_update(tests_root, path, @@ -82,11 +94,21 @@ def run(**kwargs): rebuild=kwargs["rebuild"], cache_root=kwargs["cache_root"]) - path_id_map = get_path_id_map(manifest_file, kwargs["test_ids"]) - if kwargs["json"]: + return get_path_id_map(src_root, tests_root, manifest_file, kwargs["test_ids"]) + + +def write_output(path_id_map, as_json): + # type: (Dict[Text, List[Text]], bool) -> None + if as_json: print(json.dumps(path_id_map)) else: for path, test_ids in sorted(iteritems(path_id_map)): print(path) for test_id in sorted(test_ids): print(" " + test_id) + + +def run(**kwargs): + # type: (**Any) -> None + path_id_map = get_paths(**kwargs) + write_output(path_id_map, as_json=kwargs["json"]) diff --git a/tests/wpt/web-platform-tests/tools/wpt/browser.py b/tests/wpt/web-platform-tests/tools/wpt/browser.py index a94d5509cc8..3ee98d959ec 100644 --- a/tests/wpt/web-platform-tests/tools/wpt/browser.py +++ b/tests/wpt/web-platform-tests/tools/wpt/browser.py @@ -712,6 +712,20 @@ class ChromeAndroid(ChromeAndroidBase): return "com.android.chrome" +#TODO(aluo): This is largely copied from the AndroidWebView implementation. +# Tests are not running for weblayer yet (crbug/1019521), this +# initial implementation will help to reproduce and debug any issues. +class AndroidWeblayer(ChromeAndroidBase): + """Weblayer-specific interface for Android.""" + + product = "android_weblayer" + # TODO(aluo): replace this with weblayer version after tests are working. + requirements = "requirements_android_webview.txt" + + def find_binary(self, venv_path=None, channel=None): + return "org.chromium.weblayer.shell" + + class AndroidWebview(ChromeAndroidBase): """Webview-specific interface for Android. @@ -1108,7 +1122,7 @@ class Servo(Browser): _, _, decompress = self.platform_components() - resp = self._get(dest, channel) + resp = self._get(channel) decompress(resp.raw, dest=dest) path = find_executable("servo", os.path.join(dest, "servo")) st = os.stat(path) diff --git a/tests/wpt/web-platform-tests/tools/wpt/run.py b/tests/wpt/web-platform-tests/tools/wpt/run.py index 4c1f2c99128..0c732e7ae8a 100644 --- a/tests/wpt/web-platform-tests/tools/wpt/run.py +++ b/tests/wpt/web-platform-tests/tools/wpt/run.py @@ -106,7 +106,7 @@ otherwise install OpenSSL and ensure that it's on your $PATH.""") def check_environ(product): - if product not in ("android_webview", "chrome", "chrome_android", "firefox", "firefox_android", "servo"): + if product not in ("android_weblayer", "android_webview", "chrome", "chrome_android", "firefox", "firefox_android", "servo"): config_builder = serve.build_config(os.path.join(wpt_root, "config.json")) # Override the ports to avoid looking for free ports config_builder.ssl = {"type": "none"} @@ -399,6 +399,31 @@ class ChromeiOS(BrowserSetup): raise WptrunError("Unable to locate or install chromedriver binary") +class AndroidWeblayer(BrowserSetup): + name = "android_weblayer" + browser_cls = browser.AndroidWeblayer + + def setup_kwargs(self, kwargs): + if kwargs.get("device_serial"): + self.browser.device_serial = kwargs["device_serial"] + if kwargs["webdriver_binary"] is None: + webdriver_binary = self.browser.find_webdriver() + + if webdriver_binary is None: + install = self.prompt_install("chromedriver") + + if install: + logger.info("Downloading chromedriver") + webdriver_binary = self.browser.install_webdriver(dest=self.venv.bin_path) + else: + logger.info("Using webdriver binary %s" % webdriver_binary) + + if webdriver_binary: + kwargs["webdriver_binary"] = webdriver_binary + else: + raise WptrunError("Unable to locate or install chromedriver binary") + + class AndroidWebview(BrowserSetup): name = "android_webview" browser_cls = browser.AndroidWebview @@ -638,6 +663,7 @@ class Epiphany(BrowserSetup): product_setup = { + "android_weblayer": AndroidWeblayer, "android_webview": AndroidWebview, "firefox": Firefox, "firefox_android": FirefoxAndroid, diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst b/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst index 77938abe03d..e0bc7a850bf 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst +++ b/tests/wpt/web-platform-tests/tools/wptrunner/docs/expectation.rst @@ -248,7 +248,7 @@ When used for expectation data, manifests have the following format: base test URL, in which case the fuzziness applies to any comparison with that URL, or takes the form lhs url, comparison, rhs url, in which case the fuzziness only applies for any - comparison involving that specifc pair of URLs. Some illustrative + comparison involving that specific pair of URLs. Some illustrative examples are given below. * Variables ``debug``, ``os``, ``version``, ``processor`` and diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/__init__.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/__init__.py index 957d2a689ac..da68ddb8618 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/__init__.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/__init__.py @@ -22,7 +22,8 @@ All classes and functions named in the above dict must be imported into the module global scope. """ -product_list = ["android_webview", +product_list = ["android_weblayer", + "android_webview", "chrome", "chrome_android", "chrome_ios", diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py new file mode 100644 index 00000000000..93f4d6b630d --- /dev/null +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/browsers/android_weblayer.py @@ -0,0 +1,135 @@ +import subprocess + +from .base import Browser, ExecutorBrowser, require_arg +from .base import get_timeout_multiplier # noqa: F401 +from .chrome import executor_kwargs as chrome_executor_kwargs +from ..webdriver_server import ChromeDriverServer +from ..executors.executorwebdriver import (WebDriverTestharnessExecutor, # noqa: F401 + WebDriverRefTestExecutor) # noqa: F401 +from ..executors.executorchrome import ChromeDriverWdspecExecutor # noqa: F401 + + +__wptrunner__ = {"product": "android_weblayer", + "check_args": "check_args", + "browser": "WeblayerShell", + "executor": {"testharness": "WebDriverTestharnessExecutor", + "reftest": "WebDriverRefTestExecutor", + "wdspec": "ChromeDriverWdspecExecutor"}, + "browser_kwargs": "browser_kwargs", + "executor_kwargs": "executor_kwargs", + "env_extras": "env_extras", + "env_options": "env_options", + "timeout_multiplier": "get_timeout_multiplier"} + +_wptserve_ports = set() + + +def check_args(**kwargs): + require_arg(kwargs, "webdriver_binary") + + +def browser_kwargs(test_type, run_info_data, config, **kwargs): + return {"binary": kwargs["binary"], + "device_serial": kwargs["device_serial"], + "webdriver_binary": kwargs["webdriver_binary"], + "webdriver_args": kwargs.get("webdriver_args")} + + +def executor_kwargs(test_type, server_config, cache_manager, run_info_data, + **kwargs): + # Use update() to modify the global list in place. + _wptserve_ports.update(set( + server_config['ports']['http'] + server_config['ports']['https'] + + server_config['ports']['ws'] + server_config['ports']['wss'] + )) + + executor_kwargs = chrome_executor_kwargs(test_type, server_config, + cache_manager, run_info_data, + **kwargs) + del executor_kwargs["capabilities"]["goog:chromeOptions"]["prefs"] + del executor_kwargs["capabilities"]["goog:chromeOptions"]["useAutomationExtension"] + capabilities = executor_kwargs["capabilities"] + # Note that for WebLayer, we launch a test shell and have the test shell use + # WebLayer. + # https://cs.chromium.org/chromium/src/weblayer/shell/android/shell_apk/ + capabilities["goog:chromeOptions"]["androidPackage"] = \ + "org.chromium.weblayer.shell" + capabilities["goog:chromeOptions"]["androidActivity"] = ".WebLayerShellActivity" + if kwargs.get('device_serial'): + capabilities["goog:chromeOptions"]["androidDeviceSerial"] = kwargs['device_serial'] + + # Workaround: driver.quit() cannot quit WeblayerShell. + executor_kwargs["pause_after_test"] = False + # Workaround: driver.close() is not supported. + executor_kwargs["restart_after_test"] = True + executor_kwargs["close_after_done"] = False + return executor_kwargs + + +def env_extras(**kwargs): + return [] + + +def env_options(): + # allow the use of host-resolver-rules in lieu of modifying /etc/hosts file + return {"server_host": "127.0.0.1"} + + +#TODO: refactor common elements of WeblayerShell and ChromeAndroidBrowser +class WeblayerShell(Browser): + """Chrome is backed by chromedriver, which is supplied through + ``wptrunner.webdriver.ChromeDriverServer``. + """ + + def __init__(self, logger, binary, webdriver_binary="chromedriver", + device_serial=None, + webdriver_args=None): + """Creates a new representation of Chrome. The `binary` argument gives + the browser binary to use for testing.""" + Browser.__init__(self, logger) + self.binary = binary + self.device_serial = device_serial + self.server = ChromeDriverServer(self.logger, + binary=webdriver_binary, + args=webdriver_args) + self.setup_adb_reverse() + + def _adb_run(self, args): + cmd = ['adb'] + if self.device_serial: + cmd.extend(['-s', self.device_serial]) + cmd.extend(args) + self.logger.info(' '.join(cmd)) + subprocess.check_call(cmd) + + def setup_adb_reverse(self): + self._adb_run(['wait-for-device']) + self._adb_run(['forward', '--remove-all']) + self._adb_run(['reverse', '--remove-all']) + # "adb reverse" basically forwards network connection from device to + # host. + for port in _wptserve_ports: + self._adb_run(['reverse', 'tcp:%d' % port, 'tcp:%d' % port]) + + def start(self, **kwargs): + self.server.start(block=False) + + def stop(self, force=False): + self.server.stop(force=force) + + def pid(self): + return self.server.pid + + def is_alive(self): + # TODO(ato): This only indicates the driver is alive, + # and doesn't say anything about whether a browser session + # is active. + return self.server.is_alive + + def cleanup(self): + self.stop() + self._adb_run(['forward', '--remove-all']) + self._adb_run(['reverse', '--remove-all']) + + def executor_browser(self): + return ExecutorBrowser, {"webdriver_url": self.server.url} diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py index c8a26d042eb..9e302107118 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/base.py @@ -130,6 +130,7 @@ class ExecutorException(Exception): class TimedRunner(object): def __init__(self, logger, func, protocol, url, timeout, extra_timeout): self.func = func + self.logger = logger self.result = None self.protocol = protocol self.url = url @@ -149,7 +150,8 @@ class TimedRunner(object): # Add twice the timeout multiplier since the called function is expected to # wait at least self.timeout + self.extra_timeout and this gives some leeway - finished = self.result_flag.wait(self.timeout + 2 * self.extra_timeout) + timeout = self.timeout + 2 * self.extra_timeout if self.timeout else None + finished = self.result_flag.wait(timeout) if self.result is None: if finished: # flag is True unless we timeout; this *shouldn't* happen, but @@ -781,7 +783,7 @@ class SetPermissionAction(object): state = permission_params["state"] one_realm = permission_params.get("oneRealm", False) self.logger.debug("Setting permission %s to %s, oneRealm=%s" % (name, state, one_realm)) - self.protocol.set_permission.set_permission(name, state, one_realm) + self.protocol.set_permission.set_permission(descriptor, state, one_realm) class AddVirtualAuthenticatorAction(object): def __init__(self, logger, protocol): diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py index 8ea59b2577d..221f48a3ea9 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorwebdriver.py @@ -208,11 +208,9 @@ class WebDriverSetPermissionProtocolPart(SetPermissionProtocolPart): def setup(self): self.webdriver = self.parent.webdriver - def set_permission(self, name, state, one_realm): + def set_permission(self, descriptor, state, one_realm): permission_params_dict = { - "descriptor": { - "name": name - }, + "descriptor": descriptor, "state": state, } if one_realm is not None: diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/protocol.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/protocol.py index 1a47fa9f1d8..a1e8dacecb6 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/protocol.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/protocol.py @@ -312,10 +312,10 @@ class SetPermissionProtocolPart(ProtocolPart): name = "set_permission" @abstractmethod - def set_permission(self, name, state, one_realm=False): + def set_permission(self, descriptor, state, one_realm=False): """Set permission state. - :param name: The name of the permission to set. + :param descriptor: A PermissionDescriptor object. :param state: The state to set the permission to. :param one_realm: Whether to set the permission for only one realm.""" pass diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py index 8dece20a8e9..f1b1faa4498 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/testrunner.py @@ -561,14 +561,17 @@ class TestRunnerManager(threading.Thread): self.logger.info("Run %d/%d" % (self.run_count, self.rerun)) self.send_message("reset") self.run_count += 1 - # Factor of 3 on the extra timeout here is based on allowing the executor - # at least test.timeout + 2 * extra_timeout to complete, - # which in turn is based on having several layers of timeout inside the executor - wait_timeout = (self.state.test.timeout * self.executor_kwargs['timeout_multiplier'] + - 3 * self.executor_cls.extra_timeout) - self.timer = threading.Timer(wait_timeout, self._timeout) + if self.debug_info is None: + # Factor of 3 on the extra timeout here is based on allowing the executor + # at least test.timeout + 2 * extra_timeout to complete, + # which in turn is based on having several layers of timeout inside the executor + wait_timeout = (self.state.test.timeout * self.executor_kwargs['timeout_multiplier'] + + 3 * self.executor_cls.extra_timeout) + self.timer = threading.Timer(wait_timeout, self._timeout) + self.send_message("run_test", self.state.test) - self.timer.start() + if self.timer: + self.timer.start() def _timeout(self): self.logger.info("Got timeout in harness") diff --git a/tests/wpt/web-platform-tests/trusted-types/TrustedTypePolicyFactory-constants.tentative.html b/tests/wpt/web-platform-tests/trusted-types/TrustedTypePolicyFactory-constants.tentative.html index 001a6cea481..0ba2eb62375 100644 --- a/tests/wpt/web-platform-tests/trusted-types/TrustedTypePolicyFactory-constants.tentative.html +++ b/tests/wpt/web-platform-tests/trusted-types/TrustedTypePolicyFactory-constants.tentative.html @@ -23,4 +23,22 @@ assert_true(trustedTypes.isHTML(trustedTypes.emptyHTML)); assert_equals(trustedTypes.emptyHTML.toString(), ""); }, 'trustedTypes.emptyHTML cannot be redefined via defineProperty.'); + + test(t => { + const empty = trustedTypes.emptyScript; + assert_true(trustedTypes.isScript(empty)); + assert_equals(empty.toString(), ""); + }, 'trustedTypes.emptyScript returns the intended value.'); + + test(t => { + try { trustedTypes.emptyScript = 'fake'; } catch { } + assert_true(trustedTypes.isScript(trustedTypes.emptyScript)); + assert_equals(trustedTypes.emptyScript.toString(), ""); + }, 'trustedTypes.emptyScript cannot be redefined.'); + + test(t => { + try { Object.defineProperty(TrustedTypes, 'emptyScript', 'fake'); } catch { } + assert_true(trustedTypes.isScript(trustedTypes.emptyScript)); + assert_equals(trustedTypes.emptyScript.toString(), ""); + }, 'trustedTypes.emptyScript cannot be redefined via defineProperty.'); diff --git a/tests/wpt/web-platform-tests/trusted-types/block-text-node-insertion-into-script-element.tentative.html b/tests/wpt/web-platform-tests/trusted-types/block-text-node-insertion-into-script-element.tentative.html index a6aa061f730..04b19f7e421 100644 --- a/tests/wpt/web-platform-tests/trusted-types/block-text-node-insertion-into-script-element.tentative.html +++ b/tests/wpt/web-platform-tests/trusted-types/block-text-node-insertion-into-script-element.tentative.html @@ -3,64 +3,235 @@ -
+ + diff --git a/tests/wpt/web-platform-tests/wai-aria/README.md b/tests/wpt/web-platform-tests/wai-aria/README.md index 66d6d087f68..4e1a7706e33 100644 --- a/tests/wpt/web-platform-tests/wai-aria/README.md +++ b/tests/wpt/web-platform-tests/wai-aria/README.md @@ -3,7 +3,7 @@ Wai-aria: Tests for the WAI-ARIA Recommendations The [WAI ARIA Recommendations](https://www.w3.org/TR/wai-aria) define extensions to HTML4/5 for support of extended semantics. These -semantics make it easier for Assistive Technologies to intepret and +semantics make it easier for Assistive Technologies to interpret and present content to users with varying physical and cognitive abilities. The purpose of these tests is to help ensure that user agents support the diff --git a/tests/wpt/web-platform-tests/web-animations/interfaces/Animatable/animate.html b/tests/wpt/web-platform-tests/web-animations/interfaces/Animatable/animate.html index 2d09cdf4545..95d7db7bb3b 100644 --- a/tests/wpt/web-platform-tests/web-animations/interfaces/Animatable/animate.html +++ b/tests/wpt/web-platform-tests/web-animations/interfaces/Animatable/animate.html @@ -241,18 +241,28 @@ promise_test(async t => { }, 'Element.animate() does NOT trigger a style change event'); // Tests on pseudo-elements +// Some tests occur twice (on pseudo-elements with and without content) +// in order to test both code paths for tree-abiding pseudo-elements in blink. test(t => { const div = createDiv(t); div.classList.add('pseudo'); + getComputedStyle(div,"::before").content; // Sync style const anim = div.animate(null, {pseudoElement: '::before'}); assert_class_string(anim, 'Animation', 'The returned object is an Animation'); }, 'animate() with pseudoElement parameter creates an Animation object'); +test(t => { + const div = createDiv(t); + const anim = div.animate(null, {pseudoElement: '::before'}); + assert_class_string(anim, 'Animation', 'The returned object is an Animation'); +}, 'animate() with pseudoElement parameter without content creates an Animation object'); + test(t => { const div = createDiv(t); div.classList.add('pseudo'); div.style.display = 'list-item'; + getComputedStyle(div,"::marker").content; // Sync style const anim = div.animate(null, {pseudoElement: '::marker'}); assert_class_string(anim, 'Animation', 'The returned object is an Animation for ::marker'); }, 'animate() with pseudoElement parameter creates an Animation object for ::marker'); @@ -268,31 +278,45 @@ test(t => { test(t => { const div = createDiv(t); div.classList.add('pseudo'); + getComputedStyle(div,"::before").content; // Sync style const anim = div.animate(null, {pseudoElement: '::before'}); + assert_equals(anim.effect.target, div, 'The returned element has the correct target element'); assert_equals(anim.effect.pseudoElement, '::before', - 'The returned Animation targets to the correct selector'); + 'The returned Animation targets the correct selector'); }, 'animate() with pseudoElement an Animation object targeting ' + - 'to the correct pseudo-element'); + 'the correct pseudo-element'); + +test(t => { + const div = createDiv(t); + const anim = div.animate(null, {pseudoElement: '::before'}); + assert_equals(anim.effect.target, div, 'The returned element has the correct target element'); + assert_equals(anim.effect.pseudoElement, '::before', + 'The returned Animation targets the correct selector'); +}, 'animate() with pseudoElement without content creates an Animation object targeting ' + + 'the correct pseudo-element'); test(t => { const div = createDiv(t); div.classList.add('pseudo'); div.style.display = 'list-item'; + getComputedStyle(div,"::marker").content; // Sync style const anim = div.animate(null, {pseudoElement: '::marker'}); + assert_equals(anim.effect.target, div, 'The returned element has the correct target element'); assert_equals(anim.effect.pseudoElement, '::marker', - 'The returned Animation targets to the correct selector'); + 'The returned Animation targets the correct selector'); }, 'animate() with pseudoElement an Animation object targeting ' + - 'to the correct pseudo-element for ::marker'); + 'the correct pseudo-element for ::marker'); test(t => { const div = createDiv(t); div.classList.add('pseudo'); div.textContent = 'foo'; const anim = div.animate(null, {pseudoElement: '::first-line'}); + assert_equals(anim.effect.target, div, 'The returned element has the correct target element'); assert_equals(anim.effect.pseudoElement, '::first-line', - 'The returned Animation targets to the correct selector'); + 'The returned Animation targets the correct selector'); }, 'animate() with pseudoElement an Animation object targeting ' + - 'to the correct pseudo-element for ::first-line'); + 'the correct pseudo-element for ::first-line'); diff --git a/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/target.html b/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/target.html index 10f42eea4e5..a9827d64d3d 100644 --- a/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/target.html +++ b/tests/wpt/web-platform-tests/web-animations/interfaces/KeyframeEffect/target.html @@ -1,11 +1,17 @@ -KeyframeEffect.target +KeyframeEffect.target and .pseudoElement +
diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html index 0aaa0443649..7fcdf9156f8 100644 --- a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html +++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation-ref.html @@ -1,17 +1,18 @@ Reference for reverse running animation -
-

This test reverses the animation shortly after the box starts moving. If - the box doesn't move back to its original position, the test has failed. +

+ This test reverses the animation shortly after the box starts moving. If + any blue pixels are visible the test has failed.

diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html index 584aa0029ea..c5179a72c9d 100644 --- a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html +++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/reverse-running-animation.html @@ -6,36 +6,63 @@
-

This test reverses the animation shortly after the box starts moving. If - the box doesn't move back to its original position, the test has failed. -

+
+

+ This test reverses the animation shortly after the box starts moving. If + any blue pixels are visible the test has failed. +

diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html index b1fc43e7952..6687ad7612e 100644 --- a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html +++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-current-time-of-an-animation.html @@ -67,5 +67,74 @@ promise_test(async t => { }, 'Setting the current time of a pausing animation applies a pending playback' + ' rate'); + +// The following tests verify that currentTime can be set outside of the normal +// bounds of an animation. + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + await anim.ready; + + anim.currentTime = 200 * MS_PER_SEC; + assert_equals(anim.playState, 'finished'); + assert_time_equals_literal(anim.currentTime, 200 * MS_PER_SEC); +}, 'Setting the current time after the end with a positive playback rate'); + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + await anim.ready; + + anim.currentTime = -100 * MS_PER_SEC; + assert_equals(anim.playState, 'running'); + assert_time_equals_literal(anim.currentTime, -100 * MS_PER_SEC); + + await waitForAnimationFrames(2); + assert_greater_than(anim.currentTime, -100 * MS_PER_SEC); +}, 'Setting a negative current time with a positive playback rate'); + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + anim.updatePlaybackRate(-1); + await anim.ready; + + anim.currentTime = 200 * MS_PER_SEC; + assert_equals(anim.playState, 'running'); + assert_time_equals_literal(anim.currentTime, 200 * MS_PER_SEC); + + await waitForAnimationFrames(2); + assert_less_than(anim.currentTime, 200 * MS_PER_SEC); +}, 'Setting the current time after the end with a negative playback rate'); + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + anim.updatePlaybackRate(-1); + await anim.ready; + + anim.currentTime = -100 * MS_PER_SEC; + assert_equals(anim.playState, 'finished'); + assert_time_equals_literal(anim.currentTime, -100 * MS_PER_SEC); +}, 'Setting a negative current time with a negative playback rate'); + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + anim.updatePlaybackRate(0); + await anim.ready; + + // An animation with a playback rate of zero is never in the finished state + // even if currentTime is outside the normal range of [0, effect end]. + anim.currentTime = 200 * MS_PER_SEC; + assert_equals(anim.playState, 'running'); + assert_time_equals_literal(anim.currentTime, 200 * MS_PER_SEC); + await waitForAnimationFrames(2); + assert_time_equals_literal(anim.currentTime, 200 * MS_PER_SEC); + + anim.currentTime = -200 * MS_PER_SEC; + assert_equals(anim.playState, 'running'); + assert_time_equals_literal(anim.currentTime, -200 * MS_PER_SEC); + await waitForAnimationFrames(2); + assert_time_equals_literal(anim.currentTime, -200 * MS_PER_SEC); + +}, 'Setting the current time on an animation with a zero playback rate'); + diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html index 9d07d53df46..0522c43b16a 100644 --- a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html +++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-playback-rate-of-an-animation.html @@ -57,5 +57,54 @@ promise_test(async t => { assert_equals(animation.playbackRate, 1); }, 'Setting the playback rate should clear any pending playback rate'); +promise_test(async t => { + const animation = createDiv(t).animate(null, 100 * MS_PER_SEC); + animation.currentTime = 50 * MS_PER_SEC; + animation.pause(); + await animation.ready; + animation.playbackRate = 2; + // Ensure that the animation remains paused and current time is preserved. + assert_equals(animation.playState, 'paused'); + assert_time_equals_literal(animation.currentTime, 50 * MS_PER_SEC); +}, 'Setting the playback rate while paused preserves the current time and ' + + 'state'); + +promise_test(async t => { + const animation = createDiv(t).animate(null, 100 * MS_PER_SEC); + animation.currentTime = 150 * MS_PER_SEC; + await animation.ready; + animation.playbackRate = 2; + // Ensure that current time is preserved and does not snap to the effect end + // time. + assert_equals(animation.playState, 'finished'); + assert_time_equals_literal(animation.currentTime, 150 * MS_PER_SEC); +}, 'Setting the playback rate while finished preserves the current time'); + +promise_test(async t => { + const animation = createDiv(t).animate(null, 100 * MS_PER_SEC); + animation.currentTime = 150 * MS_PER_SEC; + await animation.ready; + assert_equals(animation.playState, 'finished'); + animation.playbackRate = -1; + // Ensure that current time does not snap to the effect end time and that the + // animation resumes playing. + assert_equals(animation.playState, 'running'); + assert_time_equals_literal(animation.currentTime, 150 * MS_PER_SEC); + await waitForAnimationFrames(2); + assert_less_than(animation.currentTime, 150 * MS_PER_SEC); +}, 'Reversing the playback rate while finished restarts the animation'); + + +promise_test(async t => { + const animation = createDiv(t).animate(null, 100 * MS_PER_SEC); + animation.currentTime = 50 * MS_PER_SEC; + await animation.ready; + animation.playbackRate = 0; + // Ensure that current time does not drift. + assert_equals(animation.playState, 'running'); + await waitForAnimationFrames(2); + assert_time_equals_literal(animation.currentTime, 50 * MS_PER_SEC); +}, 'Setting a zero playback rate while running preserves the current time'); + diff --git a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html index a1727994bdb..14c9c601005 100644 --- a/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html +++ b/tests/wpt/web-platform-tests/web-animations/timing-model/animations/setting-the-start-time-of-an-animation.html @@ -266,5 +266,36 @@ promise_test(async t => { assert_time_equals_literal(parseInt(anim.currentTime.toPrecision(5), 10), 50 * MS_PER_SEC); }, 'Setting the start time of a playing animation applies a pending playback rate'); +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + await anim.ready; + assert_equals(anim.playState, 'running'); + + // Setting the start time updates the finished state. The hold time is not + // constrained by the effect end time. + anim.startTime = -200 * MS_PER_SEC; + assert_equals(anim.playState, 'finished'); + + assert_times_equal(anim.currentTime, + document.timeline.currentTime + 200 * MS_PER_SEC); +}, 'Setting the start time on a running animation updates the play state'); + +promise_test(async t => { + const anim = createDiv(t).animate(null, 100 * MS_PER_SEC); + await anim.ready; + + // Setting the start time updates the finished state. The hold time is not + // constrained by the normal range of the animation time. + anim.currentTime = 100 * MS_PER_SEC; + assert_equals(anim.playState, 'finished'); + anim.playbackRate = -1; + assert_equals(anim.playState, 'running'); + anim.startTime = -200 * MS_PER_SEC; + assert_equals(anim.playState, 'finished'); + assert_times_equal(anim.currentTime, + -document.timeline.currentTime - 200 * MS_PER_SEC); +}, 'Setting the start time on a reverse running animation updates the play ' + + 'state'); + diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFErrorEvent_constructor.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFErrorEvent_constructor.https.html deleted file mode 100644 index 243893620c6..00000000000 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFErrorEvent_constructor.https.html +++ /dev/null @@ -1,20 +0,0 @@ - -NDEFErrorEvent constructor - - - - diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFMessage_constructor.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFMessage_constructor.https.html index f32f179b957..1c842f5c7b6 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFMessage_constructor.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFMessage_constructor.https.html @@ -13,7 +13,6 @@ test(() => { const message = new NDEFMessage(null); - assert_equals(message.url.length, 0, 'empty url'); assert_equals(message.records.length, 0, 'empty records'); }, 'NDEFMessage constructor with null init dict'); diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan.https.html index 78160fbcb2a..d3101ab8e1a 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan.https.html @@ -35,20 +35,6 @@ promise_test(async t => { await Promise.all(promises); }, "Test that NDEFReader.scan rejects if signal is not an AbortSignal."); -promise_test(async t => { - await waitSyntaxErrorPromise(t, {id: "www.a.com"}); -}, "Test that NDEFReader.scan rejects if NDEFScanOptions.id is missing \ -components."); - -promise_test(async t => { - await waitSyntaxErrorPromise(t, {id: "invalid"}); -}, "Test that NDEFReader.scan rejects if NDEFScanOptions.id is invalid."); - -promise_test(async t => { - await waitSyntaxErrorPromise(t, {id: "http://a.com"}); -}, "Test that NDEFReader.scan rejects if NDEFScanOptions.id has wrong \ -protocol."); - promise_test(async t => { if (window.testRunner) { // Deny nfc permissions for Chromium testrunner. @@ -59,6 +45,23 @@ promise_test(async t => { await promise_rejects(t, 'NotAllowedError', reader.scan()); }, "NDEFReader.scan should fail if user permission is not granted."); +// We do not provide NFC mock here to simulate that there has no available +// implementation for NFC Mojo interface. +promise_test(async t => { + if (window.testRunner) { + window.testRunner.setPermission('nfc', 'granted', + location.origin, location.origin); + } + const reader = new NDEFReader(); + const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); + const promise = readerWatcher.wait_for("error").then(event => { + assert_true(event instanceof ErrorEvent); + }); + await promise_rejects(t, 'NotSupportedError', reader.scan()); + await promise; +}, "Test that an error event happens if no implementation for NFC Mojo interface \ +is available."); + nfc_test(async (t, mockNFC) => { mockNFC.setHWStatus(NFCHWStatus.DISABLED); const reader = new NDEFReader(); @@ -93,56 +96,11 @@ nfc_test(async (t, mockNFC) => { assert_true(event instanceof NDEFReadingEvent); controller.abort(); }); - await reader.scan({signal : controller.signal, url: "https://a.com"}); + await reader.scan({signal : controller.signal}); mockNFC.setReadingMessage(createMessage([createTextRecord(test_text_data)])); await promise; -}, "Test that NDEFReader.scan succeeds if NDEFScanOptions.url is valid URL."); - -nfc_test(async (t, mockNFC) => { - const reader = new NDEFReader(); - const controller = new AbortController(); - const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); - const promise = readerWatcher.wait_for("reading").then(event => { - assert_true(event instanceof NDEFReadingEvent); - controller.abort(); - }); - await reader.scan({signal : controller.signal, url: "https://a.com/*"}); - - mockNFC.setReadingMessage(createMessage([createTextRecord(test_text_data)])); - await promise; -}, "Test that NDEFReader.scan succeeds if NDEFScanOptions.url is valid URL \ -with '*' wildcard character in path."); - -nfc_test(async (t, mockNFC) => { - const reader = new NDEFReader(); - const controller = new AbortController(); - const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); - const promise = readerWatcher.wait_for("reading").then(event => { - assert_true(event instanceof NDEFReadingEvent); - controller.abort(); - }); - await reader.scan({signal : controller.signal, url: "https://a.com/*/bar"}); - - mockNFC.setReadingMessage(createMessage([createTextRecord(test_text_data)])); - await promise; -}, "Test that NDEFReader.scan succeeds if NDEFScanOptions.url is valid URL \ -with '*' wildcard character in the beginning of path component followed by \ -subpath."); - -nfc_test(async (t, mockNFC) => { - const reader = new NDEFReader(); - const controller = new AbortController(); - const readerWatcher = new EventWatcher(t, reader, ["reading", "error"]); - const promise = readerWatcher.wait_for("reading").then(event => { - assert_true(event instanceof NDEFReadingEvent); - controller.abort(); - }); - await reader.scan({signal : controller.signal, url: ""}); - - mockNFC.setReadingMessage(createMessage([createTextRecord(test_text_data)])); - await promise; -}, "Test that NDEFReader.scan succeeds if NDEFScanOptions.url is empty."); +}, "Test that NDEFReader.scan matches any ids if NDEFScanOptions.id is undefined."); nfc_test(async (t, mockNFC) => { const reader = new NDEFReader(); diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html index 4c1e7de4400..850d9b9c088 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFReader_scan_filter.https.html @@ -62,12 +62,11 @@ const multiScanOptionsTests = message: createMessage([createRecord('w3.org:xyz', test_buffer_data)]) }, { - desc: "Test that the url of NDEFScanOptions filters relevant data" + + desc: "Test that the id of NDEFScanOptions filters relevant data" + " sources correctly.", - scanOptions: {id: `${location.origin}/custom/path`}, - unmatchedScanOptions: {id: `${location.origin}/custom/invalid`}, - message: {url: `${location.origin}/custom/path/update`, - records: [createTextRecord(test_text_data)]} + scanOptions: {id: test_record_id}, + unmatchedScanOptions: {id: 'non_sense_id'}, + message: {records: [createTextRecord(test_text_data)]} }, { desc: "Test that the mediaType of NDEFScanOptions filters relevant data" + @@ -131,12 +130,10 @@ const multiMessagesTests = }, { desc: "Test that filtering 'text' record from different messages" + - " correctly with NDEFScanOptions' url set.", - scanOptions: {id: `${location.origin}/custom/path`}, - message: {url: `${location.origin}/custom/path/update`, - records: [createTextRecord(test_text_data)]}, - unmatchedMessage: {url: `${location.origin}/custom/invalid`, - records: [createUrlRecord(test_url_data)]} + " correctly with NDEFScanOptions' id set.", + scanOptions: {id: test_record_id}, + message: {records: [createTextRecord(test_text_data)]}, + unmatchedMessage: {records: [createRecord('url', test_url_data, 'random_record_id')]} }, { desc: "Test that filtering 'mime' record from different messages" + diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html index 3d734105e9c..cc56f8a18bd 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFReadingEvent_constructor.https.html @@ -26,7 +26,6 @@ test(() => { const event = new NDEFReadingEvent('type', {serialNumber: '', message: null}); assert_equals(0, event.message.records.length, 'no records'); - assert_equals(0, event.message.url.length, 'empty url'); }, 'NDEFReadingEvent constructor with null message'); test(() => { diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFRecord_constructor.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFRecord_constructor.https.html index 1b2dda9bfc8..f3546b99dcb 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFRecord_constructor.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFRecord_constructor.https.html @@ -16,6 +16,12 @@ 'The record has neither type nor data.'); }, 'NDEFRecord constructor with null init dict'); + test(() => { + assert_throws(new TypeError, () => new NDEFRecord( + createRecord('empty', test_text_data, test_record_id)), + 'id does not apply for empty record type.'); + }, 'NDEFRecord constructor with empty record type and id'); + test(() => { assert_throws(new TypeError, () => new NDEFRecord( createRecord('empty', test_text_data, test_record_id, 'text/plain')), diff --git a/tests/wpt/web-platform-tests/web-nfc/NDEFWriter_push.https.html b/tests/wpt/web-platform-tests/web-nfc/NDEFWriter_push.https.html index a33b1fab303..bacbcaaeff3 100644 --- a/tests/wpt/web-platform-tests/web-nfc/NDEFWriter_push.https.html +++ b/tests/wpt/web-platform-tests/web-nfc/NDEFWriter_push.https.html @@ -124,7 +124,7 @@ promise_test(async t => { }, "Test that promise is rejected with SyntaxError if NDEFMessageSource contains\ invalid records."); - promise_test(async t => { +promise_test(async t => { if (window.testRunner) { // Deny nfc permissions for Chromium testrunner. window.testRunner.setPermission('nfc', 'denied', @@ -134,6 +134,18 @@ promise_test(async t => { await promise_rejects(t, 'NotAllowedError', writer.push(test_text_data)); }, 'NDEFWriter.push should fail if user permission is not granted.'); +// We do not provide NFC mock here to simulate that there has no available +// implementation for NFC Mojo interface. +promise_test(async t => { + if (window.testRunner) { + // Deny nfc permissions for Chromium testrunner. + window.testRunner.setPermission('nfc', 'granted', + location.origin, location.origin); + } + const writer = new NDEFWriter(); + await promise_rejects(t, 'NotSupportedError', writer.push(test_text_data)); +}, 'NDEFWriter.push should fail if no implementation for NFC Mojo interface is available.'); + nfc_test(async (t, mockNFC) => { const writer = new NDEFWriter(); const controller = new AbortController(); @@ -207,14 +219,6 @@ promise_test(async t => { t, 'NotSupportedError', writer.push(new ArrayBuffer(32 * 1024 + 1))); }, "Reject promise with NotSupportedError if NFC message size exceeds 32KB."); -promise_test(async t => { - const writer = new NDEFWriter(); - const message = createMessage([createTextRecord(test_text_data)]); - message.url = '%00/invalid/ path'; - await promise_rejects(t, 'SyntaxError', writer.push(message)); -}, "Reject promise with SyntaxError if WebNFC Id cannot be created from \ -provided URL."); - promise_test(async t => { const writer = new NDEFWriter(); await promise_rejects( diff --git a/tests/wpt/web-platform-tests/web-nfc/idlharness.https.window.js b/tests/wpt/web-platform-tests/web-nfc/idlharness.https.window.js index 74ffc21b220..a1eb3386b73 100644 --- a/tests/wpt/web-platform-tests/web-nfc/idlharness.https.window.js +++ b/tests/wpt/web-platform-tests/web-nfc/idlharness.https.window.js @@ -25,7 +25,6 @@ idl_test( NDEFRecord: [`new NDEFRecord(${JSON.stringify(record)});`], NDEFMessage: [`new NDEFMessage(${JSON.stringify(message)});`], NDEFReadingEvent: [`new NDEFReadingEvent("reading", { message: ${JSON.stringify(message)} })`], - NDEFErrorEvent: ['new NDEFErrorEvent("error", { error: new DOMException() });'], }); } ); diff --git a/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js b/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js index 3ce725a7c47..b9e260ac714 100644 --- a/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js +++ b/tests/wpt/web-platform-tests/web-nfc/resources/nfc-helpers.js @@ -157,9 +157,6 @@ function assertNDEFMessagesEqual(providedMessage, receivedMessage) { // NDEFWriter.onreading() EventHandler and another that is provided to mock NFC // service. function assertWebNDEFMessagesEqual(message, expectedMessage) { - if (expectedMessage.url) - assert_equals(message.url, expectedMessage.url); - assert_equals(message.records.length, expectedMessage.records.length); for(let i in message.records) { diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html index d87e35b571d..84458d0aaa7 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html @@ -12,30 +12,32 @@ diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https.html index 79d402c5186..5f4bee7c531 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https.html @@ -12,45 +12,47 @@ diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html index 0a9966add85..0914edbb3b0 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https.html @@ -12,43 +12,45 @@ diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html index 9d65d872b98..a8a7f5ed1de 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-output-channel-count.https.html @@ -13,7 +13,7 @@ const audit = Audit.createTaskRunner(); const context = new AudioContext(); - (async function () { + setup(async function () { await context.audioWorklet.addModule( 'processors/channel-count-processor.js'); @@ -76,7 +76,7 @@ }); audit.run(); - })(); + }); diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html index a2fa8040b2c..38bd94a037c 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/cors-check.https.html @@ -14,60 +14,62 @@ diff --git a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/no-cors.https.html b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/no-cors.https.html index 38324a9f67a..de2f0b7dd3b 100644 --- a/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/no-cors.https.html +++ b/tests/wpt/web-platform-tests/webaudio/the-audio-api/the-mediaelementaudiosourcenode-interface/no-cors.https.html @@ -14,59 +14,61 @@ diff --git a/tests/wpt/web-platform-tests/webauthn/resources/common-inputs.js b/tests/wpt/web-platform-tests/webauthn/resources/common-inputs.js new file mode 100644 index 00000000000..8370f7f079a --- /dev/null +++ b/tests/wpt/web-platform-tests/webauthn/resources/common-inputs.js @@ -0,0 +1,34 @@ +const ES256_ID = -7; +const CHALLENGE = "climb the mountain"; + +const PUBLIC_KEY_RP = { + id: window.location.hostname, + name: "Example RP", +}; + +const PUBLIC_KEY_USER = { + id: new TextEncoder().encode("123456789"), + name: "madeline@example.com", + displayName: "Madeline", + icon: "https://example.com/celeste.png" +}; + +// ES256. +const PUBLIC_KEY_PARAMETERS = [{ + type: "public-key", + alg: ES256_ID, +}]; + +const AUTHENTICATOR_SELECTION_CRITERIA = { + requireResidentKey: false, + userVerification: "discouraged", +}; + +const MAKE_CREDENTIAL_OPTIONS = { + challenge: new TextEncoder("utf-8").encode(CHALLENGE), + rp: PUBLIC_KEY_RP, + user: PUBLIC_KEY_USER, + pubKeyCredParams: PUBLIC_KEY_PARAMETERS, + authenticatorSelection: AUTHENTICATOR_SELECTION_CRITERIA, + excludeCredentials: [], +}; diff --git a/tests/wpt/web-platform-tests/webauthn/resources/utils.js b/tests/wpt/web-platform-tests/webauthn/resources/utils.js new file mode 100644 index 00000000000..f361a94d2e4 --- /dev/null +++ b/tests/wpt/web-platform-tests/webauthn/resources/utils.js @@ -0,0 +1,335 @@ +"use strict"; + +// Encodes |data| into base64url string. There is no '=' padding, and the +// characters '-' and '_' must be used instead of '+' and '/', respectively. +function base64urlEncode(data) { + let result = btoa(data); + return result.replace(/=+$/g, '').replace(/\+/g, "-").replace(/\//g, "_"); +} + +// Decode |encoded| using base64url decoding. +function base64urlDecode(encoded) { + return atob(encoded.replace(/\-/g, "+").replace(/\_/g, "/")); +} + +// Encodes a Uint8Array as a base64url string. +function uint8ArrayToBase64url(array) { + return base64urlEncode(String.fromCharCode.apply(null, array)); +} + +// Convert a EC signature from DER to a concatenation of the r and s parameters, +// as expected by the subtle crypto API. +function convertDERSignatureToSubtle(der) { + let index = -1; + const SEQUENCE = 0x30; + const INTEGER = 0x02; + assert_equals(der[++index], SEQUENCE); + + let size = der[++index]; + assert_equals(size + 2, der.length); + + assert_equals(der[++index], INTEGER); + let rSize = der[++index]; + ++index; + while (der[index] == 0) { + ++index; + --rSize; + } + let r = der.slice(index, index + rSize); + index += rSize; + + assert_equals(der[index], INTEGER); + let sSize = der[++index]; + ++index; + while (der[index] == 0) { + ++index; + --sSize; + } + let s = der.slice(index, index + sSize); + assert_equals(index + sSize, der.length); + + let result = new Uint8Array(64); + result.set(r, 32 - rSize); + result.set(s, 64 - sSize); + return result; +}; + +function coseObjectToJWK(cose) { + // Convert an object representing a COSE_Key encoded public key into a JSON + // Web Key object. + // https://tools.ietf.org/html/rfc7517 + + // The example used on the test is a ES256 key, so we only implement that. + let jwk = {}; + if (cose.type != 2) + assert_unreached("Unknown type: " + cose.type); + + jwk.kty = "EC"; + if (cose.alg != ES256_ID) + assert_unreached("Unknown alg: " + cose.alg); + + if (cose.crv != 1) + assert_unreached("Unknown curve: " + jwk.crv); + + jwk.crv = "P-256"; + jwk.x = uint8ArrayToBase64url(cose.x); + jwk.y = uint8ArrayToBase64url(cose.y); + return jwk; +} + +function parseCosePublicKey(coseKey) { + // Parse a CTAP2 canonical CBOR encoding form key. + // https://fidoalliance.org/specs/fido-v2.0-id-20180227/fido-client-to-authenticator-protocol-v2.0-id-20180227.html#ctap2-canonical-cbor-encoding-form + let parsed = new Cbor(coseKey); + let cbor = parsed.getCBOR(); + let key = { + type: cbor[1], + alg: cbor[3], + }; + if (key.type != 2) + assert_unreached("Unknown key type: " + key.type); + + key.crv = cbor[-1]; + key.x = new Uint8Array(cbor[-2]); + key.y = new Uint8Array(cbor[-3]); + return key; +} + +function parseAttestedCredentialData(attestedCredentialData) { + // Parse the attested credential data according to + // https://w3c.github.io/webauthn/#attested-credential-data + let aaguid = attestedCredentialData.slice(0, 16); + let credentialIdLength = (attestedCredentialData[16] << 8) + + attestedCredentialData[17]; + let credentialId = + attestedCredentialData.slice(18, 18 + credentialIdLength); + let credentialPublicKey = parseCosePublicKey( + attestedCredentialData.slice(18 + credentialIdLength, + attestedCredentialData.length)); + + return { aaguid, credentialIdLength, credentialId, credentialPublicKey }; +} + +function parseAuthenticatorData(authenticatorData) { + // Parse the authenticator data according to + // https://w3c.github.io/webauthn/#sctn-authenticator-data + assert_greater_than_equal(authenticatorData.length, 37); + let flags = authenticatorData[32]; + let counter = authenticatorData.slice(33, 37); + + let attestedCredentialData = authenticatorData.length > 37 ? + parseAttestedCredentialData(authenticatorData.slice(37)) : null; + let extensions = null; + if (attestedCredentialData && + authenticatorData.length > 37 + attestedCredentialData.length) { + extensions = authenticatorData.slice(37 + attestedCredentialData.length); + } + + return { + rpIdHash: authenticatorData.slice(0, 32), + flags: { + up: !!(flags & 0x01), + uv: !!(flags & 0x04), + at: !!(flags & 0x40), + ed: !!(flags & 0x80), + }, + counter: (counter[0] << 24) + + (counter[1] << 16) + + (counter[2] << 8) + + counter[3], + attestedCredentialData, + extensions, + }; +} + +// Taken from +// https://cs.chromium.org/chromium/src/chrome/browser/resources/cryptotoken/cbor.js?rcl=c9b6055cf9c158fb4119afd561a591f8fc95aefe +class Cbor { + constructor(buffer) { + this.slice = new Uint8Array(buffer); + } + get data() { + return this.slice; + } + get length() { + return this.slice.length; + } + get empty() { + return this.slice.length == 0; + } + get hex() { + const hexTable = '0123456789abcdef'; + let s = ''; + for (let i = 0; i < this.data.length; i++) { + s += hexTable.charAt(this.data[i] >> 4); + s += hexTable.charAt(this.data[i] & 15); + } + return s; + } + compare(other) { + if (this.length < other.length) { + return -1; + } else if (this.length > other.length) { + return 1; + } + for (let i = 0; i < this.length; i++) { + if (this.slice[i] < other.slice[i]) { + return -1; + } else if (this.slice[i] > other.slice[i]) { + return 1; + } + } + return 0; + } + getU8() { + if (this.empty) { + throw('Cbor: empty during getU8'); + } + const byte = this.slice[0]; + this.slice = this.slice.subarray(1); + return byte; + } + skip(n) { + if (this.length < n) { + throw('Cbor: too few bytes to skip'); + } + this.slice = this.slice.subarray(n); + } + getBytes(n) { + if (this.length < n) { + throw('Cbor: insufficient bytes in getBytes'); + } + const ret = this.slice.subarray(0, n); + this.slice = this.slice.subarray(n); + return ret; + } + getCBORHeader() { + const copy = new Cbor(this.slice); + const a = this.getU8(); + const majorType = a >> 5; + const info = a & 31; + if (info < 24) { + return [majorType, info, new Cbor(copy.getBytes(1))]; + } else if (info < 28) { + const lengthLength = 1 << (info - 24); + let data = this.getBytes(lengthLength); + let value = 0; + for (let i = 0; i < lengthLength; i++) { + // Javascript has problems handling uint64s given the limited range of + // a double. + if (value > 35184372088831) { + throw('Cbor: cannot represent CBOR number'); + } + // Not using bitwise operations to avoid truncating to 32 bits. + value *= 256; + value += data[i]; + } + switch (lengthLength) { + case 1: + if (value < 24) { + throw('Cbor: value should have been encoded in single byte'); + } + break; + case 2: + if (value < 256) { + throw('Cbor: non-minimal integer'); + } + break; + case 4: + if (value < 65536) { + throw('Cbor: non-minimal integer'); + } + break; + case 8: + if (value < 4294967296) { + throw('Cbor: non-minimal integer'); + } + break; + } + return [majorType, value, new Cbor(copy.getBytes(1 + lengthLength))]; + } else { + throw('Cbor: CBOR contains unhandled info value ' + info); + } + } + getCBOR() { + const [major, value] = this.getCBORHeader(); + switch (major) { + case 0: + return value; + case 1: + return 0 - (1 + value); + case 2: + return this.getBytes(value); + case 3: + return this.getBytes(value); + case 4: { + let ret = new Array(value); + for (let i = 0; i < value; i++) { + ret[i] = this.getCBOR(); + } + return ret; + } + case 5: + if (value == 0) { + return {}; + } + let copy = new Cbor(this.data); + const [firstKeyMajor] = copy.getCBORHeader(); + if (firstKeyMajor == 3) { + // String-keyed map. + let lastKeyHeader = new Cbor(new Uint8Array(0)); + let lastKeyBytes = new Cbor(new Uint8Array(0)); + let ret = {}; + for (let i = 0; i < value; i++) { + const [keyMajor, keyLength, keyHeader] = this.getCBORHeader(); + if (keyMajor != 3) { + throw('Cbor: non-string in string-valued map'); + } + const keyBytes = new Cbor(this.getBytes(keyLength)); + if (i > 0) { + const headerCmp = lastKeyHeader.compare(keyHeader); + if (headerCmp > 0 || + (headerCmp == 0 && lastKeyBytes.compare(keyBytes) >= 0)) { + throw( + 'Cbor: map keys in wrong order: ' + lastKeyHeader.hex + + '/' + lastKeyBytes.hex + ' ' + keyHeader.hex + '/' + + keyBytes.hex); + } + } + lastKeyHeader = keyHeader; + lastKeyBytes = keyBytes; + ret[keyBytes.parseUTF8()] = this.getCBOR(); + } + return ret; + } else if (firstKeyMajor == 0 || firstKeyMajor == 1) { + // Number-keyed map. + let lastKeyHeader = new Cbor(new Uint8Array(0)); + let ret = {}; + for (let i = 0; i < value; i++) { + let [keyMajor, keyValue, keyHeader] = this.getCBORHeader(); + if (keyMajor != 0 && keyMajor != 1) { + throw('Cbor: non-number in number-valued map'); + } + if (i > 0 && lastKeyHeader.compare(keyHeader) >= 0) { + throw( + 'Cbor: map keys in wrong order: ' + lastKeyHeader.hex + ' ' + + keyHeader.hex); + } + lastKeyHeader = keyHeader; + if (keyMajor == 1) { + keyValue = 0 - (1 + keyValue); + } + ret[keyValue] = this.getCBOR(); + } + return ret; + } else { + throw('Cbor: map keyed by invalid major type ' + firstKeyMajor); + } + default: + throw('Cbor: unhandled major type ' + major); + } + } + parseUTF8() { + return (new TextDecoder('utf-8')).decode(this.slice); + } +} diff --git a/tests/wpt/web-platform-tests/webauthn/webauthn-testdriver-basic.https.html b/tests/wpt/web-platform-tests/webauthn/webauthn-testdriver-basic.https.html new file mode 100644 index 00000000000..7790f5d0d3f --- /dev/null +++ b/tests/wpt/web-platform-tests/webauthn/webauthn-testdriver-basic.https.html @@ -0,0 +1,117 @@ + +Successful WebAuthn tests + + + + + + + + diff --git a/tests/wpt/web-platform-tests/workers/Worker-constructor-proto.any.js b/tests/wpt/web-platform-tests/workers/Worker-constructor-proto.any.js index 73eabd55226..90ad767b980 100644 --- a/tests/wpt/web-platform-tests/workers/Worker-constructor-proto.any.js +++ b/tests/wpt/web-platform-tests/workers/Worker-constructor-proto.any.js @@ -1,7 +1,7 @@ //META: global=!default, worker test(() => { proto = new Number(42) - assert_equals(String(Object.getPrototypeOf(WorkerLocation)), "function () { [native code] }"); + assert_equals(String(Object.getPrototypeOf(WorkerLocation)).replace(/\n/g, " ").replace(/\s\s+/g, " "), "function () { [native code] }"); WorkerLocation.__proto__ = proto; assert_object_equals(Object.getPrototypeOf(WorkerLocation), Object(42)); }, 'Tests that setting the proto of a built in constructor is not reset.'); diff --git a/tests/wpt/web-platform-tests/workers/Worker-location.sub.any.js b/tests/wpt/web-platform-tests/workers/Worker-location.sub.any.js index 2ef94455310..1c3dabff036 100644 --- a/tests/wpt/web-platform-tests/workers/Worker-location.sub.any.js +++ b/tests/wpt/web-platform-tests/workers/Worker-location.sub.any.js @@ -1,6 +1,6 @@ // META: global=!default, dedicatedworker, sharedworker test(() => { - assert_equals(String(WorkerLocation), "function WorkerLocation() { [native code] }"); + assert_equals(String(WorkerLocation).replace(/\n/g, " ").replace(/\s\s+/g, " "), "function WorkerLocation() { [native code] }"); assert_true(location instanceof Object); assert_equals(location.href, 'http://{{host}}:{{ports[http][0]}}/workers/Worker-location.sub.any.worker.js'); assert_equals(location.origin, "http://{{host}}:{{ports[http][0]}}"); diff --git a/tests/wpt/web-platform-tests/workers/Worker-multi-port.html b/tests/wpt/web-platform-tests/workers/Worker-multi-port.html index 9a89583ad91..138f8f02d4e 100644 --- a/tests/wpt/web-platform-tests/workers/Worker-multi-port.html +++ b/tests/wpt/web-platform-tests/workers/Worker-multi-port.html @@ -56,7 +56,7 @@ test(() => { test(() => { var worker = new Worker("support/Worker-thread-multi-port.js") var channel = new MessageChannel(); - assert_throws(new TypeError(), + assert_throws('DataCloneError', function() { worker.postMessage("notAPort", [channel.port1, {}, channel.port2]); }, @@ -65,7 +65,7 @@ test(() => { test(() => { var worker = new Worker("support/Worker-thread-multi-port.js"); - assert_throws(new TypeError(), + assert_throws('DataCloneError', function() { worker.postMessage("notASequence", [{length: 3}]) }, 'postMessage without sequence should throw exception.'); }, 'Test postMessage without sequence throws exception'); @@ -73,7 +73,7 @@ test(() => { async_test(function(t) { var worker = new Worker("support/Worker-thread-multi-port.js"); var channel = new MessageChannel(); - assert_throws(new TypeError(), + assert_throws('DataCloneError', function() { worker.postMessage("notAPort", [channel.port1, {}, channel.port2]); }, diff --git a/tests/wpt/web-platform-tests/workers/WorkerGlobalScope-close.html b/tests/wpt/web-platform-tests/workers/WorkerGlobalScope-close.html index a193a3478f4..08ab1ca515c 100644 --- a/tests/wpt/web-platform-tests/workers/WorkerGlobalScope-close.html +++ b/tests/wpt/web-platform-tests/workers/WorkerGlobalScope-close.html @@ -16,16 +16,31 @@ async_test(function(t) { async_test(function(t) { var worker = new Worker('support/WorkerGlobalScope-close.js'); worker.postMessage("ping"); - worker.onmessage = t.step_func(function(evt) { + worker.onmessage = t.step_func(function(evt) { assert_equals(evt.data, "pong"); - // Tell the worker to close, then send a followup message. This message - // should not be delivered, since that would require JS to invoke the - // onmessage handler, which does not happen after the JS fragment with - // 'close()' in it exits. So, the 'ping' should not come back as 'pong'. + // Tell the worker to close, then send a followup message. worker.postMessage("close"); + + // The worker may or may not be closing/closed by this call. If it is, the + // message won't be enqueued on the worker's event loop. If it isn't, the + // message will be enqueued but shouldn't be handled by the worker because + // the prior postMessage will cause the worker to close. In either case, + // the worker shouldn't postMessage back "pong". + // + // This also means that at this point we can't confidently test + // postMessage-ing a worker that will close nor a worker that is already + // closing/closed. worker.postMessage("ping"); - worker.onmessage = t.step_func(function(evt) { + + worker.onmessage = t.step_func(function(evt) { assert_not_equals(evt.data, "pong"); + + // The worker should definitely be closed by now, so we can confidently + // test postMessage-ing a closed worker. This postMessage shouldn't throw + // or cause the worker to postMessage back "pong" (it shouldn't receive + // any events after closing). + worker.postMessage("ping"); + t.step_timeout(function() { t.done(); }, 500); }); }); diff --git a/tests/wpt/web-platform-tests/workers/Worker_script_mimetype.htm b/tests/wpt/web-platform-tests/workers/Worker_script_mimetype.htm index 04fe68e6628..55d81d5d1c9 100644 --- a/tests/wpt/web-platform-tests/workers/Worker_script_mimetype.htm +++ b/tests/wpt/web-platform-tests/workers/Worker_script_mimetype.htm @@ -9,6 +9,8 @@ async_test(function(t) { worker.onmessage = t.step_func_done(function(e) { assert_equals(e.data, "Pass"); }); + // TODO(mkwst): Revisit this after https://github.com/whatwg/html/issues/3255. + worker.onerror = t.unreached_func("Worker should load."); worker.postMessage("start"); }); From cf7fb78d65706993774e4db0e9de4ca02a28772d Mon Sep 17 00:00:00 2001 From: Josh Matthews Date: Tue, 10 Dec 2019 23:08:21 -0500 Subject: [PATCH 2/2] Remove intermittent failure. --- .../drawing-images-to-the-canvas/drawimage_canvas_self.html.ini | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini diff --git a/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini b/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini deleted file mode 100644 index 9ce1e84d0ca..00000000000 --- a/tests/wpt/metadata/2dcontext/drawing-images-to-the-canvas/drawimage_canvas_self.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[drawimage_canvas_self.html] - expected: FAIL