OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 test_page_measurement_results | 7 from metrics import test_page_test_results |
8 from metrics import timeline | 8 from metrics import timeline |
9 from telemetry.timeline import model as model_module | 9 from telemetry.timeline import model as model_module |
10 from telemetry.web_perf import timeline_interaction_record as tir_module | 10 from telemetry.web_perf import timeline_interaction_record as tir_module |
11 | 11 |
12 def _GetInteractionRecord(start, end): | 12 def _GetInteractionRecord(start, end): |
13 return tir_module.TimelineInteractionRecord("test-record", start, end) | 13 return tir_module.TimelineInteractionRecord("test-record", start, end) |
14 | 14 |
15 | 15 |
16 class LoadTimesTimelineMetric(unittest.TestCase): | 16 class LoadTimesTimelineMetric(unittest.TestCase): |
17 def GetResults(self, metric, model, renderer_thread, interaction_records): | 17 def GetResults(self, metric, model, renderer_thread, interaction_records): |
18 results = test_page_measurement_results.TestPageMeasurementResults(self) | 18 results = test_page_test_results.TestPageTestResults(self) |
19 metric.AddResults(model, renderer_thread, interaction_records, results) | 19 metric.AddResults(model, renderer_thread, interaction_records, results) |
20 return results | 20 return results |
21 | 21 |
22 def testSanitizing(self): | 22 def testSanitizing(self): |
23 model = model_module.TimelineModel() | 23 model = model_module.TimelineModel() |
24 renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) | 24 renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) |
25 renderer_main.name = 'CrRendererMain' | 25 renderer_main.name = 'CrRendererMain' |
26 | 26 |
27 # [ X ] | 27 # [ X ] |
28 # [ Y ] | 28 # [ Y ] |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 metric, model=model, renderer_thread=renderer_main, | 83 metric, model=model, renderer_thread=renderer_main, |
84 interaction_records=[_GetInteractionRecord(0, float('inf'))]) | 84 interaction_records=[_GetInteractionRecord(0, float('inf'))]) |
85 results.AssertHasPageSpecificScalarValue( | 85 results.AssertHasPageSpecificScalarValue( |
86 'cat_x_y', 'count', 3) | 86 'cat_x_y', 'count', 3) |
87 results.AssertHasPageSpecificScalarValue( | 87 results.AssertHasPageSpecificScalarValue( |
88 'cat_x_y_avg', 'count', 1.5) | 88 'cat_x_y_avg', 'count', 1.5) |
89 | 89 |
90 | 90 |
91 class ThreadTimesTimelineMetricUnittest(unittest.TestCase): | 91 class ThreadTimesTimelineMetricUnittest(unittest.TestCase): |
92 def GetResults(self, metric, model, renderer_thread, interaction_record): | 92 def GetResults(self, metric, model, renderer_thread, interaction_record): |
93 results = test_page_measurement_results.TestPageMeasurementResults(self) | 93 results = test_page_test_results.TestPageTestResults(self) |
94 metric.AddResults(model, renderer_thread, interaction_record, | 94 metric.AddResults(model, renderer_thread, interaction_record, |
95 results) | 95 results) |
96 return results | 96 return results |
97 | 97 |
98 def testResults(self): | 98 def testResults(self): |
99 model = model_module.TimelineModel() | 99 model = model_module.TimelineModel() |
100 renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) | 100 renderer_main = model.GetOrCreateProcess(1).GetOrCreateThread(2) |
101 renderer_main.name = 'CrRendererMain' | 101 renderer_main.name = 'CrRendererMain' |
102 | 102 |
103 metric = timeline.ThreadTimesTimelineMetric() | 103 metric = timeline.ThreadTimesTimelineMetric() |
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 metric.details_to_report = timeline.ReportMainThreadOnly | 175 metric.details_to_report = timeline.ReportMainThreadOnly |
176 results = self.GetResults(metric, model, renderer_main.parent, | 176 results = self.GetResults(metric, model, renderer_main.parent, |
177 [_GetInteractionRecord(10, 30)]) | 177 [_GetInteractionRecord(10, 30)]) |
178 | 178 |
179 # Test a couple specific results. | 179 # Test a couple specific results. |
180 assert_results = { | 180 assert_results = { |
181 timeline.ThreadCpuTimeResultName('renderer_main') : 9.0, | 181 timeline.ThreadCpuTimeResultName('renderer_main') : 9.0, |
182 } | 182 } |
183 for name, value in assert_results.iteritems(): | 183 for name, value in assert_results.iteritems(): |
184 results.AssertHasPageSpecificScalarValue(name, 'ms', value) | 184 results.AssertHasPageSpecificScalarValue(name, 'ms', value) |
OLD | NEW |