Bug 239764 - [LBSE] Run layout tests with LBSE activated
Summary: [LBSE] Run layout tests with LBSE activated
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: SVG (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nikolas Zimmermann
URL:
Keywords: InRadar
Depends on: 239717 239743
Blocks: 90738
  Show dependency treegraph
 
Reported: 2022-04-26 02:12 PDT by Nikolas Zimmermann
Modified: 2022-05-18 04:25 PDT (History)
5 users (show)

See Also:


Attachments
Patch, v1 (10.75 MB, patch)
2022-04-28 02:35 PDT, Nikolas Zimmermann
rbuis: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nikolas Zimmermann 2022-04-26 02:12:12 PDT
This is the master ticket, tracking the state of LBSE + layout tests.

Enough of LBSE is functional, first dozens of tests pass pixel-perfect, so it makes sense to start running tests now, provide LBSE baselines, etc.
The two most important requirements are:

1) Easy to compare LBSE vs. LBSE.

  When adding e.g. <clip-path> support for LBSE, I want to be able to mark "now-passing-tests" as progressions in the LBSE-specific TestExpectations file (also platform specific of course) and I want to include the changed render tree dumps (& pixel test results: very helpful at least during LBSE development, long term goal is of course to remove SVGs dependency on pixel testing as it is right now) in future patches, whenever something is added/changed in LBSE, just like we do for anything else. This will ease the job of reviewing LBSE patches.

  There should be a TestExpectations file describing the state of each test in the svg/ subdirectory (starting only with svg/W3C-SVG-1.1 in the beginning, to keep it manageable).
  This way we can easily see what's missing in LBSE, and run this on the bots as well -- if TestExpectations is correct, this should pass all the time.

2) Easy to compare legacy vs. LBSE

  We should be able to run pixel tests using the legacy engine, and compare that against pixel test results when LBSE is activated.
  Render tree dumps are expected to mismatch, since LBSE will include layers in the dumps, whereas legacy only has one root layer... However pixel results should be identical.

  Same as for 1) pixel test results are very helpful for me during development, therefore I'd like to check in a pixel-test baseline, generated on macOS Monterey on my M1 laptop.

More details in sub-tickets.
Comment 1 Nikolas Zimmermann 2022-04-28 02:35:20 PDT
Created attachment 458504 [details]
Patch, v1
Comment 2 Nikolas Zimmermann 2022-04-28 02:43:32 PDT
Darin, as promised many weeks ago, it's ready now: once this bug and it's depended landed, we can properly test LBSE in WebKit. New LBSE patches will include the diffs in the expectations file, so that we can finally "see" the progress right included in the patches, instead of hoping that I get all things right -- way better now. :-)
Comment 3 Nikolas Zimmermann 2022-04-28 05:06:50 PDT
I hope someone can rubber-stamp this -- it for sure does not need a deep review. These baselines are temporary anyhow, only used during LBSE development.
Comment 4 Radar WebKit Bug Importer 2022-05-03 02:13:17 PDT
<rdar://problem/92657168>
Comment 5 Nikolas Zimmermann 2022-05-18 01:36:15 PDT
Pull request: https://github.com/WebKit/WebKit/pull/718
Comment 6 EWS 2022-05-18 04:25:08 PDT
Committed r294390 (250685@main): <https://commits.webkit.org/250685@main>

Reviewed commits have been landed. Closing PR #718 and removing active labels.