-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Split out :has(:host-context()) invalidation tests
https://bugs.webkit.org/show_bug.cgi?id=261098 rdar://114918695 Reviewed by Cameron McCormack. We intentionally don't implement :host-context(). * LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-context-pseudo-class-in-has-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-pseudo-class-in-has-expected.txt. * LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-context-pseudo-class-in-has.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-pseudo-class-in-has.html. * LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-pseudo-class-in-has-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/host-pseudo-class-in-has.html: Canonical link: https://commits.webkit.org/267603@main Identifier: 267603@main
- Loading branch information
Showing
4 changed files
with
75 additions
and
29 deletions.
There are no files selected for viewing
8 changes: 8 additions & 0 deletions
8
...b-platform-tests/css/selectors/invalidation/host-context-pseudo-class-in-has-expected.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
|
||
PASS Before adding 'a' to #host_parent: Check #subject1 color | ||
PASS Before adding 'a' to #host_parent: Check #subject2 color | ||
FAIL After adding 'a' to #host_parent: Check #subject1 color assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)" | ||
FAIL After adding 'a' to #host_parent: Check #subject2 color assert_equals: expected "rgb(0, 0, 255)" but got "rgb(255, 0, 0)" | ||
PASS After removing 'a' from #host_parent: Check #subject1 color | ||
PASS After removing 'a' from #host_parent: Check #subject2 color | ||
|
56 changes: 56 additions & 0 deletions
56
...d/w3c/web-platform-tests/css/selectors/invalidation/host-context-pseudo-class-in-has.html
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
<!doctype html> | ||
<meta charset="utf-8"> | ||
<title>CSS Test: Invalidation for :host-context() inside :has()</title> | ||
<link rel="author" title="Byungwoo" href="mailto:blee@igalia.com"> | ||
<link rel="help" href="https://drafts.csswg.org/selectors/#relational"> | ||
<script src="/resources/testharness.js"></script> | ||
<script src="/resources/testharnessreport.js"></script> | ||
<div id="host_parent"><div id="host"></div></div> | ||
<script> | ||
var shadow = host.attachShadow({ mode: 'open' }); | ||
shadow.innerHTML = ` | ||
<style> | ||
.subject { | ||
color: red; | ||
} | ||
.subject:has(:is(:host-context(.a) > .foo .bar)) { color: green } | ||
.subject:has(:is(:host-context(.a) .bar)) { color: blue } | ||
</style> | ||
<div class="foo"> | ||
<div id="subject1" class="subject"> | ||
<div class="bar"></div> | ||
</div> | ||
</div> | ||
<div> | ||
<div class="foo"> | ||
<div id="subject2" class="subject"> | ||
<div class="bar"></div> | ||
</div> | ||
</div> | ||
</div> | ||
`; | ||
|
||
const red = "rgb(255, 0, 0)"; | ||
const green = "rgb(0, 128, 0)"; | ||
const blue = "rgb(0, 0, 255)"; | ||
|
||
function checkColor(test_name, subject_id, subject_color) { | ||
test(function() { | ||
let subject = shadow.querySelector("#" + subject_id); | ||
assert_equals(getComputedStyle(subject).color, subject_color); | ||
}, test_name + ": Check #" + subject_id + " color"); | ||
} | ||
|
||
checkColor("Before adding 'a' to #host_parent", "subject1", red); | ||
checkColor("Before adding 'a' to #host_parent", "subject2", red); | ||
|
||
host_parent.classList.add('a'); | ||
|
||
checkColor("After adding 'a' to #host_parent", "subject1", green); | ||
checkColor("After adding 'a' to #host_parent", "subject2", blue); | ||
|
||
host_parent.classList.remove('a'); | ||
|
||
checkColor("After removing 'a' from #host_parent", "subject1", red); | ||
checkColor("After removing 'a' from #host_parent", "subject2", red); | ||
</script> |
12 changes: 4 additions & 8 deletions
12
...d/w3c/web-platform-tests/css/selectors/invalidation/host-pseudo-class-in-has-expected.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,6 @@ | ||
|
||
PASS Before adding 'a' to #host_parent: Check #subject1 color | ||
PASS Before adding 'a' to #host_parent: Check #subject2 color | ||
FAIL After adding 'a' to #host_parent: Check #subject1 color assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)" | ||
FAIL After adding 'a' to #host_parent: Check #subject2 color assert_equals: expected "rgb(0, 0, 255)" but got "rgb(255, 0, 0)" | ||
PASS After removing 'a' from #host_parent: Check #subject1 color | ||
PASS After removing 'a' from #host_parent: Check #subject2 color | ||
FAIL After adding 'a' to #host: Check #subject1 color assert_equals: expected "rgb(154, 205, 50)" but got "rgb(255, 0, 0)" | ||
FAIL After adding 'a' to #host: Check #subject2 color assert_equals: expected "rgb(135, 206, 235)" but got "rgb(255, 0, 0)" | ||
PASS Before adding 'a' to #host: Check #subject1 color | ||
PASS Before adding 'a' to #host: Check #subject2 color | ||
FAIL After adding 'a' to #host: Check #subject1 color assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)" | ||
FAIL After adding 'a' to #host: Check #subject2 color assert_equals: expected "rgb(0, 0, 255)" but got "rgb(255, 0, 0)" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters