script: Create CSSStyleOwner::Null for getComputedStyle (#36272)

This new `CSSStyleOwner` variant is used when the pseudo-element
argument fails to parse properly or is for some unknown or unsupported
pseudo-element.

Testing: There are tests for this change. Various tests start to pass
and some start to
fail. New failures are due to partial or fully missing support for
pseudo-elements such
as:
 - `::selection`
 - `::first-letter` and `::first-line`
 - `::marker`

Co-authored-by: Oriol Brufau <obrufau@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>

Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Martin Robinson 2025-04-02 15:54:42 +02:00 committed by GitHub
parent 1f13e8b596
commit 2ce306f450
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
20 changed files with 171 additions and 219 deletions

View file

@ -1,6 +1,3 @@
[getComputedStyle-pseudo-checkmark.html]
[Resolution of width is correct when pseudo-element argument is ignored (due to single-colon)]
expected: FAIL
[Resolution of width is correct for pseudo-element (due to double-colon)]
expected: FAIL

View file

@ -2,8 +2,5 @@
[Resolution of width is correct when pseudo-element argument is ignored (due to no colon)]
expected: FAIL
[Resolution of width is correct when pseudo-element argument is ignored (due to single-colon)]
expected: FAIL
[Resolution of width is correct for pseudo-element (due to double-colon)]
expected: FAIL

View file

@ -13,54 +13,3 @@
[This pseudo-element should parse: ::highlight( n\\61me )]
expected: FAIL
[This pseudo-element should not parse: ::before(test)]
expected: FAIL
[This pseudo-element should not parse: ::highlight]
expected: FAIL
[This pseudo-element should not parse: ::highlight(]
expected: FAIL
[This pseudo-element should not parse: ::highlight()]
expected: FAIL
[This pseudo-element should not parse: ::highlight(1)]
expected: FAIL
[This pseudo-element should not parse: ::highlight($)]
expected: FAIL
[This pseudo-element should not parse: ::highlight (name)]
expected: FAIL
[This pseudo-element should not parse: ::highlight(name)a]
expected: FAIL
[This pseudo-element should not parse: ::view-transition-group(*)]
expected: FAIL
[This pseudo-element should not parse: :highlight(name)]
expected: FAIL
[This pseudo-element should not parse: ::view-transition-image-pair(*)]
expected: FAIL
[This pseudo-element should not parse: ::view-transition-old(*)]
expected: FAIL
[This pseudo-element should not parse: ::view-transition-new(*)]
expected: FAIL
[This pseudo-element should not parse: :view-transition-group(name)]
expected: FAIL
[This pseudo-element should not parse: :view-transition-image-pair(name)]
expected: FAIL
[This pseudo-element should not parse: :view-transition-old(name)]
expected: FAIL
[This pseudo-element should not parse: :view-transition-new(name)]
expected: FAIL

View file

@ -8,9 +8,6 @@
[Unknown pseudo-elements throw]
expected: FAIL
[Unknown pseudo-elements]
expected: FAIL
[Unknown pseudo-element with a known string (ex: marker)]
expected: FAIL
@ -52,6 +49,3 @@
[Unknown pseudo-element with a known identifier: view-transition-new(name)]
expected: PRECONDITION_FAILED
[Resolution of width is correct when pseudo-element argument is invalid (due to a trailing token)]
expected: FAIL