Index: tools/android/loading/tracing_unittest.py |
diff --git a/tools/android/loading/tracing_unittest.py b/tools/android/loading/tracing_unittest.py |
index f621c1fe15d996ff1c1e38f235f009135f6b6787..6b6cd6c1e4015abc37127a544e39d3ec5ab0a7c7 100644 |
--- a/tools/android/loading/tracing_unittest.py |
+++ b/tools/android/loading/tracing_unittest.py |
@@ -360,6 +360,51 @@ class TracingTrackTestCase(unittest.TestCase): |
self.assertSetEqual( |
set('A'), self.track.Filter(categories=set('A')).Categories()) |
+ def testHasLoadingSucceeded(self): |
+ cat = 'navigation' |
+ on_navigate = 'RenderFrameImpl::OnNavigate' |
+ fail_provisional = 'RenderFrameImpl::didFailProvisionalLoad' |
+ fail_load = 'RenderFrameImpl::didFailLoad' |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': []}) |
+ with self.assertRaises(AssertionError): |
+ track.HasLoadingSucceeded() |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
+ self.assertTrue(track.HasLoadingSucceeded()) |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 2}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
+ {'cat': cat, 'name': fail_provisional, 'args': {'id': 2}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
+ self.assertTrue(track.HasLoadingSucceeded()) |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
+ {'cat': cat, 'name': fail_provisional, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
+ self.assertFalse(track.HasLoadingSucceeded()) |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
+ {'cat': cat, 'name': fail_load, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
+ self.assertFalse(track.HasLoadingSucceeded()) |
+ |
+ track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
+ {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
+ {'cat': cat, 'name': fail_load, 'args': {'id': 1}, |
+ 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
+ self.assertFalse(track.HasLoadingSucceeded()) |
+ |
def _HandleEvents(self, events): |
self.track.Handle('Tracing.dataCollected', {'params': {'value': [ |
self.EventToMicroseconds(e) for e in events]}}) |