Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(271)

Side by Side Diff: LayoutTests/fast/css/invalidation/class-sibling-universal.html

Issue 365063005: Invalidation set features recognized left of adjacent. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebased Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/core/css/RuleFeature.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <!DOCTYPE html>
2 <script src="../../../resources/testharness.js"></script>
3 <script src="../../../resources/testharnessreport.js"></script>
4 <style>
5 .t1 .sibling + *,
6 .t2 .sibling ~ *,
7 .t3 .sibling + :hover,
8 .t4 + .sibling,
9 .t5 + *,
10 .t6 ~ .sibling { background-color: rgb(0, 128, 0); }
11
12 #r3 { width: 10px; height: 10px }
13 </style>
14 <div>
15 <div id="t1">
16 <div class="sibling"></div>
17 <div id="r1"></div>
18 </div>
19 </div>
20 <div>
21 <div id="t2">
22 <div class="sibling"></div>
23 <div></div>
24 <div id="r2"></div>
25 </div>
26 </div>
27 <div>
28 <div id="t3">
29 <div class="sibling"></div>
30 <div id="r3"></div>
31 </div>
32 </div>
33 <div>
34 <div id="t4"></div>
35 <div id="r4" class="sibling">
36 <div></div>
37 <div></div>
38 </div>
39 </div>
40 <div>
41 <div id="t5"></div>
42 <div id="r5">
43 <div></div>
44 <div></div>
45 </div>
46 </div>
47 <div>
48 <div id="t6"></div>
49 <div></div>
50 <div id="r6" class="sibling">
51 <div></div>
52 <div></div>
53 </div>
54 </div>
55 <script>
56 document.body.offsetTop;
57
58 test(function() {
59 assert_true(!!window.internals, "This test only works with internals exposed present");
60 assert_equals(getComputedStyle(r1).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
61
62 t1.className = "t1";
63 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 3, "Subt ree style recalc");
64 assert_equals(getComputedStyle(r1).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
65 }, "Adjacent with universal selector");
66
67 test(function() {
68 assert_true(!!window.internals, "This test only works with internals exposed present");
69 assert_equals(getComputedStyle(r2).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
70
71 t2.className = "t2";
72 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 4, "Subt ree style recalc");
73 assert_equals(getComputedStyle(r2).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
74 }, "Indirect adjacent with universal selector");
75
76 test(function() {
77 assert_true(!!window.internals, "This test only works with internals exposed present");
78 assert_true(!!window.eventSender, "This test only works with eventSender pre sent");
79
80 eventSender.mouseMoveTo(r3.offsetLeft + 1, r3.offsetTop + 1);
81 assert_equals(getComputedStyle(r3).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
82
83 t3.className = "t3";
84 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 3, "Subt ree style recalc");
85 assert_equals(getComputedStyle(r3).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
86 }, "Adjacent with universal :hover selector");
87
88 test(function() {
89 assert_true(!!window.internals, "This test only works with internals exposed present");
90 assert_equals(getComputedStyle(r4).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
91
92 t4.className = "t4";
93 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 4, "Subt ree style recalc");
94 assert_equals(getComputedStyle(r4).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
95 }, "Class change affecting selector for sibling class");
96
97 test(function() {
98 assert_true(!!window.internals, "This test only works with internals exposed present");
99 assert_equals(getComputedStyle(r5).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
100
101 t5.className = "t5";
102 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 4, "Subt ree style recalc");
103 assert_equals(getComputedStyle(r5).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
104 }, "Class change affecting all sibling subtrees through a universal selector");
105
106 test(function() {
107 assert_true(!!window.internals, "This test only works with internals exposed present");
108 assert_equals(getComputedStyle(r6).backgroundColor, "rgba(0, 0, 0, 0)", "Bac kground color should initially be transparent");
109
110 t6.className = "t6";
111 assert_equals(internals.updateStyleAndReturnAffectedElementCount(), 5, "Subt ree style recalc");
112 assert_equals(getComputedStyle(r6).backgroundColor, "rgb(0, 128, 0)", "Backg round color is green after class change");
113 }, "Class change affecting all sibling subtrees through an indirect adjacent com binator");
114 </script>
OLDNEW
« no previous file with comments | « no previous file | Source/core/css/RuleFeature.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698