mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-27 18:17:22 +02:00
Add support for WPT test variants, which allow a single test file to be run multiple times with different URL query parameters. Tests declare variants using `<meta name="variant" content="?param=value">` tags. When test-web encounters a test with variants, it expands that test into multiple runs, each with its own expectation file using the naming convention `testname@variant.txt` (e.g., `test@run_type=uri.txt`). Implementation details: - WebContent observes variant meta tags and communicates them to the test runner via a new `did_receive_test_variant_metadata` IPC call - test-web dynamically expands tests with variants during execution, waking idle views after each test completion to pick up new work - Use index-based test tracking to avoid dangling references when the test vector grows during variant expansion - Introduce TestRunContext to group test run state, and store a static pointer to it for signal handler access This enables proper testing of WPT tests that use variants, such as the html5lib parsing tests (which test uri, write, and write_single modes) and the editing/bold tests (which split across multiple ranges).
50 lines
5.8 KiB
Plaintext
50 lines
5.8 KiB
Plaintext
Harness status: OK
|
|
|
|
Found 44 tests
|
|
|
|
39 Pass
|
|
5 Fail
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandIndeterm("stylewithcss") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandState("stylewithcss") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandValue("stylewithcss") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandIndeterm("stylewithcss") after
|
|
Fail [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandState("stylewithcss") after
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandValue("stylewithcss") after
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandIndeterm("bold") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandState("bold") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandValue("bold") before
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandIndeterm("bold") after
|
|
Fail [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandState("bold") after
|
|
Pass [["stylewithcss","false"],["bold",""]] "<span style=font-weight:100>fo[o</span><span style=font-weight:200>b]ar</span>" queryCommandValue("bold") after
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><b>e</b></span>f]</b>ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><b>e</b></span>f]</b>ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><b>e</b></span>f]</b>ghi" checks for modifications to non-editable content
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><b>e</b></span>f]</b>ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><span contenteditable><b>e</b></span></span>f]</b>ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><span contenteditable><b>e</b></span></span>f]</b>ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><span contenteditable><b>e</b></span></span>f]</b>ghi" checks for modifications to non-editable content
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<b>[d<span contenteditable=\"false\"><span contenteditable><b>e</b></span></span>f]</b>ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def]</i>ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def]</i>ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def]</i>ghi" checks for modifications to non-editable content
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def]</i>ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def</i>]ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def</i>]ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def</i>]ghi" checks for modifications to non-editable content
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def</i>]ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>{def}</i>ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>{def}</i>ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>{def}</i>ghi" checks for modifications to non-editable content
|
|
Fail [["stylewithcss","false"],["bold",""]] "abc<i>{def}</i>ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc{<i>def</i>}ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc{<i>def</i>}ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc{<i>def</i>}ghi" checks for modifications to non-editable content
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc{<i>def</i>}ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def</i>]ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def</i>]ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc<i>[def</i>]ghi" checks for modifications to non-editable content
|
|
Fail [["stylewithcss","false"],["bold",""]] "abc<i>[def</i>]ghi" compare innerHTML
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def]</i>ghi": execCommand("stylewithcss", false, "false") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def]</i>ghi": execCommand("bold", false, "") return value
|
|
Pass [["stylewithcss","false"],["bold",""]] "abc[<i>def]</i>ghi" checks for modifications to non-editable content
|
|
Fail [["stylewithcss","false"],["bold",""]] "abc[<i>def]</i>ghi" compare innerHTML |