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

Unified Diff: tools/telemetry/telemetry/tracing_backend_unittest.py

Issue 12082091: [telemetry] Add TraceResult as return value from tracing, and placeholder trace_event_importer. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: nits Created 7 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 side-by-side diff with in-line comments
Download patch
Index: tools/telemetry/telemetry/tracing_backend_unittest.py
diff --git a/tools/telemetry/telemetry/tracing_backend_unittest.py b/tools/telemetry/telemetry/tracing_backend_unittest.py
index 030474701e57ccc6e0ad3ac4641143ae782742fd..35b423770d3547e8e5cb3b19095fbdee31c89bb8 100644
--- a/tools/telemetry/telemetry/tracing_backend_unittest.py
+++ b/tools/telemetry/telemetry/tracing_backend_unittest.py
@@ -2,10 +2,13 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+import cStringIO
import json
import os
+import unittest
from telemetry import tab_test_case
+from telemetry import tracing_backend
from telemetry import util
@@ -27,7 +30,43 @@ class TracingBackendTest(tab_test_case.TabTestCase):
self._browser.http_server.UrlOf('image.png')
self.assertTrue(self._browser.supports_tracing)
self._browser.StopTracing()
- trace = self._browser.GetTrace()
- json_trace = json.loads(trace)
- self.assertTrue('traceEvents' in json_trace)
- self.assertTrue(json_trace['traceEvents'])
+ model = self._browser.GetTraceResultAndReset().AsTimelineModel()
+ events = model.GetAllEvents()
+ assert len(events) > 0
+
+class TracingResultImplTest(unittest.TestCase):
+ def testWrite1(self):
+ ri = tracing_backend.TraceResultImpl([])
+ f = cStringIO.StringIO()
+ ri.Serialize(f)
+ v = f.getvalue()
+
+ j = json.loads(v)
+ assert 'traceEvents' in j
+ self.assertEquals(j['traceEvents'], [])
+
+ def testWrite2(self):
+ ri = tracing_backend.TraceResultImpl([
+ '"foo"',
+ '"bar"'])
+ f = cStringIO.StringIO()
+ ri.Serialize(f)
+ v = f.getvalue()
+
+ j = json.loads(v)
+ assert 'traceEvents' in j
+ self.assertEquals(j['traceEvents'], ['foo', 'bar'])
+
+ def testWrite3(self):
+ ri = tracing_backend.TraceResultImpl([
+ '"foo"',
+ '"bar"',
+ '"baz"'])
+ f = cStringIO.StringIO()
+ ri.Serialize(f)
+ v = f.getvalue()
+
+ j = json.loads(v)
+ assert 'traceEvents' in j
+ self.assertEquals(j['traceEvents'],
+ ['foo', 'bar', 'baz'])

Powered by Google App Engine
This is Rietveld 408576698