| // Copyright 2018 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| (async function() { |
| TestRunner.addResult(`Checks DevTools timeline is capable of reading and displaying generic traces.\n`); |
| Root.Runtime.experiments.enableForTest('timelineShowAllEvents'); |
| await TestRunner.loadModule('performance_test_runner'); |
| await TestRunner.showPanel('timeline'); |
| |
| const rawTraceEvents = [ |
| { |
| 'args': {'name': 'Renderer'}, |
| 'cat': '__metadata', |
| 'name': 'process_name', |
| 'ph': 'M', |
| 'pid': 17851, |
| 'tid': 23, |
| 'ts': 0 |
| }, |
| { |
| 'args': {'name': 'CrRendererMain'}, |
| 'cat': '__metadata', |
| 'name': 'thread_name', |
| 'ph': 'M', |
| 'pid': 17851, |
| 'tid': 23, |
| 'ts': 0 |
| }, |
| {'pid':254229,'tid':0,'ts':0,'ph':'M','cat':'__metadata','name':'num_cpus','args':{'number':40}}, |
| {'pid':254229,'tid':254229,'ts':0,'ph':'M','cat':'__metadata','name':'process_sort_index','args':{'sort_index':-6}}, |
| {'pid':254229,'tid':254229,'ts':0,'ph':'M','cat':'__metadata','name':'process_name','args':{'name':'Browser'}}, |
| {'pid':254229,'tid':254229,'ts':0,'ph':'M','cat':'__metadata','name':'process_uptime_seconds','args':{'uptime':2056}}, |
| {'pid':254229,'tid':254229,'ts':0,'ph':'M','cat':'__metadata','name':'thread_name','args':{'name':'CrBrowserMain'}}, |
| {'pid':254229,'tid':254262,'ts':0,'ph':'M','cat':'__metadata','name':'thread_name','args':{'name':'CompositorTileWorker1/254262'}}, |
| {'pid':254229,'tid':254245,'ts':0,'ph':'M','cat':'__metadata','name':'thread_name','args':{'name':'Chrome_IOThread'}}, |
| {"pid":254229,"tid":254229,"ts":101020,"ph":"X","cat":"toplevel","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/public/cpp/system/simple_watcher.cc","src_func":"Notify"},"dur":470}, |
| {"pid":254229,"tid":254262,"ts":101330,"ph":"X","cat":"toplevel","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/public/cpp/system/simple_watcher.cc","src_func":"Notify"},"dur":440}, |
| {"pid":254229,"tid":254245,"ts":101640,"ph":"X","cat":"toplevel","name":"MessageLoop::RunTask","args":{"src_file":"../../mojo/public/cpp/system/simple_watcher.cc","src_func":"Notify"},"dur":400}, |
| { |
| 'cat': 'disabled-by-default-devtools.timeline', |
| 'name': 'EvaluateScript', |
| 'ph': 'X', |
| 'pid': 17851, |
| 'tid': 23, |
| 'ts': 101000, |
| 'dur': 10000, |
| 'args': {'data': {'url': 'https://www.google.com', 'lineNumber': 1337}} |
| } |
| ]; |
| |
| const timeline = UI.panels.timeline; |
| const model = PerformanceTestRunner.createPerformanceModelWithEvents(rawTraceEvents); |
| timeline._setModel(model); |
| |
| TestRunner.addResult(`isGenericTrace: ${model.timelineModel().isGenericTrace()}\n`); |
| const timelineData = timeline._flameChart._mainDataProvider.timelineData(); |
| const groups = timelineData.groups; |
| groups.forEach((group, index) => { |
| TestRunner.addResult(`${index}: ${group.name} ${group.startLevel}`); |
| }); |
| |
| TestRunner.completeTest(); |
| })(); |