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

Side by Side Diff: LayoutTests/svg/animations/smil-leak-element-instances-noBaseValRef.svg

Issue 211933007: [SVG] call GCController.collectAll on SVG leak tests to address Oilpan flakiness. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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
OLDNEW
1 <svg id="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/ 1999/xlink" onload="load()"> 1 <svg id="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/ 1999/xlink" onload="load()">
2 <defs> 2 <defs>
3 <rect id="rect" width="100" height="100" /> 3 <rect id="rect" width="100" height="100" />
4 </defs> 4 </defs>
5 <g id="g"/> 5 <g id="g"/>
6 <text x="50" y="50" id="log"/> 6 <text x="50" y="50" id="log"/>
7 <script id="script"> 7 <script id="script">
8 <![CDATA[ 8 <![CDATA[
9 9
10 var g = document.getElementById("g"); 10 var g = document.getElementById("g");
(...skipping 26 matching lines...) Expand all
37 // FIXME: Unclear why two calls to collect() are required, see crbug.com/307 614 37 // FIXME: Unclear why two calls to collect() are required, see crbug.com/307 614
38 GCController.collect(); 38 GCController.collect();
39 GCController.collect(); 39 GCController.collect();
40 var originalLiveElements = internals.numberOfLiveNodes(); 40 var originalLiveElements = internals.numberOfLiveNodes();
41 41
42 while (g.hasChildNodes()) 42 while (g.hasChildNodes())
43 g.removeChild(g.lastChild); 43 g.removeChild(g.lastChild);
44 44
45 GCController.collect(); 45 GCController.collect();
46 46
47 // FIXME: Why 400 and not 200? 47 // This is 400 instead of 200 as it creates shadow tree elements.
48 var liveDelta = originalLiveElements - internals.numberOfLiveNodes() - 400; 48 var liveDelta = originalLiveElements - internals.numberOfLiveNodes() - 400;
49 if (liveDelta == 0) 49 if (liveDelta <= 0)
50 log("PASS"); 50 log("PASS");
51 else 51 else
52 log("FAIL: " + liveDelta + " extra live node(s)"); 52 log("FAIL: " + liveDelta + " extra live node(s)");
53 53
54 testRunner.notifyDone(); 54 testRunner.notifyDone();
55 } 55 }
56 56
57 function startTest() { 57 function startTest() {
58 for (var i = 0; i < 100; i++) 58 for (var i = 0; i < 100; i++)
59 g.appendChild(createAnimatedRectInstance()); 59 g.appendChild(createAnimatedRectInstance());
60 60
61 setTimeout(cleanup, 0); 61 setTimeout(cleanup, 0);
62 } 62 }
63 63
64 function load() { 64 function load() {
65 if (window.testRunner && window.GCController && window.internals) { 65 if (window.testRunner && window.GCController && window.internals) {
66 testRunner.dumpAsText(); 66 testRunner.dumpAsText();
67 testRunner.waitUntilDone(); 67 testRunner.waitUntilDone();
68 } else { 68 } else {
69 log("This test only works when run with the testRunner, GCController, an d internals available."); 69 log("This test only works when run with the testRunner, GCController, an d internals available.");
70 return; 70 return;
71 } 71 }
72 72
73 setTimeout(startTest, 0); 73 setTimeout(startTest, 0);
74 } 74 }
75 ]]> 75 ]]>
76 </script> 76 </script>
77 </svg> 77 </svg>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698