| Index: tools/perf/metrics/timeline_unittest.py
|
| diff --git a/tools/perf/metrics/timeline_unittest.py b/tools/perf/metrics/timeline_unittest.py
|
| index 5ae1a5d66fdc65e9e141fee500ae54cde962b0d2..e62e075c108b6bfa3afbc229e4d886595b626a63 100644
|
| --- a/tools/perf/metrics/timeline_unittest.py
|
| +++ b/tools/perf/metrics/timeline_unittest.py
|
| @@ -109,7 +109,7 @@ class ThreadTimesTimelineMetricUnittest(unittest.TestCase):
|
|
|
| # Test that all result thread categories exist
|
| for name in timeline.TimelineThreadCategories.values():
|
| - results.GetPageSpecificValueNamed(timeline.ThreadCpuTimeResultName(name))
|
| + results.GetPageSpecificValueNamed(metric.ThreadCpuTimeResultName(name))
|
|
|
| def testBasic(self):
|
| model = model_module.TimelineModel()
|
| @@ -144,12 +144,12 @@ class ThreadTimesTimelineMetricUnittest(unittest.TestCase):
|
| main_thread = "renderer_main"
|
| cc_thread = 'renderer_compositor'
|
| assert_results = [
|
| - (timeline.ThreadCpuTimeResultName(main_thread), 'ms', 9.75),
|
| - (timeline.ThreadTasksResultName(main_thread), 'tasks', 0.5),
|
| - (timeline.ThreadMeanFrameTimeResultName(cc_thread), 'ms', 10.0),
|
| - (timeline.ThreadDetailResultName(main_thread,'cat1'), 'ms', 9.5),
|
| - (timeline.ThreadDetailResultName(main_thread,'cat2'), 'ms', 0.5),
|
| - (timeline.ThreadDetailResultName(main_thread,'idle'), 'ms', 0)
|
| + (metric.ThreadCpuTimeResultName(main_thread), 'ms', 9.75),
|
| + (metric.ThreadTasksResultName(main_thread), 'tasks', 0.5),
|
| + (metric.ThreadFrameTimeResultName(cc_thread), 'ms', 10.0),
|
| + (metric.ThreadDetailResultName(main_thread,'cat1'), 'ms', 9.5),
|
| + (metric.ThreadDetailResultName(main_thread,'cat2'), 'ms', 0.5),
|
| + (metric.ThreadDetailResultName(main_thread,'idle'), 'ms', 0)
|
| ]
|
| for name, unit, value in assert_results:
|
| results.AssertHasPageSpecificScalarValue(name, unit, value)
|
| @@ -183,7 +183,47 @@ class ThreadTimesTimelineMetricUnittest(unittest.TestCase):
|
|
|
| # Test a couple specific results.
|
| assert_results = {
|
| - timeline.ThreadCpuTimeResultName('renderer_main') : 9.0,
|
| + metric.ThreadCpuTimeResultName('renderer_main') : 9.0,
|
| }
|
| for name, value in assert_results.iteritems():
|
| results.AssertHasPageSpecificScalarValue(name, 'ms', value)
|
| +
|
| + def testMeasureTotalThreadTime(self):
|
| + model = model_module.TimelineModel()
|
| + renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2)
|
| + renderer_main.name = 'CrRendererMain'
|
| +
|
| + # Create two frame swaps (Results times should accumulate both frames)
|
| + cc_main = model.GetOrCreateProcess(1).GetOrCreateThread(3)
|
| + cc_main.name = 'Compositor'
|
| + cc_main.BeginSlice('cc_cat', timeline.FrameTraceName, 10, 10)
|
| + cc_main.EndSlice(11, 11)
|
| + cc_main.BeginSlice('cc_cat', timeline.FrameTraceName, 12, 12)
|
| + cc_main.EndSlice(13, 13)
|
| +
|
| + # [ X ] [ Z ]
|
| + # [ Y ]
|
| + renderer_main.BeginSlice('cat1', 'X', 10, 0)
|
| + renderer_main.BeginSlice('cat2', 'Y', 15, 5)
|
| + renderer_main.EndSlice(16, 5.5)
|
| + renderer_main.BeginSlice('cat1', 'Z', 20, 9)
|
| + renderer_main.BeginSlice('cat1', 'Z', 21, 10)
|
| + renderer_main.EndSlice(30, 19.5)
|
| + model.FinalizeImport()
|
| +
|
| + metric = timeline.ThreadTimesTimelineMetric(measure_per_frame=False)
|
| + metric.details_to_report = timeline.ReportMainThreadOnly
|
| + results = self.GetResults(metric, model, renderer_main.parent,
|
| + [_GetInteractionRecord(10, 30)])
|
| +
|
| + # Test for the results we expect.
|
| + main_thread = "renderer_main"
|
| + cc_thread = 'renderer_compositor'
|
| + assert_results = [
|
| + (metric.ThreadCpuTimeResultName(main_thread), 'ms', 19.5),
|
| + (metric.ThreadTasksResultName(main_thread), 'tasks', 1.0),
|
| + (metric.ThreadFrameTimeResultName(cc_thread), 'ms', 20.0),
|
| + (metric.ThreadDetailResultName(main_thread,'cat1'), 'ms', 19.0),
|
| + (metric.ThreadDetailResultName(main_thread,'cat2'), 'ms', 1.0)]
|
| + for name, unit, value in assert_results:
|
| + results.AssertHasPageSpecificScalarValue(name, unit, value)
|
|
|