summaryrefslogtreecommitdiffstats
path: root/tools/telemetry
diff options
context:
space:
mode:
authornduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-26 07:40:10 +0000
committernduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-26 07:40:10 +0000
commit2cb40c56b7de32d1bac045f86a7ac4ad63b6eeb6 (patch)
tree07610a5e28a07e5c7f3732c879cdbe8f051944fc /tools/telemetry
parent25bf196e21b72ab46bdf5d4dbf129d207ae5bc92 (diff)
downloadchromium_src-2cb40c56b7de32d1bac045f86a7ac4ad63b6eeb6.zip
chromium_src-2cb40c56b7de32d1bac045f86a7ac4ad63b6eeb6.tar.gz
chromium_src-2cb40c56b7de32d1bac045f86a7ac4ad63b6eeb6.tar.bz2
[telemetry] Add a trace-based loading measurement
As part of this, refactor loading.py into various components to foster code sharing between the three loading measurement flavors. R=tonyg Review URL: https://chromiumcodereview.appspot.com/19519015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213782 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/telemetry')
-rw-r--r--tools/telemetry/telemetry/core/timeline/inspector_importer_unittest.py11
-rw-r--r--tools/telemetry/telemetry/core/timeline/model.py3
-rw-r--r--tools/telemetry/telemetry/core/timeline/trace_event_importer.py3
3 files changed, 14 insertions, 3 deletions
diff --git a/tools/telemetry/telemetry/core/timeline/inspector_importer_unittest.py b/tools/telemetry/telemetry/core/timeline/inspector_importer_unittest.py
index 4a19f2e..afb99e6 100644
--- a/tools/telemetry/telemetry/core/timeline/inspector_importer_unittest.py
+++ b/tools/telemetry/telemetry/core/timeline/inspector_importer_unittest.py
@@ -4,6 +4,7 @@
import unittest
from telemetry.core.timeline import inspector_importer
+from telemetry.core.timeline import model
_SAMPLE_MESSAGE = {
'children': [
@@ -99,3 +100,13 @@ class InspectorEventParsingTest(unittest.TestCase):
event = (inspector_importer.InspectorTimelineImporter.
RawEventToTimelineEvent(raw_event))
self.assertEquals(None, event)
+
+class InspectorImporterTest(unittest.TestCase):
+ def testImport(self):
+ m = model.TimelineModel([_SAMPLE_MESSAGE], shift_world_to_zero=False)
+ self.assertEquals(1, len(m.processes))
+ self.assertEquals(1, len(m.processes.values()[0].threads))
+ renderer_thread = m.GetAllThreads()[0]
+ self.assertEquals(1, len(renderer_thread.toplevel_slices))
+ self.assertEquals('Program',
+ renderer_thread.toplevel_slices[0].name)
diff --git a/tools/telemetry/telemetry/core/timeline/model.py b/tools/telemetry/telemetry/core/timeline/model.py
index 47606a9..aae0199 100644
--- a/tools/telemetry/telemetry/core/timeline/model.py
+++ b/tools/telemetry/telemetry/core/timeline/model.py
@@ -60,6 +60,9 @@ class TimelineModel(object):
for importer in importers:
importer.FinalizeImport()
+ for process in self.processes.itervalues():
+ process.FinalizeImport()
+
if shift_world_to_zero:
self.ShiftWorldToZero()
self.UpdateBounds()
diff --git a/tools/telemetry/telemetry/core/timeline/trace_event_importer.py b/tools/telemetry/telemetry/core/timeline/trace_event_importer.py
index 2b191d4..93664d7 100644
--- a/tools/telemetry/telemetry/core/timeline/trace_event_importer.py
+++ b/tools/telemetry/telemetry/core/timeline/trace_event_importer.py
@@ -240,9 +240,6 @@ class TraceEventTimelineImporter(importer.TimelineImporter):
self._CreateExplicitObjects()
self._CreateImplicitObjects()
- for process in self._model.processes.itervalues():
- process.FinalizeImport()
-
def _CreateAsyncSlices(self):
if len(self._all_async_events) == 0:
return