OLD | NEW |
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import collections | 5 import collections |
6 import copy | 6 import copy |
7 import logging | 7 import logging |
8 import operator | 8 import operator |
9 import unittest | 9 import unittest |
10 | 10 |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 self.assertListEqual([tracing_events[0], tracing_events[3]], | 353 self.assertListEqual([tracing_events[0], tracing_events[3]], |
354 filtered_events) | 354 filtered_events) |
355 filtered_events = self.track.Filter(categories=set(['Z'])).GetEvents() | 355 filtered_events = self.track.Filter(categories=set(['Z'])).GetEvents() |
356 self.assertEquals(0, len(filtered_events)) | 356 self.assertEquals(0, len(filtered_events)) |
357 filtered_events = self.track.Filter(categories=set(['B', 'C'])).GetEvents() | 357 filtered_events = self.track.Filter(categories=set(['B', 'C'])).GetEvents() |
358 self.assertEquals(3, len(filtered_events)) | 358 self.assertEquals(3, len(filtered_events)) |
359 self.assertListEqual(tracing_events[1:], filtered_events) | 359 self.assertListEqual(tracing_events[1:], filtered_events) |
360 self.assertSetEqual( | 360 self.assertSetEqual( |
361 set('A'), self.track.Filter(categories=set('A')).Categories()) | 361 set('A'), self.track.Filter(categories=set('A')).Categories()) |
362 | 362 |
| 363 def testHasLoadingSucceed(self): |
| 364 cat = 'navigation' |
| 365 on_navigate = 'RenderFrameImpl::OnNavigate' |
| 366 fail_provisional = 'RenderFrameImpl::didFailProvisionalLoad' |
| 367 fail_load = 'RenderFrameImpl::didFailLoad' |
| 368 |
| 369 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': []}) |
| 370 with self.assertRaises(AssertionError): |
| 371 track.HasLoadingSucceed() |
| 372 |
| 373 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
| 374 {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
| 375 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
| 376 self.assertTrue(track.HasLoadingSucceed()) |
| 377 |
| 378 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
| 379 {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
| 380 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
| 381 {'cat': cat, 'name': on_navigate, 'args': {'id': 2}, |
| 382 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
| 383 {'cat': cat, 'name': fail_provisional, 'args': {'id': 2}, |
| 384 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
| 385 self.assertTrue(track.HasLoadingSucceed()) |
| 386 |
| 387 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
| 388 {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
| 389 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
| 390 {'cat': cat, 'name': fail_provisional, 'args': {'id': 1}, |
| 391 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
| 392 self.assertFalse(track.HasLoadingSucceed()) |
| 393 |
| 394 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
| 395 {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
| 396 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
| 397 {'cat': cat, 'name': fail_load, 'args': {'id': 1}, |
| 398 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
| 399 self.assertFalse(track.HasLoadingSucceed()) |
| 400 |
| 401 track = TracingTrack.FromJsonDict({'categories': [cat], 'events': [ |
| 402 {'cat': cat, 'name': on_navigate, 'args': {'id': 1}, |
| 403 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}, |
| 404 {'cat': cat, 'name': fail_load, 'args': {'id': 1}, |
| 405 'ts': 5, 'ph': 'X', 'dur': 10, 'pid': 1, 'tid': 1}]}) |
| 406 self.assertFalse(track.HasLoadingSucceed()) |
| 407 |
363 def _HandleEvents(self, events): | 408 def _HandleEvents(self, events): |
364 self.track.Handle('Tracing.dataCollected', {'params': {'value': [ | 409 self.track.Handle('Tracing.dataCollected', {'params': {'value': [ |
365 self.EventToMicroseconds(e) for e in events]}}) | 410 self.EventToMicroseconds(e) for e in events]}}) |
366 | 411 |
367 | 412 |
368 class IntervalTreeTestCase(unittest.TestCase): | 413 class IntervalTreeTestCase(unittest.TestCase): |
369 class FakeEvent(object): | 414 class FakeEvent(object): |
370 def __init__(self, start_msec, end_msec): | 415 def __init__(self, start_msec, end_msec): |
371 self.start_msec = start_msec | 416 self.start_msec = start_msec |
372 self.end_msec = end_msec | 417 self.end_msec = end_msec |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
439 'cat': 'bar,baz,bizbiz', | 484 'cat': 'bar,baz,bizbiz', |
440 'ph': 'X', | 485 'ph': 'X', |
441 'ts': 0, 'dur': 0}) | 486 'ts': 0, 'dur': 0}) |
442 self.assertTrue(event.Matches('bar', 'foo')) | 487 self.assertTrue(event.Matches('bar', 'foo')) |
443 self.assertTrue(event.Matches('baz', 'foo')) | 488 self.assertTrue(event.Matches('baz', 'foo')) |
444 self.assertFalse(event.Matches('bar', 'biz')) | 489 self.assertFalse(event.Matches('bar', 'biz')) |
445 self.assertFalse(event.Matches('biz', 'foo')) | 490 self.assertFalse(event.Matches('biz', 'foo')) |
446 | 491 |
447 if __name__ == '__main__': | 492 if __name__ == '__main__': |
448 unittest.main() | 493 unittest.main() |
OLD | NEW |