[webkit-changes] [WebKit/WebKit] 2602b2: Create reference tests for CSS filters

Simon Fraser noreply at github.com
Mon Sep 12 14:50:15 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2602b2075a273dcbde837f1a407d5341a9b83eae
      https://github.com/WebKit/WebKit/commit/2602b2075a273dcbde837f1a407d5341a9b83eae
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2022-09-12 (Mon, 12 Sep 2022)

  Changed paths:
    M LayoutTests/TestExpectations
    R LayoutTests/css3/filters/css-opacity-with-drop-shadow-expected.html
    R LayoutTests/css3/filters/css-opacity-with-drop-shadow.html
    A LayoutTests/css3/filters/effect-blur-expected.html
    R LayoutTests/css3/filters/effect-blur-expected.png
    R LayoutTests/css3/filters/effect-blur-expected.txt
    A LayoutTests/css3/filters/effect-blur-hw-expected.html
    R LayoutTests/css3/filters/effect-blur-hw-expected.png
    R LayoutTests/css3/filters/effect-blur-hw-expected.txt
    M LayoutTests/css3/filters/effect-blur-hw.html
    M LayoutTests/css3/filters/effect-blur.html
    A LayoutTests/css3/filters/effect-brightness-expected.html
    R LayoutTests/css3/filters/effect-brightness-expected.png
    R LayoutTests/css3/filters/effect-brightness-expected.txt
    A LayoutTests/css3/filters/effect-brightness-hw-expected.html
    R LayoutTests/css3/filters/effect-brightness-hw-expected.png
    R LayoutTests/css3/filters/effect-brightness-hw-expected.txt
    M LayoutTests/css3/filters/effect-brightness-hw.html
    M LayoutTests/css3/filters/effect-brightness.html
    A LayoutTests/css3/filters/effect-combined-expected.html
    R LayoutTests/css3/filters/effect-combined-expected.png
    R LayoutTests/css3/filters/effect-combined-expected.txt
    A LayoutTests/css3/filters/effect-combined-hw-expected.html
    R LayoutTests/css3/filters/effect-combined-hw-expected.png
    R LayoutTests/css3/filters/effect-combined-hw-expected.txt
    M LayoutTests/css3/filters/effect-combined-hw.html
    M LayoutTests/css3/filters/effect-combined.html
    A LayoutTests/css3/filters/effect-contrast-expected.html
    R LayoutTests/css3/filters/effect-contrast-expected.png
    R LayoutTests/css3/filters/effect-contrast-expected.txt
    A LayoutTests/css3/filters/effect-contrast-hw-expected.html
    R LayoutTests/css3/filters/effect-contrast-hw-expected.png
    R LayoutTests/css3/filters/effect-contrast-hw-expected.txt
    M LayoutTests/css3/filters/effect-contrast-hw.html
    M LayoutTests/css3/filters/effect-contrast.html
    A LayoutTests/css3/filters/effect-drop-shadow-expected.html
    R LayoutTests/css3/filters/effect-drop-shadow-expected.png
    R LayoutTests/css3/filters/effect-drop-shadow-expected.txt
    A LayoutTests/css3/filters/effect-drop-shadow-hw-expected.html
    R LayoutTests/css3/filters/effect-drop-shadow-hw-expected.png
    R LayoutTests/css3/filters/effect-drop-shadow-hw-expected.txt
    M LayoutTests/css3/filters/effect-drop-shadow-hw.html
    M LayoutTests/css3/filters/effect-drop-shadow.html
    A LayoutTests/css3/filters/effect-grayscale-expected.html
    R LayoutTests/css3/filters/effect-grayscale-expected.png
    R LayoutTests/css3/filters/effect-grayscale-expected.txt
    A LayoutTests/css3/filters/effect-grayscale-hw-expected.html
    R LayoutTests/css3/filters/effect-grayscale-hw-expected.png
    R LayoutTests/css3/filters/effect-grayscale-hw-expected.txt
    M LayoutTests/css3/filters/effect-grayscale-hw.html
    M LayoutTests/css3/filters/effect-grayscale.html
    A LayoutTests/css3/filters/effect-hue-rotate-expected.html
    R LayoutTests/css3/filters/effect-hue-rotate-expected.png
    R LayoutTests/css3/filters/effect-hue-rotate-expected.txt
    A LayoutTests/css3/filters/effect-hue-rotate-hw-expected.html
    R LayoutTests/css3/filters/effect-hue-rotate-hw-expected.png
    R LayoutTests/css3/filters/effect-hue-rotate-hw-expected.txt
    M LayoutTests/css3/filters/effect-hue-rotate-hw.html
    M LayoutTests/css3/filters/effect-hue-rotate.html
    A LayoutTests/css3/filters/effect-invert-expected.html
    R LayoutTests/css3/filters/effect-invert-expected.png
    R LayoutTests/css3/filters/effect-invert-expected.txt
    A LayoutTests/css3/filters/effect-invert-hw-expected.html
    R LayoutTests/css3/filters/effect-invert-hw-expected.png
    R LayoutTests/css3/filters/effect-invert-hw-expected.txt
    M LayoutTests/css3/filters/effect-invert-hw.html
    M LayoutTests/css3/filters/effect-invert.html
    A LayoutTests/css3/filters/effect-opacity-expected.html
    R LayoutTests/css3/filters/effect-opacity-expected.png
    R LayoutTests/css3/filters/effect-opacity-expected.txt
    A LayoutTests/css3/filters/effect-opacity-hw-expected.html
    R LayoutTests/css3/filters/effect-opacity-hw-expected.png
    R LayoutTests/css3/filters/effect-opacity-hw-expected.txt
    M LayoutTests/css3/filters/effect-opacity-hw.html
    M LayoutTests/css3/filters/effect-opacity.html
    A LayoutTests/css3/filters/effect-saturate-expected.html
    R LayoutTests/css3/filters/effect-saturate-expected.png
    R LayoutTests/css3/filters/effect-saturate-expected.txt
    A LayoutTests/css3/filters/effect-saturate-hw-expected.html
    R LayoutTests/css3/filters/effect-saturate-hw-expected.png
    R LayoutTests/css3/filters/effect-saturate-hw-expected.txt
    M LayoutTests/css3/filters/effect-saturate-hw.html
    M LayoutTests/css3/filters/effect-saturate.html
    A LayoutTests/css3/filters/effect-sepia-expected.html
    R LayoutTests/css3/filters/effect-sepia-expected.png
    R LayoutTests/css3/filters/effect-sepia-expected.txt
    A LayoutTests/css3/filters/effect-sepia-hw-expected.html
    R LayoutTests/css3/filters/effect-sepia-hw-expected.png
    R LayoutTests/css3/filters/effect-sepia-hw-expected.txt
    M LayoutTests/css3/filters/effect-sepia-hw.html
    M LayoutTests/css3/filters/effect-sepia.html
    A LayoutTests/css3/filters/resources/filter-helpers.css
    A LayoutTests/css3/filters/resources/filter-helpers.js
    R LayoutTests/platform/ios/css3/filters/effect-blur-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-blur-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-brightness-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-brightness-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-combined-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-combined-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-contrast-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-contrast-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-drop-shadow-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-drop-shadow-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-grayscale-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-grayscale-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-hue-rotate-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-hue-rotate-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-invert-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-invert-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-opacity-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-opacity-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-saturate-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-saturate-hw-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-sepia-expected.txt
    R LayoutTests/platform/ios/css3/filters/effect-sepia-hw-expected.txt
    R LayoutTests/platform/mac-wk2/css3/filters/effect-blur-expected.png
    R LayoutTests/platform/mac-wk2/css3/filters/effect-combined-expected.png
    R LayoutTests/platform/mac-wk2/css3/filters/effect-opacity-expected.png

  Log Message:
  -----------
  Create reference tests for CSS filters
