Closed
Bug 1771020
Opened 3 years ago
Closed 1 year ago
New wpt failures in /css/selectors/invalidation/ [is-pseudo-containing-complex-in-has.html, not-pseudo-containing-complex-in-has.html]
Categories
(Core :: CSS Parsing and Computation, defect)
Core
CSS Parsing and Computation
Tracking
()
RESOLVED
DUPLICATE
of bug 1852965
People
(Reporter: wpt-sync, Unassigned)
References
Details
(Whiteboard: [wpt])
Syncing wpt PR 34123 found new untriaged test failures in CI
Tests Affected
Firefox-only failures
- /css/selectors/invalidation/is-pseudo-containing-complex-in-has.html [wpt.fyi]
- [ .red:has(#descendant:is(.a .b)) ] #has_scope.classList.add('red') : check matches (false):
FAIL
- [ .red:has(#descendant:is(.a .b)) ] #parent.classList.remove('a') : check matches (false):
FAIL
- [ .red:has(#descendant:is(.a .b)) ] #has_scope.classList.remove('a') : check matches (false):
FAIL
- [ .red:has(#descendant:is(.a .b)) ] #child.classList.remove('a') : check matches (false):
FAIL
- [ .red:has(#descendant:is(.a .b)) ] #has_scope.classList.remove('red') : check matches (false):
FAIL
- [ .green:has(#descendant:is(.c ~ .d .e)) ] #has_scope.classList.add('green') : check matches (false):
FAIL
- [ .green:has(#descendant:is(.c ~ .d .e)) ] #parent_previous.classList.remove('c') : check matches (false):
FAIL
- [ .green:has(#descendant:is(.c ~ .d .e)) ] #previous.classList.remove('c') : check matches (false):
FAIL
- [ .green:has(#descendant:is(.c ~ .d .e)) ] #child_previous.classList.remove('c') : check matches (false):
FAIL
- [ .green:has(#descendant:is(.c ~ .d .e)) ] #has_scope.classList.remove('green') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:is(.f ~ .g)) ] #has_scope.classList.add('blue') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:is(.f ~ .g)) ] #previous.classList.remove('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:is(.f ~ .g)) ] #has_scope.classList.remove('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:is(.f ~ .g)) ] #direct_next.classList.remove('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:is(.f ~ .g)) ] #has_scope.classList.remove('blue') : check matches (false):
FAIL
- [ .yellow:has(~ #indirect_next:is(.h .i)) ] #has_scope.classList.add('yellow') : check matches (false):
FAIL
- [ .yellow:has(~ #indirect_next:is(.h .i)) ] #parent.classList.remove('h') : check matches (false):
FAIL
- [ .yellow:has(~ #indirect_next:is(.h .i)) ] #has_scope.classList.remove('yellow') : check matches (false):
FAIL
- [ .purple:has(~ #indirect_next:is(.j ~ .k .l)) ] #has_scope.classList.add('purple') : check matches (false):
FAIL
- [ .purple:has(~ #indirect_next:is(.j ~ .k .l)) ] #parent_previous.classList.remove('j') : check matches (false):
FAIL
- [ .purple:has(~ #indirect_next:is(.j ~ .k .l)) ] #has_scope.classList.remove('purple') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #has_scope.classList.add('orange') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #parent.classList.remove('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #parent.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #has_scope.classList.remove('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #has_scope.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #child.classList.remove('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #child.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:is(:is(.m, .n) .o)) ] #has_scope.classList.remove('orange') : check matches (false):
FAIL
- [ .red:has(#descendant:is(.a .b)) ] #has_scope.classList.add('red') : check matches (false):
- /css/selectors/invalidation/not-pseudo-containing-complex-in-has.html [wpt.fyi]
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.add('red') : check matches (true):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.add('red') : check #has_scope color:
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #parent.classList.add('a') : check matches (false):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #parent.classList.remove('a') : check matches (true):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #parent.classList.remove('a') : check #has_scope color:
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.add('a') : check matches (false):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.remove('a') : check matches (true):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.remove('a') : check #has_scope color:
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #child.classList.add('a') : check matches (false):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #child.classList.remove('a') : check matches (true):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #child.classList.remove('a') : check #has_scope color:
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.remove('red') : check matches (false):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #has_scope.classList.add('green') : check matches (true):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #has_scope.classList.add('green') : check #has_scope color:
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #parent_previous.classList.add('c') : check matches (false):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #parent_previous.classList.remove('c') : check matches (true):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #parent_previous.classList.remove('c') : check #has_scope color:
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #previous.classList.add('c') : check matches (false):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #previous.classList.remove('c') : check matches (true):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #previous.classList.remove('c') : check #has_scope color:
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #child_previous.classList.add('c') : check matches (false):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #child_previous.classList.remove('c') : check matches (true):
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #child_previous.classList.remove('c') : check #has_scope color:
FAIL
- [ .green:has(#descendant:not(.c ~ .d .e)) ] #has_scope.classList.remove('green') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.add('blue') : check matches (true):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.add('blue') : check #has_scope color:
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #previous.classList.add('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #previous.classList.remove('f') : check matches (true):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #previous.classList.remove('f') : check #has_scope color:
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.add('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.remove('f') : check matches (true):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.remove('f') : check #has_scope color:
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #direct_next.classList.add('f') : check matches (false):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #direct_next.classList.remove('f') : check matches (true):
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #direct_next.classList.remove('f') : check #has_scope color:
FAIL
- [ .blue:has(~ #indirect_next:not(.f ~ .g)) ] #has_scope.classList.remove('blue') : check matches (false):
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #has_scope.classList.add('yellow') : check matches (true):
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #has_scope.classList.add('yellow') : check #has_scope color:
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #parent.classList.add('h') : check matches (false):
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #parent.classList.remove('h') : check matches (true):
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #parent.classList.remove('h') : check #has_scope color:
FAIL
- [ .yellow:has(~ #indirect_next:not(.h .i)) ] #has_scope.classList.remove('yellow') : check matches (false):
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #has_scope.classList.add('purple') : check matches (true):
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #has_scope.classList.add('purple') : check #has_scope color:
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #parent_previous.classList.add('j') : check matches (false):
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #parent_previous.classList.remove('j') : check matches (true):
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #parent_previous.classList.remove('j') : check #has_scope color:
FAIL
- [ .purple:has(~ #indirect_next:not(.j ~ .k .l)) ] #has_scope.classList.remove('purple') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.add('orange') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.add('orange') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.add('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.add('n') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.add('n') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.remove('m') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #parent.classList.remove('m') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.add('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.add('n') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.add('n') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.remove('m') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.remove('m') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.add('m') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.add('n') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.add('n') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.remove('n') : check matches (false):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.remove('m') : check matches (true):
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #child.classList.remove('m') : check #has_scope color:
FAIL
- [ .orange:has(#descendant:not(.m:not(.n) .o)) ] #has_scope.classList.remove('orange') : check matches (false):
FAIL
- [ .red:has(#descendant:not(.a .b)) ] #has_scope.classList.add('red') : check matches (true):
CI Results
Missing results from treeherder
GitHub PR Head
Notes
These updates will be on mozilla-central once bug 1770136 lands.
Note: this bug is for tracking fixing the issues and is not
owned by the wpt sync bot.
This bug is linked to the relevant tests by an annotation in
https://github.com/web-platform-tests/wpt-metadata. These annotations
can be edited using the wpt interop dashboard
https://jgraham.github.io/wptdash/
If this bug is split into multiple bugs, please also update the
annotations, otherwise we are unable to track which wpt issues are
already triaged. Resolving as duplicate or closing this issue should
be cause the bot to automatically update or remove the annotation.
Updated•3 years ago
|
Severity: -- → S4
Depends on: has-pseudo
Updated•1 year ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•