Chromium Code Reviews| OLD | NEW |
|---|---|
| 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/extensions-test.js"></script> | 4 <script src="../../http/tests/inspector/extensions-test.js"></script> |
| 5 <script src="../../http/tests/inspector/timeline-test.js"></script> | 5 <script src="../../http/tests/inspector/timeline-test.js"></script> |
| 6 | 6 |
| 7 <script type="text/javascript"> | 7 <script type="text/javascript"> |
| 8 function initialize_timelineExtensionTest() | |
| 9 { | |
| 10 | |
| 11 InspectorTest.enableTimelineExtensionAndStart = function(callback) { | |
| 12 const provider = Extensions.extensionServer.traceProviders().peekLast(); | |
| 13 const timelinePanel = UI.panels.timeline; | |
| 14 const setting = Timeline.TimelinePanel._settingForTraceProvider(provider); | |
| 15 setting.set(true); | |
| 16 InspectorTest.addResult(`Provider short display name: ${provider.shortDispla yName()}`); | |
| 17 InspectorTest.addResult(`Provider long display name: ${provider.longDisplayN ame()}`); | |
| 18 InspectorTest.startTimeline(callback); | |
| 19 } | |
| 20 | |
| 21 } | |
| 22 | |
| 8 function extension_testTimeline(nextTest) | 23 function extension_testTimeline(nextTest) |
| 9 { | 24 { |
| 10 function onRecordingStarted() | 25 var session; |
| 26 var sessionTimeOffset; | |
| 27 var startTime; | |
| 28 | |
| 29 function onRecordingStarted(s) | |
| 11 { | 30 { |
| 31 sessionTimeOffset = (Date.now() - performance.now()) * 1000; | |
| 32 startTime = performance.now(); | |
| 12 output("traceProvider.onRecordingStarted fired."); | 33 output("traceProvider.onRecordingStarted fired."); |
| 34 output("TracingSession:"); | |
| 35 dumpObject(s); | |
| 36 session = s; | |
| 37 } | |
| 38 | |
| 39 function onRecordingStopped() | |
| 40 { | |
| 41 output("traceProvider.onRecordingStopped fired."); | |
| 42 | |
| 43 const endTime = performance.now(); | |
| 44 var pid = 1; | |
| 45 var tid = 1; | |
| 46 var step = (endTime - startTime) * 1000 / 10; | |
| 47 var start = startTime * 1000; | |
| 48 var data = { "traceEvents": [ | |
| 49 {"name": "Extension record X 1", "ts": start, "dur": step * 4, "ph": "X", args: {}, "tid": tid, "pid": pid, "cat":"" }, | |
|
alph
2016/12/14 00:17:32
put args in dquotes.
| |
| 50 {"name": "Extension record X 2", "ts": start + step * 5, "dur": step * 5, "ph": "X", args: {}, "tid": tid, "pid": pid, "cat":"" }, | |
| 51 {"name": "Extension record I 1", "ts": start + step * 5.5, "ph": "I" , args: {}, "tid": tid, "pid": pid, "cat":"" }, | |
| 52 {"name": "Extension record B+E", "ts": start + step * 6, "ph": "B", args: {}, "tid": tid, "pid": pid, "cat":"" }, | |
| 53 {"name": "Extension record B+E", "ts": start + step * 10, "ph": "E", args: {}, "tid": tid, "pid": pid, "cat":"" } | |
| 54 ]}; | |
| 55 var url = "data:application/json," + escape(JSON.stringify(data)); | |
| 56 session.complete(url, sessionTimeOffset); | |
| 13 } | 57 } |
| 14 function onRecordingStopped() | 58 |
| 15 { | 59 var traceProvider = webInspector.timeline.addTraceProvider("extension trace provider", "long extension name"); |
| 16 output("traceProvider.onRecordingStopped fired."); | 60 output("TraceProvider:"); |
| 17 nextTest(); | |
| 18 } | |
| 19 var traceProvider = webInspector.timeline.addTraceProvider("extension trace provider", "tooltip"); | |
| 20 dumpObject(traceProvider); | 61 dumpObject(traceProvider); |
| 21 traceProvider.onRecordingStarted.addListener(onRecordingStarted); | 62 traceProvider.onRecordingStarted.addListener(onRecordingStarted); |
| 22 traceProvider.onRecordingStopped.addListener(onRecordingStopped); | 63 traceProvider.onRecordingStopped.addListener(onRecordingStopped); |
| 23 extension_startTimeline(() => extension_stopTimeline(() => {})); | 64 extension_startTimeline( |
| 65 () => extension_stopTimeline( | |
| 66 () => extension_dumpFlameChart(nextTest))); | |
| 24 } | 67 } |
| 25 | 68 |
| 26 function extension_startTimeline(callback) | 69 function extension_startTimeline(callback) |
| 27 { | 70 { |
| 28 evaluateOnFrontend("InspectorTest.startTimeline(reply);", callback); | 71 evaluateOnFrontend("InspectorTest.enableTimelineExtensionAndStart(reply);", callback); |
| 29 } | 72 } |
| 30 | 73 |
| 31 function extension_stopTimeline(callback) | 74 function extension_stopTimeline(callback) |
| 32 { | 75 { |
| 33 evaluateOnFrontend("InspectorTest.stopTimeline(reply);", callback); | 76 evaluateOnFrontend("InspectorTest.stopTimeline(reply);", callback); |
| 34 } | 77 } |
| 78 | |
| 79 function extension_dumpFlameChart(callback) | |
| 80 { | |
| 81 evaluateOnFrontend("InspectorTest.dumpTimelineFlameChart(['long extension na me']); reply()", callback); | |
| 82 } | |
| 83 | |
| 35 </script> | 84 </script> |
| 36 </head> | 85 </head> |
| 37 <body onload="runTest()"> | 86 <body onload="runTest()"> |
| 38 <p>Tests timeline support in WebInspector Extensions API</p> | 87 <p>Tests timeline support in WebInspector Extensions API</p> |
| 39 <span id="test-element"><b></b></span> | 88 <span id="test-element"><b></b></span> |
| 40 </body> | 89 </body> |
| 41 </html> | 90 </html> |
| OLD | NEW |