https://bugs.webkit.org/show_bug.cgi?id=245041
<rdar://99786910>

Reviewed by Said Abou-Hallawa.

css3/filters/effect* tests were pixel tests, not reference tests. We can make reference
tests by constructing an -expected.html using the canonical SVG filters described in
<https://www.w3.org/TR/filter-effects-1/>.

For every CSS filter effect other than reference filters, this commit
adds a reference test for software and GPU-rendered filters. Code in `filter-helpers.js`
knows how to build the equivalent set of SVG filters given a list of CSS filters,
which is used in expectations.

Pixel tolerance is required in many tests to cover rendering differences.

* LayoutTests/TestExpectations:
* LayoutTests/css3/filters/css-opacity-with-drop-shadow-expected.html: Removed.
* LayoutTests/css3/filters/css-opacity-with-drop-shadow.html: Removed.
* LayoutTests/css3/filters/effect-blur-expected.html: Added.
* LayoutTests/css3/filters/effect-blur-expected.png: Removed.
* LayoutTests/css3/filters/effect-blur-expected.txt: Removed.
* LayoutTests/css3/filters/effect-blur-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-blur-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-blur-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-blur-hw.html:
* LayoutTests/css3/filters/effect-blur.html:
* LayoutTests/css3/filters/effect-brightness-expected.html: Added.
* LayoutTests/css3/filters/effect-brightness-expected.png: Removed.
* LayoutTests/css3/filters/effect-brightness-expected.txt: Removed.
* LayoutTests/css3/filters/effect-brightness-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-brightness-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-brightness-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-brightness-hw.html:
* LayoutTests/css3/filters/effect-brightness.html:
* LayoutTests/css3/filters/effect-combined-expected.html: Added.
* LayoutTests/css3/filters/effect-combined-expected.png: Removed.
* LayoutTests/css3/filters/effect-combined-expected.txt: Removed.
* LayoutTests/css3/filters/effect-combined-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-combined-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-combined-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-combined-hw.html:
* LayoutTests/css3/filters/effect-combined.html:
* LayoutTests/css3/filters/effect-contrast-expected.html: Added.
* LayoutTests/css3/filters/effect-contrast-expected.png: Removed.
* LayoutTests/css3/filters/effect-contrast-expected.txt: Removed.
* LayoutTests/css3/filters/effect-contrast-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-contrast-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-contrast-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-contrast-hw.html:
* LayoutTests/css3/filters/effect-contrast.html:
* LayoutTests/css3/filters/effect-drop-shadow-expected.html: Added.
* LayoutTests/css3/filters/effect-drop-shadow-expected.png: Removed.
* LayoutTests/css3/filters/effect-drop-shadow-expected.txt: Removed.
* LayoutTests/css3/filters/effect-drop-shadow-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-drop-shadow-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-drop-shadow-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-drop-shadow-hw.html:
* LayoutTests/css3/filters/effect-drop-shadow.html:
* LayoutTests/css3/filters/effect-grayscale-expected.html: Added.
* LayoutTests/css3/filters/effect-grayscale-expected.png: Removed.
* LayoutTests/css3/filters/effect-grayscale-expected.txt: Removed.
* LayoutTests/css3/filters/effect-grayscale-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-grayscale-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-grayscale-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-grayscale-hw.html:
* LayoutTests/css3/filters/effect-grayscale.html:
* LayoutTests/css3/filters/effect-hue-rotate-expected.html: Added.
* LayoutTests/css3/filters/effect-hue-rotate-expected.png: Removed.
* LayoutTests/css3/filters/effect-hue-rotate-expected.txt: Removed.
* LayoutTests/css3/filters/effect-hue-rotate-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-hue-rotate-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-hue-rotate-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-hue-rotate-hw.html:
* LayoutTests/css3/filters/effect-hue-rotate.html:
* LayoutTests/css3/filters/effect-invert-expected.html: Added.
* LayoutTests/css3/filters/effect-invert-expected.png: Removed.
* LayoutTests/css3/filters/effect-invert-expected.txt: Removed.
* LayoutTests/css3/filters/effect-invert-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-invert-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-invert-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-invert-hw.html:
* LayoutTests/css3/filters/effect-invert.html:
* LayoutTests/css3/filters/effect-opacity-expected.html: Added.
* LayoutTests/css3/filters/effect-opacity-expected.png: Removed.
* LayoutTests/css3/filters/effect-opacity-expected.txt: Removed.
* LayoutTests/css3/filters/effect-opacity-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-opacity-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-opacity-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-opacity-hw.html:
* LayoutTests/css3/filters/effect-opacity.html:
* LayoutTests/css3/filters/effect-saturate-expected.html: Added.
* LayoutTests/css3/filters/effect-saturate-expected.png: Removed.
* LayoutTests/css3/filters/effect-saturate-expected.txt: Removed.
* LayoutTests/css3/filters/effect-saturate-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-saturate-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-saturate-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-saturate-hw.html:
* LayoutTests/css3/filters/effect-saturate.html:
* LayoutTests/css3/filters/effect-sepia-expected.html: Added.
* LayoutTests/css3/filters/effect-sepia-expected.png: Removed.
* LayoutTests/css3/filters/effect-sepia-expected.txt: Removed.
* LayoutTests/css3/filters/effect-sepia-hw-expected.html: Added.
* LayoutTests/css3/filters/effect-sepia-hw-expected.png: Removed.
* LayoutTests/css3/filters/effect-sepia-hw-expected.txt: Removed.
* LayoutTests/css3/filters/effect-sepia-hw.html:
* LayoutTests/css3/filters/effect-sepia.html:
* LayoutTests/css3/filters/resources/filter-helpers.css: Added.
* LayoutTests/css3/filters/resources/filter-helpers.js: Added.
* LayoutTests/platform/ios/css3/filters/effect-blur-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-blur-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-brightness-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-brightness-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-combined-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-combined-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-contrast-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-contrast-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-drop-shadow-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-drop-shadow-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-grayscale-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-grayscale-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-hue-rotate-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-hue-rotate-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-invert-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-invert-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-opacity-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-opacity-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-saturate-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-saturate-hw-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-sepia-expected.txt: Removed.
* LayoutTests/platform/ios/css3/filters/effect-sepia-hw-expected.txt: Removed.
* LayoutTests/platform/mac-wk2/css3/filters/effect-blur-expected.png: Removed.
* LayoutTests/platform/mac-wk2/css3/filters/effect-combined-expected.png: Removed.
* LayoutTests/platform/mac-wk2/css3/filters/effect-opacity-expected.png: Removed.

Canonical link: https://commits.webkit.org/254408@main




More information about the webkit-changes mailing list