Index: tools/perf/metrics/timeline_unittest.py |
diff --git a/tools/perf/metrics/timeline_unittest.py b/tools/perf/metrics/timeline_unittest.py |
index 7f1b2afc53599780b0feadf0957090b39a090b1c..2a79f9e27775fd813166474cf7f8f130efd0604f 100644 |
--- a/tools/perf/metrics/timeline_unittest.py |
+++ b/tools/perf/metrics/timeline_unittest.py |
@@ -1,4 +1,4 @@ |
-# Copyright 2014 The Chromium Authors. All rights reserved. |
+# Copyright 2013 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. |
@@ -46,6 +46,14 @@ class ThreadTimesTimelineMetricUnittest(unittest.TestCase): |
renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) |
renderer_main.name = 'CrRendererMain' |
+ # Create two frame swaps (Results times should be divided by two) |
+ gpu_main = model.GetOrCreateProcess(1).GetOrCreateThread(3) |
+ gpu_main.name = 'CrGPUMain' |
+ gpu_main.BeginSlice('gpucat', ':RealSwapBuffers', 10, 10) |
+ gpu_main.EndSlice(11, 11) |
+ gpu_main.BeginSlice('gpucat', ':RealSwapBuffers', 12, 12) |
+ gpu_main.EndSlice(13, 13) |
+ |
# [ X ] |
# [ Y ] |
renderer_main.BeginSlice('cat1', 'X', 10, 0) |
@@ -55,37 +63,20 @@ class ThreadTimesTimelineMetricUnittest(unittest.TestCase): |
model.FinalizeImport() |
metric = timeline.ThreadTimesTimelineMetric() |
- metric.report_renderer_main_details = True |
+ metric.details_to_report = timeline.MainThread |
results = self.GetResultsForModel(metric, model) |
- results.AssertHasPageSpecificScalarValue( |
- 'thread_renderer_main_clock_time_percentage', '%', 100) |
- results.AssertHasPageSpecificScalarValue( |
- 'renderer_main|cat1', 'ms', 19) |
- results.AssertHasPageSpecificScalarValue( |
- 'renderer_main|cat2', 'ms', 1) |
- results.AssertHasPageSpecificScalarValue( |
- 'renderer_main|idle', 'ms', 0) |
- |
- def testPercentage(self): |
- model = model_module.TimelineModel() |
- renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) |
- renderer_main.name = 'CrRendererMain' |
- # [ X ] [ Z ] |
- # X is 20ms, then 10ms delay, then Z is 10ms |
- renderer_main.BeginSlice('cat', 'X', 10, 0) |
- renderer_main.EndSlice(30, 19.5) |
- renderer_main.BeginSlice('cat', 'Z', 40, 20) |
- renderer_main.EndSlice(50, 30) |
- model.FinalizeImport() |
- |
- metric = timeline.ThreadTimesTimelineMetric() |
- metric.report_renderer_main_details = True |
- results = self.GetResultsForModel(metric, model) |
+ # Test that all categories exist |
+ for name in timeline.TimelineThreadCategories.values(): |
+ results.GetPageSpecificValueNamed(timeline.ThreadTimeResultName(name)) |
+ results.GetPageSpecificValueNamed(timeline.ThreadCpuTimeResultName(name)) |
- results.AssertHasPageSpecificScalarValue( |
- 'thread_renderer_main_clock_time_percentage', '%', 75) |
- results.AssertHasPageSpecificScalarValue( |
- 'renderer_main|cat', 'ms', 30) |
- results.AssertHasPageSpecificScalarValue( |
- 'renderer_main|idle', 'ms', 10) |
+ # Test a couple specific results. |
+ assert_results = { |
+ timeline.ThreadTimeResultName('renderer_main') : 10, |
+ timeline.ThreadDetailResultName('renderer_main','cat1') : 9.5, |
+ timeline.ThreadDetailResultName('renderer_main','cat2') : 0.5, |
+ timeline.ThreadDetailResultName('renderer_main','idle') : 0 |
+ } |
+ for name, value in assert_results.iteritems(): |
+ results.AssertHasPageSpecificScalarValue(name, 'ms', value) |