Index: tools/android/loading/tracing_unittest.py |
diff --git a/tools/android/loading/tracing_unittest.py b/tools/android/loading/tracing_unittest.py |
index 8d946b7cc16d37e5e7032b9e3291fc7de59afd5a..a3bea3ff039365e313041cbbd562905018f2c851 100644 |
--- a/tools/android/loading/tracing_unittest.py |
+++ b/tools/android/loading/tracing_unittest.py |
@@ -287,14 +287,35 @@ class TracingTrackTestCase(unittest.TestCase): |
with self.assertRaises(AssertionError): |
self.track.EventFromStep(no_step) |
- def testTracingTrackForThread(self): |
+ def testFilterPidTid(self): |
self._HandleEvents(self._EVENTS) |
- tracing_track = self.track.TracingTrackForThread((2, 1)) |
+ tracing_track = self.track.Filter(2, 1) |
self.assertTrue(tracing_track is not self.track) |
self.assertEquals(4, len(tracing_track.GetEvents())) |
- tracing_track = self.track.TracingTrackForThread((2, 42)) |
+ tracing_track = self.track.Filter(2, 42) |
self.assertEquals(0, len(tracing_track.GetEvents())) |
+ def testFilterCategories(self): |
+ events = [ |
+ {'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 2, 'tid': 1, 'cat': 'A'}, |
+ {'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 2, 'tid': 1, 'cat': 'B'}, |
+ {'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 2, 'tid': 1, 'cat': 'C,D'}, |
+ {'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 2, 'tid': 1, 'cat': 'A,B,C,D'}] |
+ self._HandleEvents(events) |
+ tracing_events = self.track.GetEvents() |
+ self.assertEquals(4, len(tracing_events)) |
+ filtered_events = self.track.Filter(categories=None).GetEvents() |
+ self.assertListEqual(tracing_events, filtered_events) |
+ filtered_events = self.track.Filter(categories=set(['A'])).GetEvents() |
+ self.assertEquals(2, len(filtered_events)) |
+ self.assertListEqual([tracing_events[0], tracing_events[3]], |
+ filtered_events) |
+ filtered_events = self.track.Filter(categories=set(['Z'])).GetEvents() |
+ self.assertEquals(0, len(filtered_events)) |
+ filtered_events = self.track.Filter(categories=set(['B', 'C'])).GetEvents() |
+ self.assertEquals(3, len(filtered_events)) |
+ self.assertListEqual(tracing_events[1:], filtered_events) |
+ |
def _HandleEvents(self, events): |
self.track.Handle('Tracing.dataCollected', {'params': {'value': [ |
self.EventToMicroseconds(e) for e in events]}}) |