OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import unittest | 5 import unittest |
6 | 6 |
7 from metrics import timeline | 7 from metrics import timeline |
8 from telemetry.core.timeline import model as model_module | 8 from telemetry.core.timeline import model as model_module |
9 from telemetry.page import page as page_module | 9 from telemetry.page import page as page_module |
10 from telemetry.page import page_measurement_results | 10 from telemetry.page import page_measurement_results |
(...skipping 15 matching lines...) Expand all Loading... |
26 | 26 |
27 def AssertHasPageSpecificScalarValue(self, name, units, expected_value): | 27 def AssertHasPageSpecificScalarValue(self, name, units, expected_value): |
28 value = self.GetPageSpecificValueNamed(name) | 28 value = self.GetPageSpecificValueNamed(name) |
29 self.test.assertEquals(units, value.units) | 29 self.test.assertEquals(units, value.units) |
30 self.test.assertTrue(isinstance(value, scalar.ScalarValue)) | 30 self.test.assertTrue(isinstance(value, scalar.ScalarValue)) |
31 self.test.assertEquals(expected_value, value.value) | 31 self.test.assertEquals(expected_value, value.value) |
32 | 32 |
33 def __str__(self): | 33 def __str__(self): |
34 return '\n'.join([repr(x) for x in self.all_page_specific_values]) | 34 return '\n'.join([repr(x) for x in self.all_page_specific_values]) |
35 | 35 |
| 36 class LoadTimesTimelineMetric(unittest.TestCase): |
| 37 def GetResultsForModel(self, metric, model): |
| 38 metric.model = model |
| 39 results = TestPageMeasurementResults(self) |
| 40 tab = None |
| 41 metric.AddResults(tab, results) |
| 42 return results |
| 43 |
| 44 def testSanitizing(self): |
| 45 model = model_module.TimelineModel() |
| 46 renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) |
| 47 renderer_main.name = 'CrRendererMain' |
| 48 |
| 49 # [ X ] |
| 50 # [ Y ] |
| 51 renderer_main.BeginSlice('cat1', 'x.y', 10, 0) |
| 52 renderer_main.EndSlice(20, 20) |
| 53 model.FinalizeImport() |
| 54 |
| 55 metric = timeline.LoadTimesTimelineMetric(timeline.TRACING_MODE) |
| 56 metric.renderer_process = renderer_main.parent |
| 57 results = self.GetResultsForModel(metric, model) |
| 58 results.AssertHasPageSpecificScalarValue( |
| 59 'CrRendererMain|x_y', 'ms', 10) |
| 60 results.AssertHasPageSpecificScalarValue( |
| 61 'CrRendererMain|x_y_max', 'ms', 10) |
| 62 results.AssertHasPageSpecificScalarValue( |
| 63 'CrRendererMain|x_y_avg', 'ms', 10) |
| 64 |
| 65 |
36 class ThreadTimesTimelineMetricUnittest(unittest.TestCase): | 66 class ThreadTimesTimelineMetricUnittest(unittest.TestCase): |
37 def GetResultsForModel(self, metric, model): | 67 def GetResultsForModel(self, metric, model): |
38 metric.model = model | 68 metric.model = model |
39 results = TestPageMeasurementResults(self) | 69 results = TestPageMeasurementResults(self) |
40 tab = None | 70 tab = None |
41 metric.AddResults(tab, results) | 71 metric.AddResults(tab, results) |
42 return results | 72 return results |
43 | 73 |
44 def testBasic(self): | 74 def testBasic(self): |
45 model = model_module.TimelineModel() | 75 model = model_module.TimelineModel() |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
82 metric = timeline.ThreadTimesTimelineMetric() | 112 metric = timeline.ThreadTimesTimelineMetric() |
83 metric.report_renderer_main_details = True | 113 metric.report_renderer_main_details = True |
84 results = self.GetResultsForModel(metric, model) | 114 results = self.GetResultsForModel(metric, model) |
85 | 115 |
86 results.AssertHasPageSpecificScalarValue( | 116 results.AssertHasPageSpecificScalarValue( |
87 'thread_renderer_main_clock_time_percentage', '%', 75) | 117 'thread_renderer_main_clock_time_percentage', '%', 75) |
88 results.AssertHasPageSpecificScalarValue( | 118 results.AssertHasPageSpecificScalarValue( |
89 'renderer_main|cat', 'ms', 30) | 119 'renderer_main|cat', 'ms', 30) |
90 results.AssertHasPageSpecificScalarValue( | 120 results.AssertHasPageSpecificScalarValue( |
91 'renderer_main|idle', 'ms', 10) | 121 'renderer_main|idle', 'ms', 10) |
OLD | NEW |