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

Side by Side Diff: third_party/WebKit/LayoutTests/inspector/tracing/timeline-misc/timeline-event-causes.html

Issue 2270033003: DevTools: include traces when exporting console log via 'Save as' (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: take out post-lgtm repeat logic Created 4 years, 3 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 <html> 1 <html>
2 <head> 2 <head>
3 <script src="../../../http/tests/inspector/inspector-test.js"></script> 3 <script src="../../../http/tests/inspector/inspector-test.js"></script>
4 <script src="../../../http/tests/inspector/timeline-test.js"></script> 4 <script src="../../../http/tests/inspector/timeline-test.js"></script>
5 <script> 5 <script>
6 function test() 6 function test()
7 { 7 {
8 function checkStringContains(string, contains) 8 function checkStringContains(string, contains)
9 { 9 {
10 var doesContain = string.indexOf(contains) >= 0; 10 var doesContain = string.indexOf(contains) >= 0;
(...skipping 17 matching lines...) Expand all
28 function finishAndRunNextTest() 28 function finishAndRunNextTest()
29 { 29 {
30 var linkifier = new WebInspector.Linkifier(); 30 var linkifier = new WebInspector.Linkifier();
31 var record = InspectorTest.findFirstTimelineRecord("TimerFire"); 31 var record = InspectorTest.findFirstTimelineRecord("TimerFire");
32 InspectorTest.check(record, "Should receive a TimerFire record." ); 32 InspectorTest.check(record, "Should receive a TimerFire record." );
33 var event = record.traceEvent(); 33 var event = record.traceEvent();
34 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true); 34 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true);
35 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper); 35 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper);
36 var causes = contentHelper.element.deepTextContent(); 36 var causes = contentHelper.element.deepTextContent();
37 InspectorTest.check(causes, "Should generate causes"); 37 InspectorTest.check(causes, "Should generate causes");
38 checkStringContains(causes, "Timer InstalledPromise @ setTimeout Function.js:"); 38 checkStringContains(causes, "Timer Installed\nPromise @ setTimeo utFunction.js:");
39 next(); 39 next();
40 } 40 }
41 }, 41 },
42 42
43 function testRequestAnimationFrame(next) 43 function testRequestAnimationFrame(next)
44 { 44 {
45 function requestAnimationFrameFunction(callback) 45 function requestAnimationFrameFunction(callback)
46 { 46 {
47 return new Promise((fulfill) => requestAnimationFrame(fulfill)); 47 return new Promise((fulfill) => requestAnimationFrame(fulfill));
48 } 48 }
49 49
50 var source = requestAnimationFrameFunction.toString(); 50 var source = requestAnimationFrameFunction.toString();
51 source += "\n//# sourceURL=requestAnimationFrameFunction.js"; 51 source += "\n//# sourceURL=requestAnimationFrameFunction.js";
52 InspectorTest.evaluateInPage(source); 52 InspectorTest.evaluateInPage(source);
53 53
54 InspectorTest.invokeAsyncWithTimeline("requestAnimationFrameFunction ", finishAndRunNextTest); 54 InspectorTest.invokeAsyncWithTimeline("requestAnimationFrameFunction ", finishAndRunNextTest);
55 function finishAndRunNextTest() 55 function finishAndRunNextTest()
56 { 56 {
57 var linkifier = new WebInspector.Linkifier(); 57 var linkifier = new WebInspector.Linkifier();
58 var record = InspectorTest.findFirstTimelineRecord("FireAnimatio nFrame"); 58 var record = InspectorTest.findFirstTimelineRecord("FireAnimatio nFrame");
59 InspectorTest.check(record, "Should receive a FireAnimationFrame record."); 59 InspectorTest.check(record, "Should receive a FireAnimationFrame record.");
60 var event = record.traceEvent(); 60 var event = record.traceEvent();
61 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true); 61 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true);
62 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper); 62 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper);
63 var causes = contentHelper.element.deepTextContent(); 63 var causes = contentHelper.element.deepTextContent();
64 InspectorTest.check(causes, "Should generate causes"); 64 InspectorTest.check(causes, "Should generate causes");
65 checkStringContains(causes, "Animation Frame RequestedPromise @ requestAnimationFrameFunction.js:"); 65 checkStringContains(causes, "Animation Frame Requested\nPromise @ requestAnimationFrameFunction.js:");
66 next(); 66 next();
67 } 67 }
68 }, 68 },
69 69
70 function testStyleRecalc(next) 70 function testStyleRecalc(next)
71 { 71 {
72 function styleRecalcFunction() 72 function styleRecalcFunction()
73 { 73 {
74 var element = document.getElementById("testElement"); 74 var element = document.getElementById("testElement");
75 element.style.backgroundColor = "papayawhip"; 75 element.style.backgroundColor = "papayawhip";
76 var forceLayout = element.offsetWidth; 76 var forceLayout = element.offsetWidth;
77 } 77 }
78 78
79 var source = styleRecalcFunction.toString(); 79 var source = styleRecalcFunction.toString();
80 source += "\n//# sourceURL=styleRecalcFunction.js"; 80 source += "\n//# sourceURL=styleRecalcFunction.js";
81 InspectorTest.evaluateInPage(source); 81 InspectorTest.evaluateInPage(source);
82 82
83 InspectorTest.evaluateWithTimeline("styleRecalcFunction()", finishAn dRunNextTest); 83 InspectorTest.evaluateWithTimeline("styleRecalcFunction()", finishAn dRunNextTest);
84 function finishAndRunNextTest() 84 function finishAndRunNextTest()
85 { 85 {
86 var linkifier = new WebInspector.Linkifier(); 86 var linkifier = new WebInspector.Linkifier();
87 var record = InspectorTest.findFirstTimelineRecord("UpdateLayout Tree"); 87 var record = InspectorTest.findFirstTimelineRecord("UpdateLayout Tree");
88 InspectorTest.check(record, "Should receive a UpdateLayoutTree r ecord."); 88 InspectorTest.check(record, "Should receive a UpdateLayoutTree r ecord.");
89 var event = record.traceEvent(); 89 var event = record.traceEvent();
90 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true); 90 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true);
91 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper); 91 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper);
92 var causes = contentHelper.element.deepTextContent(); 92 var causes = contentHelper.element.deepTextContent();
93 InspectorTest.check(causes, "Should generate causes"); 93 InspectorTest.check(causes, "Should generate causes");
94 checkStringContains(causes, "First InvalidatedstyleRecalcFunctio n @ styleRecalcFunction.js:"); 94 checkStringContains(causes, "First Invalidated\nstyleRecalcFunct ion @ styleRecalcFunction.js:");
95 next(); 95 next();
96 } 96 }
97 }, 97 },
98 98
99 function testLayout(next) 99 function testLayout(next)
100 { 100 {
101 function layoutFunction() 101 function layoutFunction()
102 { 102 {
103 var element = document.getElementById("testElement"); 103 var element = document.getElementById("testElement");
104 element.style.width = "200px"; 104 element.style.width = "200px";
105 var forceLayout = element.offsetWidth; 105 var forceLayout = element.offsetWidth;
106 } 106 }
107 107
108 var source = layoutFunction.toString(); 108 var source = layoutFunction.toString();
109 source += "\n//# sourceURL=layoutFunction.js"; 109 source += "\n//# sourceURL=layoutFunction.js";
110 InspectorTest.evaluateInPage(source); 110 InspectorTest.evaluateInPage(source);
111 111
112 InspectorTest.evaluateWithTimeline("layoutFunction()", finishAndRunN extTest); 112 InspectorTest.evaluateWithTimeline("layoutFunction()", finishAndRunN extTest);
113 function finishAndRunNextTest() 113 function finishAndRunNextTest()
114 { 114 {
115 var linkifier = new WebInspector.Linkifier(); 115 var linkifier = new WebInspector.Linkifier();
116 var record = InspectorTest.findFirstTimelineRecord("Layout"); 116 var record = InspectorTest.findFirstTimelineRecord("Layout");
117 InspectorTest.check(record, "Should receive a Layout record."); 117 InspectorTest.check(record, "Should receive a Layout record.");
118 var event = record.traceEvent(); 118 var event = record.traceEvent();
119 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true); 119 var contentHelper = new WebInspector.TimelineDetailsContentHelpe r(InspectorTest.timelineModel().targetByEvent(event), linkifier, true);
120 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper); 120 WebInspector.TimelineUIUtils._generateCauses(event, InspectorTes t.timelineModel().targetByEvent(event), null, contentHelper);
121 var causes = contentHelper.element.deepTextContent(); 121 var causes = contentHelper.element.deepTextContent();
122 InspectorTest.check(causes, "Should generate causes"); 122 InspectorTest.check(causes, "Should generate causes");
123 checkStringContains(causes, "Layout ForcedlayoutFunction @ layou tFunction.js:"); 123 checkStringContains(causes, "Layout Forced\nlayoutFunction @ lay outFunction.js:");
124 checkStringContains(causes, "First Layout InvalidationlayoutFunc tion @ layoutFunction.js:"); 124 checkStringContains(causes, "First Layout Invalidation\nlayoutFu nction @ layoutFunction.js:");
125 next(); 125 next();
126 } 126 }
127 } 127 }
128 ]); 128 ]);
129 } 129 }
130 </script> 130 </script>
131 </head> 131 </head>
132 132
133 <body onload="runTest()"> 133 <body onload="runTest()">
134 <p> 134 <p>
135 Test that causes are correctly generated for various types of events. 135 Test that causes are correctly generated for various types of events.
136 </p> 136 </p>
137 <div id="testElement"></div> 137 <div id="testElement"></div>
138 </body> 138 </body>
139 </html> 139 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698