From 02d490892df87d58b78d115ab3f6e1ce64d11c7e Mon Sep 17 00:00:00 2001 From: WPT Sync Bot Date: Sat, 17 Dec 2022 01:16:22 +0000 Subject: [PATCH] Update web-platform-tests to revision b'9ce4a6482a088da3d74f895d8ad15c5ce0c25d28' --- .../CSS2/floats/hit-test-floats-002.html.ini | 3 - .../CSS2/floats/hit-test-floats-003.html.ini | 3 - .../CSS2/floats/hit-test-floats-004.html.ini | 3 - ...block-in-inline-hittest-float-002.html.ini | 3 + .../hittest-before-pseudo.html.ini | 3 + .../at-font-face-font-matching.html.ini | 15 - .../properties-value-001.html.ini | 273 ++++++++++++ .../properties-value-inherit-001.html.ini | 123 ++++++ .../properties-value-inherit-002.html.ini | 100 ++--- .../css-variables/variable-cssText.html.ini | 12 + ...QueryList-addListener-handleEvent.html.ini | 3 - .../cssom-view/elementFromPoint-001.html.ini | 3 - ...elementFromPoint-dynamic-anon-box.html.ini | 3 - .../elementFromPoint-list-001.html.ini | 12 + .../elementFromPoint-subpixel.html.ini | 3 + .../elementsFromPoint-invalid-cases.html.ini | 3 + .../css/cssom/serialize-values.html.ini | 341 ++------------- .../css/cssom/shorthand-values.html.ini | 3 + .../media-pseudo-classes-in-has.html.ini | 9 + .../webkit-transition-end-event.html.ini | 4 + .../streams/invalid-realm.window.js.ini | 12 + .../content-length/parsing.window.js.ini | 3 + .../fetch/content-type/response.window.js.ini | 2 +- .../css-images.sub.tentative.html.ini | 3 - .../nosniff/parsing-nosniff.window.js.ini | 2 +- ...eshow-events-iframe-contentWindow.html.ini | 5 +- .../load-pageshow-events-window-open.html.ini | 3 - ...url-return-value-handling-dynamic.html.ini | 3 + ...avigation-unload-same-origin.window.js.ini | 3 - .../replace-before-load/a-click.html.ini | 3 + .../replace-before-load/form-submit.html.ini | 3 +- .../traverse_the_history_4.html.ini} | 3 +- .../regression-1399759.https.sub.html.ini | 5 + .../iframe_sandbox_popups_escaping-2.html.ini | 3 +- ...rame_sandbox_popups_nonescaping-2.html.ini | 3 +- ...-special-cases.tentative.sub.window.js.ini | 1 - ...se-a-sizes-attribute-display-none.html.ini | 2 + ...rse-a-sizes-attribute-quirks-mode.html.ini | 2 + ...-a-sizes-attribute-standards-mode.html.ini | 2 + ...se-a-sizes-attribute-width-1000px.html.ini | 2 + .../text-plain.window.js.ini | 6 - .../urlencoded2.window.js.ini | 3 - .../htmlanchorelement_noopener.html.ini | 4 +- .../defer-script/async-script.html.ini | 4 - .../module-static-import-delayed.html.ini | 3 + .../module-tla-delayed.html.ini | 4 +- ...ob-entry-different-function-realm.html.ini | 5 +- .../promise-rejection-events.html.ini | 3 +- .../url/a-element-origin-xhtml.xhtml.ini | 3 + .../url/a-element-origin.html.ini | 3 + .../url/url-origin.any.js.ini | 8 + .../webmessaging/with-ports/018.html.ini | 4 + .../webmessaging/without-ports/017.html.ini | 4 + .../webmessaging/without-ports/018.html.ini | 4 + tests/wpt/metadata/MANIFEST.json | 412 ++++++++++++++---- .../CSS2/floats/hit-test-floats-002.html.ini | 3 - .../CSS2/floats/hit-test-floats-003.html.ini | 3 - .../CSS2/floats/hit-test-floats-004.html.ini | 3 - ...block-in-inline-hittest-float-002.html.ini | 3 + .../hittest-before-pseudo.html.ini | 3 + .../at-font-face-font-matching.html.ini | 15 - .../properties-value-001.html.ini | 273 ++++++++++++ .../properties-value-inherit-001.html.ini | 123 ++++++ .../properties-value-inherit-002.html.ini | 100 ++--- .../css-variables/variable-cssText.html.ini | 5 + ...QueryList-addListener-handleEvent.html.ini | 3 - .../cssom-view/elementFromPoint-001.html.ini | 3 - ...elementFromPoint-dynamic-anon-box.html.ini | 3 - .../elementFromPoint-list-001.html.ini | 12 + .../elementFromPoint-subpixel.html.ini | 3 + .../elementsFromPoint-invalid-cases.html.ini | 3 + .../css/cssom/serialize-values.html.ini | 44 ++ .../css/cssom/shorthand-values.html.ini | 3 + .../media-pseudo-classes-in-has.html.ini | 9 + .../webkit-transition-end-event.html.ini | 4 + .../streams/invalid-realm.window.js.ini | 12 + .../content-length/parsing.window.js.ini | 3 + .../fetch/content-type/response.window.js.ini | 2 +- .../css-images.sub.tentative.html.ini | 3 - .../nosniff/parsing-nosniff.window.js.ini | 2 +- ...eshow-events-iframe-contentWindow.html.ini | 5 +- .../load-pageshow-events-window-open.html.ini | 3 - ...url-return-value-handling-dynamic.html.ini | 3 + ...avigation-unload-same-origin.window.js.ini | 3 - .../replace-before-load/a-click.html.ini | 3 + .../replace-before-load/form-submit.html.ini | 3 +- .../traverse_the_history_4.html.ini} | 3 +- .../regression-1399759.https.sub.html.ini | 5 + .../iframe_sandbox_popups_escaping-2.html.ini | 3 +- ...rame_sandbox_popups_nonescaping-2.html.ini | 3 +- ...-special-cases.tentative.sub.window.js.ini | 1 - ...se-a-sizes-attribute-display-none.html.ini | 2 + ...rse-a-sizes-attribute-quirks-mode.html.ini | 2 + ...-a-sizes-attribute-standards-mode.html.ini | 2 + ...se-a-sizes-attribute-width-1000px.html.ini | 2 + .../text-plain.window.js.ini | 6 - .../urlencoded2.window.js.ini | 3 - .../htmlanchorelement_noopener.html.ini | 4 +- .../defer-script/async-script.html.ini | 4 - .../module-static-import-delayed.html.ini | 3 + .../module-tla-delayed.html.ini | 3 + ...ob-entry-different-function-realm.html.ini | 5 +- .../promise-rejection-events.html.ini | 3 +- .../url/a-element-origin-xhtml.xhtml.ini | 3 + .../metadata/url/a-element-origin.html.ini | 3 + tests/wpt/metadata/url/url-origin.any.js.ini | 8 + .../webmessaging/with-ports/018.html.ini | 4 + .../webmessaging/without-ports/017.html.ini | 4 + .../webmessaging/without-ports/018.html.ini | 4 + ...ure_privacy_test.tentative.https.window.js | 130 ++++++ .../resources/support-iframe.html | 30 ++ .../parsing/animation-valid.html | 4 +- .../grid-item-placement-crash-multiple.html | 35 ++ .../parsing/mask-position-valid.html | 18 +- .../css-masking/parsing/mask-valid.sub.html | 35 +- ...property-animation-transform-function.html | 57 +++ .../css/css-variables/variable-cssText.html | 4 +- .../css/cssom/serialize-values.html | 46 +- .../css/cssom/shorthand-values.html | 11 +- .../mediaqueries/mq-negative-range-002.html | 39 ++ ...ers-color-scheme-svg-image-normal-ref.html | 23 + ...e-svg-image-normal-with-meta-dark-ref.html | 14 + ...cheme-svg-image-normal-with-meta-dark.html | 17 + ...-svg-image-normal-with-meta-light-ref.html | 13 + ...heme-svg-image-normal-with-meta-light.html | 17 + ...prefers-color-scheme-svg-image-normal.html | 16 + .../css/mediaqueries/test_media_queries.html | 26 +- .../media-pseudo-classes-in-has.html | 114 +++++ .../editing/data/inserttext.js | 90 ++++ .../editing/data/multitest.js | 336 +++++++++++++- .../encoding/streams/invalid-realm.window.js | 37 ++ .../regression-1399759.https.sub.html | 100 +++++ .../multicol-table-crash.html | 12 + .../sizes/support/sizes-iframed.sub.html | 2 +- tests/wpt/web-platform-tests/lint.ignore | 1 + ...diaRecorder-canvas-media-source.https.html | 128 ++++++ .../coalesced_events_attributes.html | 130 ++++++ ...oalesced_events_attributes_under_load.html | 93 ++++ ...nterevent_coalesced_events_attributes.html | 192 -------- ...ne-none-with-progress-print.tentative.html | 56 +++ ...ation-timeline-none-with-progress-ref.html | 38 ++ .../scroll-timeline-default-iframe-print.html | 2 +- ...roll-timeline-default-print.tentative.html | 2 +- ...oll-timeline-specified-scroller-print.html | 2 +- ...roll-timeline-specified-scroller-ref.html} | 0 .../css/scroll-timeline-default-iframe.html | 21 +- .../webdriver/bidi/modules/_module.py | 2 +- .../bidi/modules/browsing_context.py | 14 + .../url/resources/urltestdata.json | 31 ++ .../web-locks/signal.tentative.https.any.js | 30 ++ .../capture_screenshot/__init__.py | 94 ++++ .../capture_screenshot/capture_screenshot.py | 43 ++ .../capture_screenshot/frame.py | 60 +++ .../capture_screenshot/invalid.py | 27 ++ .../script/call_function/exception_details.py | 3 - .../bidi/script/evaluate/exception_details.py | 3 - .../webdriver/tests/support/asserts.py | 12 +- .../webdriver/tests/support/fixtures_bidi.py | 40 ++ .../webdriver/tests/support/html/render.html | 68 +++ .../webdriver/tests/support/image.py | 5 +- .../webdriver/tests/support/screenshot.py | 50 +++ .../webdriver/tests/take_screenshot/iframe.py | 56 +-- 162 files changed, 3675 insertions(+), 951 deletions(-) delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-002.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-in-inline-hittest-float-002.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/css-flexbox/hittest-before-pseudo.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/css-variables/variable-cssText.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-dynamic-anon-box.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-subpixel.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini create mode 100644 tests/wpt/metadata-layout-2020/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini create mode 100644 tests/wpt/metadata-layout-2020/encoding/streams/invalid-realm.window.js.ini delete mode 100644 tests/wpt/metadata-layout-2020/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin.window.js.ini create mode 100644 tests/wpt/metadata-layout-2020/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini rename tests/wpt/{metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini => metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini} (70%) create mode 100644 tests/wpt/metadata-layout-2020/html/browsers/origin/origin-keyed-agent-clusters/regression-1399759.https.sub.html.ini delete mode 100644 tests/wpt/metadata-layout-2020/html/semantics/scripting-1/the-script-element/defer-script/async-script.html.ini create mode 100644 tests/wpt/metadata-layout-2020/html/webappapis/dynamic-markup-insertion/document-write/module-static-import-delayed.html.ini create mode 100644 tests/wpt/metadata-layout-2020/url/a-element-origin-xhtml.xhtml.ini create mode 100644 tests/wpt/metadata-layout-2020/url/a-element-origin.html.ini create mode 100644 tests/wpt/metadata-layout-2020/url/url-origin.any.js.ini create mode 100644 tests/wpt/metadata-layout-2020/webmessaging/with-ports/018.html.ini create mode 100644 tests/wpt/metadata-layout-2020/webmessaging/without-ports/017.html.ini create mode 100644 tests/wpt/metadata-layout-2020/webmessaging/without-ports/018.html.ini delete mode 100644 tests/wpt/metadata/css/CSS2/floats/hit-test-floats-002.html.ini delete mode 100644 tests/wpt/metadata/css/CSS2/floats/hit-test-floats-003.html.ini delete mode 100644 tests/wpt/metadata/css/CSS2/floats/hit-test-floats-004.html.ini create mode 100644 tests/wpt/metadata/css/CSS2/normal-flow/block-in-inline-hittest-float-002.html.ini create mode 100644 tests/wpt/metadata/css/css-flexbox/hittest-before-pseudo.html.ini delete mode 100644 tests/wpt/metadata/css/cssom-view/elementFromPoint-001.html.ini delete mode 100644 tests/wpt/metadata/css/cssom-view/elementFromPoint-dynamic-anon-box.html.ini create mode 100644 tests/wpt/metadata/css/cssom-view/elementFromPoint-subpixel.html.ini create mode 100644 tests/wpt/metadata/css/cssom-view/elementsFromPoint-invalid-cases.html.ini create mode 100644 tests/wpt/metadata/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini create mode 100644 tests/wpt/metadata/encoding/streams/invalid-realm.window.js.ini delete mode 100644 tests/wpt/metadata/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-same-origin.window.js.ini create mode 100644 tests/wpt/metadata/html/browsers/browsing-the-web/navigating-across-documents/replace-before-load/a-click.html.ini rename tests/wpt/{metadata-layout-2020/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini => metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini} (70%) create mode 100644 tests/wpt/metadata/html/browsers/origin/origin-keyed-agent-clusters/regression-1399759.https.sub.html.ini delete mode 100644 tests/wpt/metadata/html/semantics/scripting-1/the-script-element/defer-script/async-script.html.ini create mode 100644 tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/document-write/module-static-import-delayed.html.ini create mode 100644 tests/wpt/metadata/html/webappapis/dynamic-markup-insertion/document-write/module-tla-delayed.html.ini create mode 100644 tests/wpt/metadata/url/a-element-origin-xhtml.xhtml.ini create mode 100644 tests/wpt/metadata/url/a-element-origin.html.ini create mode 100644 tests/wpt/metadata/url/url-origin.any.js.ini create mode 100644 tests/wpt/metadata/webmessaging/with-ports/018.html.ini create mode 100644 tests/wpt/metadata/webmessaging/without-ports/017.html.ini create mode 100644 tests/wpt/metadata/webmessaging/without-ports/018.html.ini create mode 100644 tests/wpt/web-platform-tests/compute-pressure/compute_pressure_privacy_test.tentative.https.window.js create mode 100644 tests/wpt/web-platform-tests/compute-pressure/resources/support-iframe.html create mode 100644 tests/wpt/web-platform-tests/css/css-break/grid/grid-item-placement-crash-multiple.html create mode 100644 tests/wpt/web-platform-tests/css/css-properties-values-api/animation/custom-property-animation-transform-function.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/mq-negative-range-002.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal-ref.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal-with-meta-dark-ref.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal-with-meta-dark.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal-with-meta-light-ref.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal-with-meta-light.html create mode 100644 tests/wpt/web-platform-tests/css/mediaqueries/prefers-color-scheme-svg-image-normal.html create mode 100644 tests/wpt/web-platform-tests/css/selectors/invalidation/media-pseudo-classes-in-has.html create mode 100644 tests/wpt/web-platform-tests/encoding/streams/invalid-realm.window.js create mode 100644 tests/wpt/web-platform-tests/html/browsers/origin/origin-keyed-agent-clusters/regression-1399759.https.sub.html create mode 100644 tests/wpt/web-platform-tests/html/rendering/non-replaced-elements/the-frameset-and-frame-elements/multicol-table-crash.html create mode 100644 tests/wpt/web-platform-tests/mediacapture-record/MediaRecorder-canvas-media-source.https.html create mode 100644 tests/wpt/web-platform-tests/pointerevents/coalesced_events_attributes.html create mode 100644 tests/wpt/web-platform-tests/pointerevents/coalesced_events_attributes_under_load.html delete mode 100644 tests/wpt/web-platform-tests/pointerevents/pointerevent_coalesced_events_attributes.html create mode 100644 tests/wpt/web-platform-tests/scroll-animations/css/printing/animation-timeline-none-with-progress-print.tentative.html create mode 100644 tests/wpt/web-platform-tests/scroll-animations/css/printing/animation-timeline-none-with-progress-ref.html rename tests/wpt/web-platform-tests/scroll-animations/css/{ => printing}/scroll-timeline-default-iframe-print.html (96%) rename tests/wpt/web-platform-tests/scroll-animations/css/{ => printing}/scroll-timeline-default-print.tentative.html (96%) rename tests/wpt/web-platform-tests/scroll-animations/css/{ => printing}/scroll-timeline-specified-scroller-print.html (94%) rename tests/wpt/web-platform-tests/scroll-animations/css/{scroll-timeline-specified-scroller-print-ref.html => printing/scroll-timeline-specified-scroller-ref.html} (100%) create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/__init__.py create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/frame.py create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/invalid.py create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/support/html/render.html create mode 100644 tests/wpt/web-platform-tests/webdriver/tests/support/screenshot.py diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-002.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-002.html.ini deleted file mode 100644 index 968f62a2553..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-002.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[hit-test-floats-002.html] - [Hit test float] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini deleted file mode 100644 index 665ec4646cb..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-003.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[hit-test-floats-003.html] - [Miss float below something else] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini deleted file mode 100644 index 13bd6abf376..00000000000 --- a/tests/wpt/metadata-layout-2020/css/CSS2/floats/hit-test-floats-004.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[hit-test-floats-004.html] - [Miss float below something else] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-in-inline-hittest-float-002.html.ini b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-in-inline-hittest-float-002.html.ini new file mode 100644 index 00000000000..3e5096beef3 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/CSS2/normal-flow/block-in-inline-hittest-float-002.html.ini @@ -0,0 +1,3 @@ +[block-in-inline-hittest-float-002.html] + [block-in-inline-hittest-float-002] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-flexbox/hittest-before-pseudo.html.ini b/tests/wpt/metadata-layout-2020/css/css-flexbox/hittest-before-pseudo.html.ini new file mode 100644 index 00000000000..5b685485f3c --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-flexbox/hittest-before-pseudo.html.ini @@ -0,0 +1,3 @@ +[hittest-before-pseudo.html] + [Hit-testing text within a pseudo-element flex-item should return the flexbox as the hittest result.] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-fonts/variations/at-font-face-font-matching.html.ini b/tests/wpt/metadata-layout-2020/css/css-fonts/variations/at-font-face-font-matching.html.ini index 6de492add85..4422b6fcf5a 100644 --- a/tests/wpt/metadata-layout-2020/css/css-fonts/variations/at-font-face-font-matching.html.ini +++ b/tests/wpt/metadata-layout-2020/css/css-fonts/variations/at-font-face-font-matching.html.ini @@ -125,9 +125,6 @@ [Matching font-style: 'italic' should prefer 'oblique -60deg -30deg' over 'oblique -50deg -40deg'] expected: FAIL - [Matching font-style: 'oblique 20deg' should prefer 'oblique 20deg' over 'oblique 30deg 60deg'] - expected: FAIL - [Matching font-style: 'oblique 20deg' should prefer 'oblique 30deg 60deg' over 'oblique 40deg 50deg'] expected: FAIL @@ -137,15 +134,9 @@ [Matching font-style: 'oblique 21deg' should prefer 'oblique 30deg 60deg' over 'oblique 40deg 50deg'] expected: FAIL - [Matching font-style: 'oblique 21deg' should prefer 'oblique 10deg' over 'italic'] - expected: FAIL - [Matching font-style: 'oblique 21deg' should prefer 'oblique -50deg -20deg' over 'oblique -40deg -30deg'] expected: FAIL - [Matching font-style: 'oblique 10deg' should prefer 'oblique 10deg' over 'oblique 5deg'] - expected: FAIL - [Matching font-style: 'oblique 10deg' should prefer 'oblique 40deg 50deg' over 'italic'] expected: FAIL @@ -185,9 +176,6 @@ [Matching font-style: 'oblique -20deg' should prefer 'oblique 0deg' over 'oblique 30deg 60deg'] expected: FAIL - [Matching font-style: 'oblique -21deg' should prefer 'italic' over 'oblique 0deg'] - expected: FAIL - [Matching font-style: 'oblique -21deg' should prefer 'oblique 0deg' over 'oblique 30deg 60deg'] expected: FAIL @@ -227,9 +215,6 @@ [Matching font-style: 'oblique 21deg' should prefer 'oblique 0deg' over 'oblique -50deg -20deg'] expected: FAIL - [Matching font-style: 'oblique 10deg' should prefer 'oblique 5deg' over 'oblique 15deg 20deg'] - expected: FAIL - [Matching font-style: 'oblique 10deg' should prefer 'oblique 30deg 60deg' over 'oblique 40deg 50deg'] expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-001.html.ini b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-001.html.ini index 3094ea29f3c..dba439bf82a 100644 --- a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-001.html.ini +++ b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-001.html.ini @@ -202,3 +202,276 @@ [margin-right length(mm) / values] expected: FAIL + + [background-color color(rgba) / values] + expected: FAIL + + [border-top-width length(pt) / values] + expected: FAIL + + [border-top-width length(pc) / values] + expected: FAIL + + [border-top-width length(px) / values] + expected: FAIL + + [border-top-width length(em) / values] + expected: FAIL + + [border-top-width length(ex) / values] + expected: FAIL + + [border-top-width length(mm) / values] + expected: FAIL + + [border-top-width length(cm) / values] + expected: FAIL + + [border-top-width length(in) / values] + expected: FAIL + + [border-right-width length(pt) / values] + expected: FAIL + + [border-right-width length(pc) / values] + expected: FAIL + + [border-right-width length(px) / values] + expected: FAIL + + [border-right-width length(em) / values] + expected: FAIL + + [border-right-width length(ex) / values] + expected: FAIL + + [border-right-width length(mm) / values] + expected: FAIL + + [border-right-width length(cm) / values] + expected: FAIL + + [border-right-width length(in) / values] + expected: FAIL + + [border-bottom-width length(pt) / values] + expected: FAIL + + [border-bottom-width length(pc) / values] + expected: FAIL + + [border-bottom-width length(px) / values] + expected: FAIL + + [border-bottom-width length(em) / values] + expected: FAIL + + [border-bottom-width length(ex) / values] + expected: FAIL + + [border-bottom-width length(mm) / values] + expected: FAIL + + [border-bottom-width length(cm) / values] + expected: FAIL + + [border-bottom-width length(in) / values] + expected: FAIL + + [border-left-width length(pt) / values] + expected: FAIL + + [border-left-width length(pc) / values] + expected: FAIL + + [border-left-width length(px) / values] + expected: FAIL + + [border-left-width length(em) / values] + expected: FAIL + + [border-left-width length(ex) / values] + expected: FAIL + + [border-left-width length(mm) / values] + expected: FAIL + + [border-left-width length(cm) / values] + expected: FAIL + + [border-left-width length(in) / values] + expected: FAIL + + [border-top-color color(rgba) / values] + expected: FAIL + + [border-right-color color(rgba) / values] + expected: FAIL + + [border-bottom-color color(rgba) / values] + expected: FAIL + + [border-left-color color(rgba) / values] + expected: FAIL + + [padding-bottom length(pt) / values] + expected: FAIL + + [padding-bottom length(pc) / values] + expected: FAIL + + [padding-bottom length(px) / values] + expected: FAIL + + [padding-bottom length(em) / values] + expected: FAIL + + [color color(rgba) / values] + expected: FAIL + + [font-size length(pt) / values] + expected: FAIL + + [font-size length(pc) / values] + expected: FAIL + + [font-size length(px) / values] + expected: FAIL + + [font-size length(em) / values] + expected: FAIL + + [font-size length(ex) / values] + expected: FAIL + + [font-size length(mm) / values] + expected: FAIL + + [font-size length(cm) / values] + expected: FAIL + + [font-size length(in) / values] + expected: FAIL + + [font-size percentage(%) / values] + expected: FAIL + + [font-weight font-weight(keyword) / values] + expected: FAIL + + [font-weight font-weight(numeric) / values] + expected: FAIL + + [line-height number(integer) / values] + expected: FAIL + + [line-height number(decimal) / values] + expected: FAIL + + [line-height length(pt) / values] + expected: FAIL + + [line-height length(pc) / values] + expected: FAIL + + [line-height length(px) / values] + expected: FAIL + + [line-height length(em) / values] + expected: FAIL + + [line-height length(ex) / values] + expected: FAIL + + [line-height length(mm) / values] + expected: FAIL + + [line-height length(cm) / values] + expected: FAIL + + [line-height length(in) / values] + expected: FAIL + + [line-height percentage(%) / values] + expected: FAIL + + [letter-spacing length(pt) / values] + expected: FAIL + + [letter-spacing length(pc) / values] + expected: FAIL + + [letter-spacing length(px) / values] + expected: FAIL + + [letter-spacing length(em) / values] + expected: FAIL + + [letter-spacing length(ex) / values] + expected: FAIL + + [letter-spacing length(mm) / values] + expected: FAIL + + [letter-spacing length(cm) / values] + expected: FAIL + + [letter-spacing length(in) / values] + expected: FAIL + + [word-spacing length(pt) / values] + expected: FAIL + + [word-spacing length(pc) / values] + expected: FAIL + + [word-spacing length(px) / values] + expected: FAIL + + [word-spacing length(em) / values] + expected: FAIL + + [word-spacing length(ex) / values] + expected: FAIL + + [word-spacing length(mm) / values] + expected: FAIL + + [word-spacing length(cm) / values] + expected: FAIL + + [word-spacing length(in) / values] + expected: FAIL + + [word-spacing percentage(%) / values] + expected: FAIL + + [text-indent length(pt) / values] + expected: FAIL + + [text-indent length(pc) / values] + expected: FAIL + + [text-indent length(px) / values] + expected: FAIL + + [text-indent length(em) / values] + expected: FAIL + + [text-indent length(ex) / values] + expected: FAIL + + [text-indent length(mm) / values] + expected: FAIL + + [text-indent length(cm) / values] + expected: FAIL + + [text-indent length(in) / values] + expected: FAIL + + [text-indent percentage(%) / values] + expected: FAIL + + [text-shadow shadow(shadow) / values] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-001.html.ini b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-001.html.ini index 998682c8a35..d30d024adec 100644 --- a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-001.html.ini +++ b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-001.html.ini @@ -505,3 +505,126 @@ [left percentage(%) / events] expected: FAIL + + [background-color color(rgba) / events] + expected: FAIL + + [border-top-width length(pt) / events] + expected: FAIL + + [border-top-width length(pc) / events] + expected: FAIL + + [border-top-width length(px) / events] + expected: FAIL + + [border-top-width length(em) / events] + expected: FAIL + + [border-top-width length(ex) / events] + expected: FAIL + + [border-top-width length(mm) / events] + expected: FAIL + + [border-top-width length(cm) / events] + expected: FAIL + + [border-top-width length(in) / events] + expected: FAIL + + [border-right-width length(pt) / events] + expected: FAIL + + [border-right-width length(pc) / events] + expected: FAIL + + [border-right-width length(px) / events] + expected: FAIL + + [border-right-width length(em) / events] + expected: FAIL + + [border-right-width length(ex) / events] + expected: FAIL + + [border-right-width length(mm) / events] + expected: FAIL + + [border-right-width length(cm) / events] + expected: FAIL + + [border-right-width length(in) / events] + expected: FAIL + + [border-bottom-width length(pt) / events] + expected: FAIL + + [border-bottom-width length(pc) / events] + expected: FAIL + + [border-bottom-width length(px) / events] + expected: FAIL + + [border-bottom-width length(em) / events] + expected: FAIL + + [border-bottom-width length(ex) / events] + expected: FAIL + + [border-bottom-width length(mm) / events] + expected: FAIL + + [border-bottom-width length(cm) / events] + expected: FAIL + + [border-bottom-width length(in) / events] + expected: FAIL + + [border-left-width length(pt) / events] + expected: FAIL + + [border-left-width length(pc) / events] + expected: FAIL + + [border-left-width length(px) / events] + expected: FAIL + + [border-left-width length(em) / events] + expected: FAIL + + [border-left-width length(ex) / events] + expected: FAIL + + [border-left-width length(mm) / events] + expected: FAIL + + [border-left-width length(cm) / events] + expected: FAIL + + [border-left-width length(in) / events] + expected: FAIL + + [border-top-color color(rgba) / events] + expected: FAIL + + [border-right-color color(rgba) / events] + expected: FAIL + + [border-bottom-color color(rgba) / events] + expected: FAIL + + [border-left-color color(rgba) / events] + expected: FAIL + + [padding-bottom length(pt) / events] + expected: FAIL + + [padding-bottom length(pc) / events] + expected: FAIL + + [padding-bottom length(px) / events] + expected: FAIL + + [padding-bottom length(em) / events] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-002.html.ini b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-002.html.ini index 793afafa0e8..5a107d55d99 100644 --- a/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-002.html.ini +++ b/tests/wpt/metadata-layout-2020/css/css-transitions/properties-value-inherit-002.html.ini @@ -176,152 +176,152 @@ [padding-bottom length(em) / values] expected: FAIL - [color color(rgba) / values] + [padding-bottom length(ex) / values] expected: FAIL - [font-size length(pt) / values] + [padding-bottom length(mm) / values] expected: FAIL - [font-size length(pc) / values] + [padding-bottom length(cm) / values] expected: FAIL - [font-size length(px) / values] + [padding-bottom length(in) / values] expected: FAIL - [font-size length(em) / values] + [padding-left length(pt) / values] expected: FAIL - [font-size length(ex) / values] + [padding-left length(pc) / values] expected: FAIL - [font-size length(mm) / values] + [padding-left length(px) / values] expected: FAIL - [font-size length(cm) / values] + [padding-left length(em) / values] expected: FAIL - [font-size length(in) / values] + [padding-left length(ex) / values] expected: FAIL - [font-size percentage(%) / values] + [padding-left length(mm) / values] expected: FAIL - [font-weight font-weight(keyword) / values] + [padding-left length(cm) / values] expected: FAIL - [font-weight font-weight(numeric) / values] + [padding-left length(in) / values] expected: FAIL - [line-height number(integer) / values] + [padding-right length(pt) / values] expected: FAIL - [line-height number(decimal) / values] + [padding-right length(pc) / values] expected: FAIL - [line-height length(pt) / values] + [padding-right length(px) / values] expected: FAIL - [line-height length(pc) / values] + [padding-right length(em) / values] expected: FAIL - [line-height length(px) / values] + [padding-right length(ex) / values] expected: FAIL - [line-height length(em) / values] + [padding-right length(mm) / values] expected: FAIL - [line-height length(ex) / values] + [padding-right length(cm) / values] expected: FAIL - [line-height length(mm) / values] + [padding-right length(in) / values] expected: FAIL - [line-height length(cm) / values] + [padding-top length(pt) / values] expected: FAIL - [line-height length(in) / values] + [padding-top length(pc) / values] expected: FAIL - [line-height percentage(%) / values] + [padding-top length(px) / values] expected: FAIL - [letter-spacing length(pt) / values] + [padding-top length(em) / values] expected: FAIL - [letter-spacing length(pc) / values] + [padding-top length(ex) / values] expected: FAIL - [letter-spacing length(px) / values] + [padding-top length(mm) / values] expected: FAIL - [letter-spacing length(em) / values] + [padding-top length(cm) / values] expected: FAIL - [letter-spacing length(ex) / values] + [padding-top length(in) / values] expected: FAIL - [letter-spacing length(mm) / values] + [margin-bottom length(pt) / values] expected: FAIL - [letter-spacing length(cm) / values] + [margin-bottom length(pc) / values] expected: FAIL - [letter-spacing length(in) / values] + [margin-bottom length(px) / values] expected: FAIL - [word-spacing length(pt) / values] + [margin-bottom length(em) / values] expected: FAIL - [word-spacing length(pc) / values] + [margin-bottom length(ex) / values] expected: FAIL - [word-spacing length(px) / values] + [margin-bottom length(mm) / values] expected: FAIL - [word-spacing length(em) / values] + [margin-bottom length(cm) / values] expected: FAIL - [word-spacing length(ex) / values] + [margin-bottom length(in) / values] expected: FAIL - [word-spacing length(mm) / values] + [margin-left length(pt) / values] expected: FAIL - [word-spacing length(cm) / values] + [margin-left length(pc) / values] expected: FAIL - [word-spacing length(in) / values] + [margin-left length(px) / values] expected: FAIL - [word-spacing percentage(%) / values] + [margin-left length(em) / values] expected: FAIL - [text-indent length(pt) / values] + [margin-left length(ex) / values] expected: FAIL - [text-indent length(pc) / values] + [margin-left length(mm) / values] expected: FAIL - [text-indent length(px) / values] + [margin-left length(cm) / values] expected: FAIL - [text-indent length(em) / values] + [margin-left length(in) / values] expected: FAIL - [text-indent length(ex) / values] + [margin-right length(pt) / values] expected: FAIL - [text-indent length(mm) / values] + [margin-right length(pc) / values] expected: FAIL - [text-indent length(cm) / values] + [margin-right length(px) / values] expected: FAIL - [text-indent length(in) / values] + [margin-right length(em) / values] expected: FAIL - [text-indent percentage(%) / values] + [margin-right length(ex) / values] expected: FAIL - [text-shadow shadow(shadow) / values] + [margin-right length(mm) / values] expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/css-variables/variable-cssText.html.ini b/tests/wpt/metadata-layout-2020/css/css-variables/variable-cssText.html.ini new file mode 100644 index 00000000000..9682bdd9d65 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/css-variables/variable-cssText.html.ini @@ -0,0 +1,12 @@ +[variable-cssText.html] + [target4] + expected: FAIL + + [target5] + expected: FAIL + + [target6] + expected: FAIL + + [target9] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/MediaQueryList-addListener-handleEvent.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/MediaQueryList-addListener-handleEvent.html.ini index 2869eb8616e..037d7e0f951 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/MediaQueryList-addListener-handleEvent.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/MediaQueryList-addListener-handleEvent.html.ini @@ -4,6 +4,3 @@ [throws if handleEvent is thruthy and not callable] expected: FAIL - - [calls handleEvent method of event listener] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini deleted file mode 100644 index 72b09371038..00000000000 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-001.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[elementFromPoint-001.html] - [CSSOM View - 5 - extensions to the Document interface] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-dynamic-anon-box.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-dynamic-anon-box.html.ini deleted file mode 100644 index cf67b5d03dd..00000000000 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-dynamic-anon-box.html.ini +++ /dev/null @@ -1,3 +0,0 @@ -[elementFromPoint-dynamic-anon-box.html] - [Link should be clickable after hiding a scrollbox with an anonymous table inside] - expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-list-001.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-list-001.html.ini index 1f892861935..e1cdb2ac923 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-list-001.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-list-001.html.ini @@ -13,3 +13,15 @@ [
  • Outside 1
  • ] expected: FAIL + + [
  • Inside 2
  • ] + expected: FAIL + + [
  • Inside 3
  • ] + expected: FAIL + + [
  • Image Inside 1
  • ] + expected: FAIL + + [
  • Image Inside 2
  • ] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-subpixel.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-subpixel.html.ini new file mode 100644 index 00000000000..8f6f663ba61 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementFromPoint-subpixel.html.ini @@ -0,0 +1,3 @@ +[elementFromPoint-subpixel.html] + [Hit test top left corner of box] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini new file mode 100644 index 00000000000..a3496a40d07 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/cssom-view/elementsFromPoint-invalid-cases.html.ini @@ -0,0 +1,3 @@ +[elementsFromPoint-invalid-cases.html] + [The root element is the last element returned for otherwise empty queries within the viewport] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini b/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini index 94ee12598be..464e7f82302 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom/serialize-values.html.ini @@ -1,7 +1,4 @@ [serialize-values.html] - [direction: ltr] - expected: FAIL - [page-break-after: left] expected: FAIL @@ -11,15 +8,9 @@ [list-style-type: upper-roman] expected: FAIL - [vertical-align: .5%] - expected: FAIL - [page-break-before: auto] expected: FAIL - [text-indent: 0px] - expected: FAIL - [page-break-before: always] expected: FAIL @@ -29,366 +20,122 @@ [page-break-before: left] expected: FAIL - [list-style-type: upper-alpha] - expected: FAIL - - [empty-cells: hide] - expected: FAIL - - [empty-cells: inherit] - expected: FAIL - - [direction: inherit] - expected: FAIL - - [caption-side: bottom] - expected: FAIL - - [border-collapse: inherit] - expected: FAIL - - [outline-color: rgb(50, 75, 100)] - expected: FAIL - - [empty-cells: show] - expected: FAIL - - [list-style-position: inherit] - expected: FAIL - - [outline-color: red] - expected: FAIL - - [outline-style: none] - expected: FAIL - [page-break-after: auto] expected: FAIL - [display: table-row] - expected: FAIL - - [outline-style: double] - expected: FAIL - - [vertical-align: middle] - expected: FAIL - - [unicode-bidi: embed] - expected: FAIL - - [vertical-align: baseline] - expected: FAIL - - [outline-width: medium] - expected: FAIL - [page-break-inside: inherit] expected: FAIL - [caption-side: inherit] - expected: FAIL - - [vertical-align: text-top] - expected: FAIL - - [clear: left] - expected: FAIL - [page-break-after: avoid] expected: FAIL - [list-style-type: lower-alpha] - expected: FAIL - [page-break-before: right] expected: FAIL - [table-layout: auto] - expected: FAIL - - [display: table-column-group] - expected: FAIL - - [unicode-bidi: normal] - expected: FAIL - - [list-style-position: inside] - expected: FAIL - - [outline-width: .1em] - expected: FAIL - [widows: 101] expected: FAIL - [table-layout: fixed] - expected: FAIL - - [border-spacing: 1px] - expected: FAIL - - [border-spacing: .1em] - expected: FAIL - [outline-color: invert] expected: FAIL - [outline-style: groove] - expected: FAIL - - [text-transform: inherit] - expected: FAIL - - [outline-color: inherit] - expected: FAIL - [page-break-before: avoid] expected: FAIL [list-style-type: armenian] expected: FAIL - [text-indent: .1em] - expected: FAIL - - [text-transform: none] - expected: FAIL - - [list-style-type: lower-greek] - expected: FAIL - - [unicode-bidi: bidi-override] - expected: FAIL - - [text-align: justify] - expected: FAIL - - [outline-style: dashed] - expected: FAIL - [widows: inherit] expected: FAIL [page-break-inside: avoid] expected: FAIL - [clear: inherit] - expected: FAIL - [page-break-before: inherit] expected: FAIL - [outline-style: dotted] - expected: FAIL - - [display: table-caption] - expected: FAIL - - [clear: none] - expected: FAIL - - [vertical-align: bottom] - expected: FAIL - [orphans: inherit] expected: FAIL - [list-style-type: decimal] - expected: FAIL - [orphans: 101] expected: FAIL - [border-spacing: 0px] - expected: FAIL - - [text-indent: .5%] - expected: FAIL - - [display: table-cell] - expected: FAIL - - [text-indent: 5%] - expected: FAIL - - [border-spacing: inherit] - expected: FAIL - - [display: table-header-group] - expected: FAIL - - [vertical-align: inherit] - expected: FAIL - - [font-variant: normal] - expected: FAIL - - [float: inherit] - expected: FAIL - - [vertical-align: sub] - expected: FAIL - - [float: left] - expected: FAIL - [list-style-type: decimal-leading-zero] expected: FAIL [page-break-after: right] expected: FAIL - [vertical-align: text-bottom] - expected: FAIL - - [outline-color: black] - expected: FAIL - - [clear: both] - expected: FAIL - - [outline-width: 0px] - expected: FAIL - - [vertical-align: top] - expected: FAIL - - [font-variant: inherit] - expected: FAIL - - [vertical-align: 5%] - expected: FAIL - - [display: table] - expected: FAIL - [page-break-after: always] expected: FAIL - [outline-width: 1px] - expected: FAIL - - [outline-style: outset] - expected: FAIL - - [vertical-align: .1em] - expected: FAIL - - [outline-style: inherit] - expected: FAIL - - [clear: right] - expected: FAIL - - [text-transform: uppercase] - expected: FAIL - - [vertical-align: super] - expected: FAIL - [content: counter(par-num, upper-roman)] expected: FAIL - [outline-style: ridge] - expected: FAIL - - [table-layout: inherit] - expected: FAIL - - [display: inline-table] - expected: FAIL - [page-break-inside: auto] expected: FAIL - [direction: rtl] - expected: FAIL - - [background-attachment: fixed] - expected: FAIL - - [outline-style: solid] - expected: FAIL - - [vertical-align: 1px] - expected: FAIL - - [display: table-column] - expected: FAIL - - [outline-width: inherit] - expected: FAIL - - [border-collapse: separate] - expected: FAIL - [list-style-type: georgian] expected: FAIL - [outline-style: inset] - expected: FAIL - - [float: right] - expected: FAIL - - [text-indent: inherit] - expected: FAIL - - [outline-width: thin] - expected: FAIL - - [outline-width: thick] - expected: FAIL - - [caption-side: top] - expected: FAIL - - [display: table-row-group] - expected: FAIL - - [vertical-align: 0px] - expected: FAIL - - [text-transform: lowercase] - expected: FAIL - [list-style-type: lower-latin] expected: FAIL - [list-style-position: outside] - expected: FAIL - - [text-transform: capitalize] - expected: FAIL - - [text-indent: 1px] - expected: FAIL - - [unicode-bidi: inherit] - expected: FAIL - - [float: none] - expected: FAIL - [list-style-type: lower-roman] expected: FAIL - [font-variant: small-caps] + [background-position: 5% center] expected: FAIL - [outline-color: rgba(5, 7, 10, 0.5)] + [background-position: .5% center] expected: FAIL - [display: table-footer-group] + [background-position: -5% center] expected: FAIL - [border-collapse: collapse] + [background-position: -.5% center] expected: FAIL - [content: counter(par-num, decimal)] + [background-position: 0px center] expected: FAIL - [content: counter(par-num)] + [background-position: 1px center] expected: FAIL + [background-position: .1em center] + expected: FAIL + + [background-position: -0px center] + expected: FAIL + + [background-position: -1px center] + expected: FAIL + + [background-position: -.1em center] + expected: FAIL + + [background-position: left center] + expected: FAIL + + [background-position: center top] + expected: FAIL + + [background-position: center center] + expected: FAIL + + [background-position: center bottom] + expected: FAIL + + [background-position: right center] + expected: FAIL + + [content: url("http://localhost/")] + expected: FAIL + + [content: url(http://localhost/)] + expected: FAIL + + [content: attr(foo-bar)] + expected: FAIL + + [content: attr(foo_bar)] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/cssom/shorthand-values.html.ini b/tests/wpt/metadata-layout-2020/css/cssom/shorthand-values.html.ini index 4930b97a3ca..a06f2329405 100644 --- a/tests/wpt/metadata-layout-2020/css/cssom/shorthand-values.html.ini +++ b/tests/wpt/metadata-layout-2020/css/cssom/shorthand-values.html.ini @@ -31,3 +31,6 @@ [The serialization of list-style-type: circle; list-style-position: inside; list-style-image: none; should be canonical.] expected: FAIL + + [The serialization of border-top: 1px; border-right: 1px; border-bottom: 1px; border-left: 1px; border-image: none; should be canonical.] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini b/tests/wpt/metadata-layout-2020/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini new file mode 100644 index 00000000000..06e1bdfb1a8 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/css/selectors/invalidation/media-pseudo-classes-in-has.html.ini @@ -0,0 +1,9 @@ +[media-pseudo-classes-in-has.html] + [Test :playing pseudo-classes] + expected: FAIL + + [Test :seeking pseudo-class] + expected: FAIL + + [Test :muted pseudo-class] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/dom/events/webkit-transition-end-event.html.ini b/tests/wpt/metadata-layout-2020/dom/events/webkit-transition-end-event.html.ini index b7fe8688a23..c909dd22076 100644 --- a/tests/wpt/metadata-layout-2020/dom/events/webkit-transition-end-event.html.ini +++ b/tests/wpt/metadata-layout-2020/dom/events/webkit-transition-end-event.html.ini @@ -1,4 +1,5 @@ [webkit-transition-end-event.html] + expected: TIMEOUT [dispatchEvent of an transitionend event does not trigger a prefixed event handler or listener] expected: FAIL @@ -25,3 +26,6 @@ [onwebkittransitionend event handler should not trigger if an unprefixed event handler also exists] expected: FAIL + + [webkitTransitionEnd event listener is case sensitive] + expected: TIMEOUT diff --git a/tests/wpt/metadata-layout-2020/encoding/streams/invalid-realm.window.js.ini b/tests/wpt/metadata-layout-2020/encoding/streams/invalid-realm.window.js.ini new file mode 100644 index 00000000000..0f16e272af5 --- /dev/null +++ b/tests/wpt/metadata-layout-2020/encoding/streams/invalid-realm.window.js.ini @@ -0,0 +1,12 @@ +[invalid-realm.window.html] + [TextDecoderStream: write in detached realm should succeed] + expected: FAIL + + [TextEncoderStream: write in detached realm should succeed] + expected: FAIL + + [TextEncoderStream: close in detached realm should succeed] + expected: FAIL + + [TextDecoderStream: close in detached realm should succeed] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/fetch/content-length/parsing.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/content-length/parsing.window.js.ini index fc21a631bdd..2ece7dfad7d 100644 --- a/tests/wpt/metadata-layout-2020/fetch/content-length/parsing.window.js.ini +++ b/tests/wpt/metadata-layout-2020/fetch/content-length/parsing.window.js.ini @@ -79,3 +79,6 @@ [Input: "Content-Length: 30". Expected: 30.] expected: FAIL + + [Input: "Content-Length: 42,42". Expected: 42.] + expected: FAIL diff --git a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini index 71592813e08..e25b13de8d0 100644 --- a/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata-layout-2020/fetch/content-type/response.window.js.ini @@ -309,5 +309,5 @@ [Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK] expected: NOTRUN - [ - + diff --git a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/_module.py b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/_module.py index 506c5cc998c..c2034033c79 100644 --- a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/_module.py +++ b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/_module.py @@ -49,7 +49,7 @@ class command: self.params_fn = fn self.result_fn: Optional[Callable[..., Any]] = None - def result(self, fn: Callable[[Any, MutableMapping[str, Any]], Mapping[str, Any]]) -> None: + def result(self, fn: Callable[[Any, MutableMapping[str, Any]], Any]) -> None: self.result_fn = fn def __set_name__(self, owner: Any, name: str) -> None: diff --git a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/browsing_context.py b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/browsing_context.py index cdb2887e197..033929d5ff5 100644 --- a/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/browsing_context.py +++ b/tests/wpt/web-platform-tests/tools/webdriver/webdriver/bidi/modules/browsing_context.py @@ -1,9 +1,23 @@ +import base64 from typing import Any, Optional, Mapping, MutableMapping from ._module import BidiModule, command class BrowsingContext(BidiModule): + @command + def capture_screenshot(self, context: str) -> Mapping[str, Any]: + params: MutableMapping[str, Any] = { + "context": context + } + + return params + + @capture_screenshot.result + def _capture_screenshot(self, result: Mapping[str, Any]) -> bytes: + assert result["data"] is not None + return base64.b64decode(result["data"]) + @command def close(self, context: Optional[str] = None) -> Mapping[str, Any]: params: MutableMapping[str, Any] = {} diff --git a/tests/wpt/web-platform-tests/url/resources/urltestdata.json b/tests/wpt/web-platform-tests/url/resources/urltestdata.json index 3cf106965b1..b681ad59809 100644 --- a/tests/wpt/web-platform-tests/url/resources/urltestdata.json +++ b/tests/wpt/web-platform-tests/url/resources/urltestdata.json @@ -3917,6 +3917,22 @@ "search": "", "hash": "" }, + "Non-special domains with empty labels", + { + "input": "h://.", + "base": "about:blank", + "href": "h://.", + "origin": "h://.", + "protocol": "h:", + "username": "", + "password": "", + "host": ".", + "hostname": ".", + "port": "", + "pathname": "", + "search": "", + "hash": "" + }, "Broken IPv6", { "input": "http://[www.google.com]/", @@ -8124,6 +8140,21 @@ "search": "", "hash": "" }, + "IDNA hostnames which get mapped to 'localhost'", + { + "input": "file://loC𝐀𝐋𝐇𝐨𝐬𝐭/usr/bin", + "base": "about:blank", + "href": "file:///usr/bin", + "protocol": "file:", + "username": "", + "password": "", + "host": "", + "hostname": "", + "port": "", + "pathname": "/usr/bin", + "search": "", + "hash": "" + }, "Empty host after the domain to ASCII", { "input": "file://\u00ad/p", diff --git a/tests/wpt/web-platform-tests/web-locks/signal.tentative.https.any.js b/tests/wpt/web-platform-tests/web-locks/signal.tentative.https.any.js index cbb23df8a05..5a37e3ae871 100644 --- a/tests/wpt/web-platform-tests/web-locks/signal.tentative.https.any.js +++ b/tests/wpt/web-platform-tests/web-locks/signal.tentative.https.any.js @@ -29,6 +29,36 @@ promise_test(async t => { 'Request should reject with AbortError'); }, 'Passing an already aborted signal aborts'); +promise_test(async t => { + const res = uniqueName(t); + + const controller = new AbortController(); + const reason = 'My dog ate it.'; + controller.abort(reason); + + const promise = + navigator.locks.request(res, {signal: controller.signal}, + t.unreached_func('callback should not run')); + + await promise_rejects_exactly( + t, reason, promise, "Rejection should give the abort reason"); +}, 'Passing an already aborted signal rejects with the custom abort reason.'); + +promise_test(async t => { + const res = uniqueName(t); + + const controller = new AbortController(); + controller.abort(); + + const promise = + navigator.locks.request(res, {signal: controller.signal}, + t.unreached_func('callback should not run')); + + await promise_rejects_exactly( + t, controller.signal.reason, promise, + "Rejection should give the abort reason"); +}, 'Passing an already aborted signal rejects with the default abort reason.'); + promise_test(async t => { const res = uniqueName(t); diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/__init__.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/__init__.py new file mode 100644 index 00000000000..cd0ad7a2826 --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/__init__.py @@ -0,0 +1,94 @@ +from base64 import encodebytes + +from webdriver.bidi.modules.script import ContextTarget + +from tests.support.image import png_dimensions + +async def viewport_dimensions(bidi_session, context): + """Get the dimensions of the viewport containing context. + + :param bidi_session: BiDiSession + :param context: Browsing context ID + :returns: Tuple of (int, int) containing viewport width, viewport height. + """ + result = await bidi_session.script.call_function( + function_declaration="""() => { + const {devicePixelRatio, innerHeight, innerWidth} = window; + + return [ + Math.floor(innerWidth * devicePixelRatio), + Math.floor(innerHeight * devicePixelRatio) + ]; + }""", + target=ContextTarget(context["context"]), + await_promise=False) + return tuple(item["value"] for item in result["value"]) + + +class ImageDifference: + """Summary of the pixel-level differences between two images. + + :param total_pixels: The total number of pixel differences between the images + :param max_difference: The maximum difference between any corresponding color channels across + all pixels of the image. + """ + + def __init__(self, total_pixels, max_difference): + self.total_pixels = total_pixels + self.max_difference = max_difference + + def equal(self): + return self.total_pixels == 0 + + +async def compare_png_data(bidi_session, + url, + img1: bytes, + img2: bytes) -> ImageDifference: + """Calculate difference statistics between two PNG images. + + :param bidi_session: BidiSession + :param url: fixture to construct a URL string given a path + :param img1: Bytes of first PNG image + :param img2: Bytes of second PNG image + :returns: ImageDifference representing the total number of different pixels, + and maximum per-channel difference between the images. + """ + if img1 == img2: + return ImageDifference(0, 0) + + width, height = png_dimensions(img1) + assert (width, height) == png_dimensions(img2) + + context = await bidi_session.browsing_context.create(type_hint="tab") + await bidi_session.browsing_context.navigate( + context=context["context"], + url=url("/webdriver/tests/support/html/render.html"), + wait="complete") + result = await bidi_session.script.call_function( + function_declaration="""(img1, img2, width, height) => { + return compare(img1, img2, width, height) + }""", + target=ContextTarget(context["context"]), + arguments=[{"type": "string", + "value": encodebytes(img1).decode()}, + {"type": "string", + "value": encodebytes(img2).decode()}, + {"type": "number", + "value": width}, + {"type": "number", + "value": height}], + await_promise=True) + await bidi_session.browsing_context.close(context=context["context"]) + assert result["type"] == "object" + assert set(item[0] for item in result["value"]) == {"totalPixels", "maxDifference"} + for item in result["value"]: + assert len(item) == 2 + assert item[1]["type"] == "number" + if item[0] == "totalPixels": + total_pixels = item[1]["value"] + elif item[0] == "maxDifference": + max_difference = item[1]["value"] + else: + raise Exception(f"Unexpected object key ${item[0]}") + return ImageDifference(total_pixels, max_difference) diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py new file mode 100644 index 00000000000..f406698096a --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/capture_screenshot.py @@ -0,0 +1,43 @@ +import pytest + +from tests.support.image import png_dimensions + +from . import compare_png_data, viewport_dimensions + + +@pytest.mark.asyncio +async def test_capture(bidi_session, url, top_context, inline): + expected_size = await viewport_dimensions(bidi_session, top_context) + + await bidi_session.browsing_context.navigate( + context=top_context["context"], url="about:blank", wait="complete" + ) + reference_data = await bidi_session.browsing_context.capture_screenshot( + context=top_context["context"]) + assert png_dimensions(reference_data) == expected_size + + await bidi_session.browsing_context.navigate( + context=top_context["context"], url=inline("
    foo
    "), wait="complete" + ) + data = await bidi_session.browsing_context.capture_screenshot( + context=top_context["context"]) + + comparison = await compare_png_data(bidi_session, + url, + reference_data, + data) + assert not comparison.equal() + + # Take a second screenshot that should be identical to validate that + # we don't just always return false here + await bidi_session.browsing_context.navigate( + context=top_context["context"], url=inline("
    foo
    "), wait="complete" + ) + new_data = await bidi_session.browsing_context.capture_screenshot( + context=top_context["context"]) + + comparison = await compare_png_data(bidi_session, + url, + data, + new_data) + assert comparison.equal() diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/frame.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/frame.py new file mode 100644 index 00000000000..960998044cd --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/frame.py @@ -0,0 +1,60 @@ +import pytest + +from tests.support.image import png_dimensions +from tests.support.screenshot import (DEFAULT_CONTENT, + REFERENCE_CONTENT, + REFERENCE_STYLE, + OUTER_IFRAME_STYLE, + INNER_IFRAME_STYLE) + +from . import compare_png_data, viewport_dimensions + + +@pytest.mark.asyncio +async def test_iframe(bidi_session, top_context, inline, iframe): + viewport_size = await viewport_dimensions(bidi_session, top_context) + + iframe_content = f"{INNER_IFRAME_STYLE}{DEFAULT_CONTENT}" + url = inline(f"{OUTER_IFRAME_STYLE}{iframe(iframe_content)}") + await bidi_session.browsing_context.navigate(context=top_context["context"], + url=url, + wait="complete") + reference_data = await bidi_session.browsing_context.capture_screenshot( + context=top_context["context"]) + assert png_dimensions(reference_data) == viewport_size + + all_contexts = await bidi_session.browsing_context.get_tree(root=top_context["context"]) + frame_context = all_contexts[0]["children"][0] + + data = await bidi_session.browsing_context.capture_screenshot(context=frame_context["context"]) + + assert png_dimensions(data) < png_dimensions(reference_data) + + +@pytest.mark.parametrize("domain", ["", "alt"], ids=["same_origin", "cross_origin"]) +@pytest.mark.asyncio +async def test_context_origin(bidi_session, url, top_context, inline, iframe, domain): + expected_size = await viewport_dimensions(bidi_session, top_context) + + initial_url = inline(f"{REFERENCE_STYLE}{REFERENCE_CONTENT}") + await bidi_session.browsing_context.navigate(context=top_context["context"], + url=initial_url, + wait="complete") + + reference_data = await bidi_session.browsing_context.capture_screenshot( + context=top_context["context"]) + assert png_dimensions(reference_data) == expected_size + + iframe_content = f"{INNER_IFRAME_STYLE}{DEFAULT_CONTENT}" + new_url = inline(f"{OUTER_IFRAME_STYLE}{iframe(iframe_content, domain=domain)}") + await bidi_session.browsing_context.navigate(context=top_context["context"], + url=new_url, + wait="complete") + + data = await bidi_session.browsing_context.capture_screenshot(context=top_context["context"]) + comparison = await compare_png_data(bidi_session, + url, + reference_data, + data) + + assert comparison.equal() diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/invalid.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/invalid.py new file mode 100644 index 00000000000..bb6d054b916 --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/browsing_context/capture_screenshot/invalid.py @@ -0,0 +1,27 @@ +import pytest + +import webdriver.bidi.error as error + + +@pytest.mark.parametrize("value", [None, False, 42, {}, []]) +@pytest.mark.asyncio +async def test_params_context_invalid_type(bidi_session, value): + with pytest.raises(error.InvalidArgumentException): + await bidi_session.browsing_context.capture_screenshot(context=value) + + +@pytest.mark.asyncio +async def test_invalid_frame(bidi_session, top_context, inline): + with pytest.raises(error.NoSuchFrameException): + await bidi_session.browsing_context.capture_screenshot(context="_invalid_") + + +@pytest.mark.asyncio +async def test_closed_frame(bidi_session, top_context, inline, add_and_remove_iframe): + url = inline("
    foo
    ") + await bidi_session.browsing_context.navigate( + context=top_context["context"], url=url, wait="complete" + ) + frame_id = await add_and_remove_iframe(top_context) + with pytest.raises(error.NoSuchFrameException): + await bidi_session.browsing_context.capture_screenshot(context=frame_id) diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/call_function/exception_details.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/call_function/exception_details.py index 65d287dec5a..ef1118d0de1 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/call_function/exception_details.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/call_function/exception_details.py @@ -1,5 +1,4 @@ import pytest - from webdriver.bidi.modules.script import ContextTarget, ScriptEvaluateResultException from ... import any_int, any_string, recursive_compare @@ -148,9 +147,7 @@ async def test_invalid_function(bidi_session, top_context): 'children': [], 'localName': 'div', 'namespaceURI': 'http://www.w3.org/1999/xhtml', - 'nodeName': '', 'nodeType': 1, - 'nodeValue': '' } }, ), diff --git a/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/evaluate/exception_details.py b/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/evaluate/exception_details.py index e92012382ee..ac4b8b6944b 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/evaluate/exception_details.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/bidi/script/evaluate/exception_details.py @@ -1,5 +1,4 @@ import pytest - from webdriver.bidi.modules.script import ContextTarget, ScriptEvaluateResultException from ... import any_int, any_string, recursive_compare @@ -148,9 +147,7 @@ async def test_invalid_script(bidi_session, top_context): 'children': [], 'localName': 'div', 'namespaceURI': 'http://www.w3.org/1999/xhtml', - 'nodeName': '', 'nodeType': 1, - 'nodeValue': '' } }, ), diff --git a/tests/wpt/web-platform-tests/webdriver/tests/support/asserts.py b/tests/wpt/web-platform-tests/webdriver/tests/support/asserts.py index bc59d7b3966..f5812bc8932 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/support/asserts.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/support/asserts.py @@ -1,5 +1,4 @@ import imghdr -import struct from base64 import decodebytes from webdriver import Element, NoSuchAlertException, WebDriverException @@ -213,7 +212,14 @@ def assert_move_to_coordinates(point, target, events): def assert_png(screenshot): - """Test that screenshot is a Base64 encoded PNG file.""" - image = decodebytes(screenshot.encode()) + """Test that screenshot is a Base64 encoded PNG file, or a bytestring representing a PNG. + + Returns the bytestring for the PNG, if the assert passes + """ + if type(screenshot) == str: + image = decodebytes(screenshot.encode()) + else: + image = screenshot mime_type = imghdr.what("", image) assert mime_type == "png", "Expected image to be PNG, but it was {}".format(mime_type) + return image diff --git a/tests/wpt/web-platform-tests/webdriver/tests/support/fixtures_bidi.py b/tests/wpt/web-platform-tests/webdriver/tests/support/fixtures_bidi.py index f4a5b9ad80e..7842e325a02 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/support/fixtures_bidi.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/support/fixtures_bidi.py @@ -73,3 +73,43 @@ def current_time(bidi_session, top_context): return result["value"] return _ + + +@pytest.fixture +def add_and_remove_iframe(bidi_session, inline): + """Create a frame, wait for load, and remove it. + + Return the frame's context id, which allows to test for invalid + browsing context references. + """ + async def closed_frame(context, url=inline("test-frame")): + initial_contexts = await bidi_session.browsing_context.get_tree(root=context["context"]) + resp = await bidi_session.script.call_function( + function_declaration= + """(url) => { + const iframe = document.createElement("iframe"); + // Once we're confident implementations support returning the iframe, just + // return that directly. For now generate a unique id to use as a handle. + const id = `testframe-${Math.random()}`; + iframe.id = id; + iframe.src = url; + document.documentElement.lastElementChild.append(iframe); + return new Promise(resolve => iframe.onload = () => resolve(id)) + }""", + target={"context": context["context"]}, + await_promise=True) + iframe_dom_id = resp["value"] + + new_contexts = await bidi_session.browsing_context.get_tree(root=context["context"]) + added_contexts = ({item["context"] for item in new_contexts[0]["children"]} - + {item["context"] for item in initial_contexts[0]["children"]}) + assert len(added_contexts) == 1 + frame_id = added_contexts.pop() + + await bidi_session.script.evaluate( + expression=f"document.getElementById('{iframe_dom_id}').remove()", + target={"context": context["context"]}, + await_promise=False) + + return frame_id + return closed_frame diff --git a/tests/wpt/web-platform-tests/webdriver/tests/support/html/render.html b/tests/wpt/web-platform-tests/webdriver/tests/support/html/render.html new file mode 100644 index 00000000000..d0408480daf --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/support/html/render.html @@ -0,0 +1,68 @@ + + + diff --git a/tests/wpt/web-platform-tests/webdriver/tests/support/image.py b/tests/wpt/web-platform-tests/webdriver/tests/support/image.py index 2e7ad8c1309..e4fc88f5b81 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/support/image.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/support/image.py @@ -1,12 +1,9 @@ -import math import struct -from base64 import decodebytes from tests.support.asserts import assert_png def png_dimensions(screenshot): - assert_png(screenshot) - image = decodebytes(screenshot.encode()) + image = assert_png(screenshot) width, height = struct.unpack(">LL", image[16:24]) return int(width), int(height) diff --git a/tests/wpt/web-platform-tests/webdriver/tests/support/screenshot.py b/tests/wpt/web-platform-tests/webdriver/tests/support/screenshot.py new file mode 100644 index 00000000000..374e5ed539c --- /dev/null +++ b/tests/wpt/web-platform-tests/webdriver/tests/support/screenshot.py @@ -0,0 +1,50 @@ +DEFAULT_CONTENT = "
    Lorem ipsum dolor sit amet.
    " + +REFERENCE_CONTENT = f"
    {DEFAULT_CONTENT}
    " +REFERENCE_STYLE = """ + +""" + +OUTER_IFRAME_STYLE = """ + +""" + +INNER_IFRAME_STYLE = """ + +""" diff --git a/tests/wpt/web-platform-tests/webdriver/tests/take_screenshot/iframe.py b/tests/wpt/web-platform-tests/webdriver/tests/take_screenshot/iframe.py index 81881c1dae7..258e764407a 100644 --- a/tests/wpt/web-platform-tests/webdriver/tests/take_screenshot/iframe.py +++ b/tests/wpt/web-platform-tests/webdriver/tests/take_screenshot/iframe.py @@ -4,57 +4,11 @@ from tests.support.asserts import assert_success from tests.support.image import png_dimensions from . import viewport_dimensions - -DEFAULT_CONTENT = "
    Lorem ipsum dolor sit amet.
    " - -REFERENCE_CONTENT = "
    {}
    ".format(DEFAULT_CONTENT) -REFERENCE_STYLE = """ - -""" - -OUTER_IFRAME_STYLE = """ - -""" - -INNER_IFRAME_STYLE = """ - -""" +from tests.support.screenshot import (DEFAULT_CONTENT, + REFERENCE_CONTENT, + REFERENCE_STYLE, + OUTER_IFRAME_STYLE, + INNER_IFRAME_STYLE) def take_screenshot(session):