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

Unified Diff: telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py

Issue 2619073002: [Telemetry] Change trace_data to hold a list of raw trace data for each trace part (Closed)
Patch Set: Created 3 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: telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py
diff --git a/telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py b/telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py
index 0cf3bd43a2b2da8661aacfc278a87e27804dd888..5162c1d84e99d5607558d4fb6910fae1e847b45d 100644
--- a/telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py
+++ b/telemetry/telemetry/internal/backends/chrome_inspector/tracing_backend_unittest.py
@@ -67,8 +67,9 @@ class TracingBackendTest(tab_test_case.TabTestCase):
# Check that clock sync data is in tracing data.
clock_sync_found = False
- trace = tracing_data.GetTraceFor(trace_data.CHROME_TRACE_PART)
- for event in trace['traceEvents']:
+ traces = tracing_data.GetTracesFor(trace_data.CHROME_TRACE_PART)
+ self.assertEqual(len(traces), 1)
+ for event in traces[0]['traceEvents']:
if event['name'] == 'clock_sync' or 'ClockSyncEvent' in event['name']:
clock_sync_found = True
break
@@ -121,9 +122,9 @@ class TracingBackendUnitTest(unittest.TestCase):
def testCollectTracingDataTimeout(self):
self._inspector_socket.AddEvent(
- 'Tracing.dataCollected', {'value': [{'ph': 'B'}]}, 9)
+ 'Tracing.dataCollected', {'value': {'traceEvents': [{'ph': 'B'}]}}, 9)
self._inspector_socket.AddEvent(
- 'Tracing.dataCollected', {'value': [{'ph': 'E'}]}, 19)
+ 'Tracing.dataCollected', {'value': {'traceEvents': [{'ph': 'E'}]}}, 19)
self._inspector_socket.AddEvent('Tracing.tracingComplete', {}, 35)
backend = tracing_backend.TracingBackend(self._inspector_socket)
@@ -132,37 +133,41 @@ class TracingBackendUnitTest(unittest.TestCase):
# a TracingTimeoutException.
with self.assertRaises(tracing_backend.TracingTimeoutException):
backend._CollectTracingData(trace_data_builder, 10)
- trace_events = trace_data_builder.AsData().GetTraceFor(
- trace_data.CHROME_TRACE_PART).get('traceEvents', [])
- self.assertEqual(2, len(trace_events))
+ traces = trace_data_builder.AsData().GetTracesFor(
+ trace_data.CHROME_TRACE_PART)
+ self.assertEqual(2, len(traces))
+ self.assertEqual(1, len(traces[0].get('traceEvents', [])))
+ self.assertEqual(1, len(traces[1].get('traceEvents', [])))
self.assertFalse(backend._has_received_all_tracing_data)
def testCollectTracingDataNoTimeout(self):
self._inspector_socket.AddEvent(
- 'Tracing.dataCollected', {'value': [{'ph': 'B'}]}, 9)
+ 'Tracing.dataCollected', {'value': {'traceEvents': [{'ph': 'B'}]}}, 9)
self._inspector_socket.AddEvent(
- 'Tracing.dataCollected', {'value': [{'ph': 'E'}]}, 14)
+ 'Tracing.dataCollected', {'value': {'traceEvents': [{'ph': 'E'}]}}, 14)
self._inspector_socket.AddEvent('Tracing.tracingComplete', {}, 19)
backend = tracing_backend.TracingBackend(self._inspector_socket)
trace_data_builder = trace_data.TraceDataBuilder()
backend._CollectTracingData(trace_data_builder, 10)
- trace_events = trace_data_builder.AsData().GetTraceFor(
- trace_data.CHROME_TRACE_PART).get('traceEvents', [])
- self.assertEqual(2, len(trace_events))
+ traces = trace_data_builder.AsData().GetTracesFor(
+ trace_data.CHROME_TRACE_PART)
+ self.assertEqual(2, len(traces))
+ self.assertEqual(1, len(traces[0].get('traceEvents', [])))
+ self.assertEqual(1, len(traces[1].get('traceEvents', [])))
self.assertTrue(backend._has_received_all_tracing_data)
def testCollectTracingDataFromStreamNoContainer(self):
self._inspector_socket.AddEvent(
'Tracing.tracingComplete', {'stream': '42'}, 1)
self._inspector_socket.AddAsyncResponse(
- 'IO.read', {'data': '[{},{},{'}, 2)
+ 'IO.read', {'data': '{"traceEvents": [{},{},{'}, 2)
self._inspector_socket.AddAsyncResponse(
- 'IO.read', {'data': '},{},{}]', 'eof': True}, 3)
+ 'IO.read', {'data': '},{},{}]}', 'eof': True}, 3)
backend = tracing_backend.TracingBackend(self._inspector_socket)
trace_data_builder = trace_data.TraceDataBuilder()
backend._CollectTracingData(trace_data_builder, 10)
- trace_events = trace_data_builder.AsData().GetTraceFor(
- trace_data.CHROME_TRACE_PART).get('traceEvents', [])
+ trace_events = trace_data_builder.AsData().GetTracesFor(
+ trace_data.CHROME_TRACE_PART)[0].get('traceEvents', [])
perezju 2017/01/13 10:17:01 this seems to be a common pattern: GetTracesFor(..
nednguyen 2017/01/13 15:53:21 Umm, this is only exists because we have legacy tr
self.assertEqual(5, len(trace_events))
self.assertTrue(backend._has_received_all_tracing_data)
@@ -179,7 +184,7 @@ class TracingBackendUnitTest(unittest.TestCase):
trace_data_builder = trace_data.TraceDataBuilder()
backend._CollectTracingData(trace_data_builder, 10)
data = trace_data_builder.AsData()
- chrome_trace = data.GetTraceFor(trace_data.CHROME_TRACE_PART)
+ chrome_trace = data.GetTracesFor(trace_data.CHROME_TRACE_PART)[0]
self.assertEqual(3, len(chrome_trace.get('traceEvents', [])))
self.assertEqual(dict, type(chrome_trace.get('metadata')))

Powered by Google App Engine
This is Rietveld 408576698