Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: tools/perf/metrics/timeline_unittest.py

Issue 140653003: Sanitize event names before adding to results object (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/perf/metrics/timeline.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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)
OLDNEW
« no previous file with comments | « tools/perf/metrics/timeline.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698