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

Side by Side Diff: LayoutTests/fast/css/modify-stylesheet-minimal-recalc-style.html

Issue 242883002: Remove MediaValues' dependency on RenderStyle (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Modified minimal recalc tests to represent reduced recalc. Created 6 years, 8 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
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <head> 2 <head>
3 <style id="thestyle"></style> 3 <style id="thestyle"></style>
4 <script src="../../resources/js-test.js"></script> 4 <script src="../../resources/js-test.js"></script>
5 </head> 5 </head>
6 <div><!-- Extra divs so it's clear when we're doing a full document recalc --> 6 <div><!-- Extra divs so it's clear when we're doing a full document recalc -->
7 <div></div> 7 <div></div>
8 <div></div> 8 <div></div>
9 <div></div> 9 <div></div>
10 <div></div> 10 <div></div>
(...skipping 18 matching lines...) Expand all
29 29
30 function forceRecalc() 30 function forceRecalc()
31 { 31 {
32 document.documentElement.offsetTop; 32 document.documentElement.offsetTop;
33 } 33 }
34 34
35 if (window.internals) { 35 if (window.internals) {
36 // Add non-existant classname. 36 // Add non-existant classname.
37 forceRecalc(); 37 forceRecalc();
38 sheet.textContent = ".nonexistant { color: red; }"; 38 sheet.textContent = ".nonexistant { color: red; }";
39 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "1"); 39 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "0");
40 40
41 // Add two existing classnames. 41 // Add two existing classnames.
42 forceRecalc(); 42 forceRecalc();
43 sheet.textContent = ".bar { color: red; }\n.baz { color: red; }"; 43 sheet.textContent = ".bar { color: red; }\n.baz { color: red; }";
44 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "7"); 44 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "6");
45 45
46 // Remove the classnames from the previous step. 46 // Remove the classnames from the previous step.
47 forceRecalc(); 47 forceRecalc();
48 sheet.textContent = ""; 48 sheet.textContent = "";
49 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "7"); 49 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "6");
50 50
51 // Test innerHTML. 51 // Test innerHTML.
52 forceRecalc(); 52 forceRecalc();
53 sheet.innerHTML = ".bar { color: red; }\n.baz { color: red; }"; 53 sheet.innerHTML = ".bar { color: red; }\n.baz { color: red; }";
54 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "7"); 54 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "6");
55 55
56 // Test deleteRule 56 // Test deleteRule
57 forceRecalc(); 57 forceRecalc();
58 sheet.sheet.deleteRule(0); // Deletes .bar rule. 58 sheet.sheet.deleteRule(0); // Deletes .bar rule.
59 // FIXME: Ideally we'd do StyleInvalidationAnalysis here and only recalc 3 b ar's, 3 baz's + documentElement 59 // FIXME: Ideally we'd do StyleInvalidationAnalysis here and only recalc 3 b ar's, 3 baz's + documentElement
60 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "44"); 60 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "43");
61 61
62 shouldBe("getComputedStyle(document.querySelector('.foo')).color", '"rgb(0, 0, 0)"'); 62 shouldBe("getComputedStyle(document.querySelector('.foo')).color", '"rgb(0, 0, 0)"');
63 shouldBe("getComputedStyle(document.querySelector('.baz')).color", '"rgb(255 , 0, 0)"'); 63 shouldBe("getComputedStyle(document.querySelector('.baz')).color", '"rgb(255 , 0, 0)"');
64 shouldBe("getComputedStyle(document.querySelector('.bar')).color", '"rgb(0, 0, 0)"'); 64 shouldBe("getComputedStyle(document.querySelector('.bar')).color", '"rgb(0, 0, 0)"');
65 65
66 // Test insertRule 66 // Test insertRule
67 forceRecalc(); 67 forceRecalc();
68 sheet.sheet.insertRule(".foo { color: red; }", 0); 68 sheet.sheet.insertRule(".foo { color: red; }", 0);
69 // FIXME: Ideally we'd do StyleInvalidationAnalysis here and only recalc 3 f oo's, 3 baz's + documentElement 69 // FIXME: Ideally we'd do StyleInvalidationAnalysis here and only recalc 3 f oo's, 3 baz's + documentElement
70 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "60"); 70 shouldBe("internals.updateStyleAndReturnAffectedElementCount()", "59");
71 71
72 shouldBe("getComputedStyle(document.querySelector('.foo')).color", '"rgb(255 , 0, 0)"'); 72 shouldBe("getComputedStyle(document.querySelector('.foo')).color", '"rgb(255 , 0, 0)"');
73 shouldBe("getComputedStyle(document.querySelector('.baz')).color", '"rgb(255 , 0, 0)"'); 73 shouldBe("getComputedStyle(document.querySelector('.baz')).color", '"rgb(255 , 0, 0)"');
74 shouldBe("getComputedStyle(document.querySelector('.bar')).color", '"rgb(0, 0, 0)"'); 74 shouldBe("getComputedStyle(document.querySelector('.bar')).color", '"rgb(0, 0, 0)"');
75 75
76 } 76 }
77 </script> 77 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698