OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 from telemetry.page import page as page_module | 4 from telemetry.page import page as page_module |
5 from telemetry.page import shared_page_state | 5 from telemetry.page import shared_page_state |
6 from telemetry import story | 6 from telemetry import story |
7 | 7 |
8 | 8 |
9 class KeySilkCasesPage(page_module.Page): | 9 class KeySilkCasesPage(page_module.Page): |
10 | 10 |
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
357 def __init__(self, page_set, run_no_page_interactions): | 357 def __init__(self, page_set, run_no_page_interactions): |
358 super(Page19, self).__init__( | 358 super(Page19, self).__init__( |
359 url='file://key_silk_cases/inbox_app.html?slide_drawer', | 359 url='file://key_silk_cases/inbox_app.html?slide_drawer', |
360 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 360 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
361 | 361 |
362 def ToggleDrawer(self, action_runner): | 362 def ToggleDrawer(self, action_runner): |
363 with action_runner.CreateGestureInteraction('TapAction'): | 363 with action_runner.CreateGestureInteraction('TapAction'): |
364 action_runner.TapElement('#menu-button') | 364 action_runner.TapElement('#menu-button') |
365 | 365 |
366 with action_runner.CreateInteraction('Wait'): | 366 with action_runner.CreateInteraction('Wait'): |
367 action_runner.WaitForJavaScriptCondition2(''' | 367 action_runner.WaitForJavaScriptCondition(''' |
368 document.getElementById("nav-drawer").active && | 368 document.getElementById("nav-drawer").active && |
369 document.getElementById("nav-drawer").children[0] | 369 document.getElementById("nav-drawer").children[0] |
370 .getBoundingClientRect().left == 0''') | 370 .getBoundingClientRect().left == 0''') |
371 | 371 |
372 def RunNavigateSteps(self, action_runner): | 372 def RunNavigateSteps(self, action_runner): |
373 super(Page19, self).RunNavigateSteps(action_runner) | 373 super(Page19, self).RunNavigateSteps(action_runner) |
374 action_runner.Wait(2) | 374 action_runner.Wait(2) |
375 self.ToggleDrawer(action_runner) | 375 self.ToggleDrawer(action_runner) |
376 | 376 |
377 def PerformPageInteractions(self, action_runner): | 377 def PerformPageInteractions(self, action_runner): |
378 self.SlideDrawer(action_runner) | 378 self.SlideDrawer(action_runner) |
379 | 379 |
380 def SlideDrawer(self, action_runner): | 380 def SlideDrawer(self, action_runner): |
381 with action_runner.CreateInteraction('Action_SwipeAction'): | 381 with action_runner.CreateInteraction('Action_SwipeAction'): |
382 action_runner.SwipeElement( | 382 action_runner.SwipeElement( |
383 left_start_ratio=0.8, top_start_ratio=0.2, | 383 left_start_ratio=0.8, top_start_ratio=0.2, |
384 direction='left', distance=200, | 384 direction='left', distance=200, |
385 element_function='document.getElementById("nav-drawer").children[0]') | 385 element_function='document.getElementById("nav-drawer").children[0]') |
386 action_runner.WaitForJavaScriptCondition2( | 386 action_runner.WaitForJavaScriptCondition( |
387 '!document.getElementById("nav-drawer").active') | 387 '!document.getElementById("nav-drawer").active') |
388 | 388 |
389 | 389 |
390 class Page20(KeySilkCasesPage): | 390 class Page20(KeySilkCasesPage): |
391 | 391 |
392 """ Why: Shadow DOM infinite scrolling. """ | 392 """ Why: Shadow DOM infinite scrolling. """ |
393 | 393 |
394 def __init__(self, page_set, run_no_page_interactions): | 394 def __init__(self, page_set, run_no_page_interactions): |
395 super(Page20, self).__init__( | 395 super(Page20, self).__init__( |
396 url='file://key_silk_cases/infinite_scrolling.html', | 396 url='file://key_silk_cases/infinite_scrolling.html', |
(...skipping 14 matching lines...) Expand all Loading... |
411 | 411 |
412 def ExpandKnowledgeCard(self, action_runner): | 412 def ExpandKnowledgeCard(self, action_runner): |
413 # expand card | 413 # expand card |
414 with action_runner.CreateInteraction('Action_TapAction'): | 414 with action_runner.CreateInteraction('Action_TapAction'): |
415 action_runner.TapElement( | 415 action_runner.TapElement( |
416 element_function='document.getElementsByClassName("vk_arc")[0]') | 416 element_function='document.getElementsByClassName("vk_arc")[0]') |
417 action_runner.Wait(2) | 417 action_runner.Wait(2) |
418 | 418 |
419 def ScrollKnowledgeCardToTop(self, action_runner, card_id): | 419 def ScrollKnowledgeCardToTop(self, action_runner, card_id): |
420 # scroll until the knowledge card is at the top | 420 # scroll until the knowledge card is at the top |
421 action_runner.ExecuteJavaScript2( | 421 action_runner.ExecuteJavaScript( |
422 "document.getElementById({{ card_id }}).scrollIntoView()", | 422 "document.getElementById({{ card_id }}).scrollIntoView()", |
423 card_id=card_id) | 423 card_id=card_id) |
424 | 424 |
425 def PerformPageInteractions(self, action_runner): | 425 def PerformPageInteractions(self, action_runner): |
426 self.ExpandKnowledgeCard(action_runner) | 426 self.ExpandKnowledgeCard(action_runner) |
427 | 427 |
428 | 428 |
429 class GwsGoogleExpansion(GwsExpansionPage): | 429 class GwsGoogleExpansion(GwsExpansionPage): |
430 | 430 |
431 """ Why: Animating height of a complex content card is common. """ | 431 """ Why: Animating height of a complex content card is common. """ |
(...skipping 26 matching lines...) Expand all Loading... |
458 | 458 |
459 def __init__(self, page_set, run_no_page_interactions): | 459 def __init__(self, page_set, run_no_page_interactions): |
460 super(Page22, self).__init__( | 460 super(Page22, self).__init__( |
461 url='http://plus.google.com/app/basic/stream', | 461 url='http://plus.google.com/app/basic/stream', |
462 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 462 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
463 | 463 |
464 self.credentials = 'google' | 464 self.credentials = 'google' |
465 | 465 |
466 def RunNavigateSteps(self, action_runner): | 466 def RunNavigateSteps(self, action_runner): |
467 super(Page22, self).RunNavigateSteps(action_runner) | 467 super(Page22, self).RunNavigateSteps(action_runner) |
468 action_runner.WaitForJavaScriptCondition2( | 468 action_runner.WaitForJavaScriptCondition( |
469 'document.getElementsByClassName("fHa").length > 0') | 469 'document.getElementsByClassName("fHa").length > 0') |
470 action_runner.Wait(2) | 470 action_runner.Wait(2) |
471 | 471 |
472 def PerformPageInteractions(self, action_runner): | 472 def PerformPageInteractions(self, action_runner): |
473 with action_runner.CreateGestureInteraction('ScrollAction'): | 473 with action_runner.CreateGestureInteraction('ScrollAction'): |
474 action_runner.ScrollElement(selector='#mainContent') | 474 action_runner.ScrollElement(selector='#mainContent') |
475 | 475 |
476 | 476 |
477 class Page23(KeySilkCasesPage): | 477 class Page23(KeySilkCasesPage): |
478 | 478 |
(...skipping 25 matching lines...) Expand all Loading... |
504 Why: Google News: this iOS version is slower than accelerated scrolling | 504 Why: Google News: this iOS version is slower than accelerated scrolling |
505 """ | 505 """ |
506 | 506 |
507 def __init__(self, page_set, run_no_page_interactions): | 507 def __init__(self, page_set, run_no_page_interactions): |
508 super(Page24, self).__init__( | 508 super(Page24, self).__init__( |
509 url='http://mobile-news.sandbox.google.com/news/pt0?scroll', | 509 url='http://mobile-news.sandbox.google.com/news/pt0?scroll', |
510 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 510 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
511 | 511 |
512 def RunNavigateSteps(self, action_runner): | 512 def RunNavigateSteps(self, action_runner): |
513 super(Page24, self).RunNavigateSteps(action_runner) | 513 super(Page24, self).RunNavigateSteps(action_runner) |
514 action_runner.WaitForJavaScriptCondition2( | 514 action_runner.WaitForJavaScriptCondition( |
515 'document.getElementById(":h") != null') | 515 'document.getElementById(":h") != null') |
516 action_runner.Wait(1) | 516 action_runner.Wait(1) |
517 | 517 |
518 def PerformPageInteractions(self, action_runner): | 518 def PerformPageInteractions(self, action_runner): |
519 with action_runner.CreateGestureInteraction('ScrollAction'): | 519 with action_runner.CreateGestureInteraction('ScrollAction'): |
520 action_runner.ScrollElement( | 520 action_runner.ScrollElement( |
521 element_function='document.getElementById(":5")', | 521 element_function='document.getElementById(":5")', |
522 distance=2500, | 522 distance=2500, |
523 use_touch=True) | 523 use_touch=True) |
524 | 524 |
525 | 525 |
526 class Page25(KeySilkCasesPage): | 526 class Page25(KeySilkCasesPage): |
527 | 527 |
528 def __init__(self, page_set, run_no_page_interactions): | 528 def __init__(self, page_set, run_no_page_interactions): |
529 super(Page25, self).__init__( | 529 super(Page25, self).__init__( |
530 url='http://mobile-news.sandbox.google.com/news/pt0?swipe', | 530 url='http://mobile-news.sandbox.google.com/news/pt0?swipe', |
531 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 531 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
532 | 532 |
533 def RunNavigateSteps(self, action_runner): | 533 def RunNavigateSteps(self, action_runner): |
534 super(Page25, self).RunNavigateSteps(action_runner) | 534 super(Page25, self).RunNavigateSteps(action_runner) |
535 action_runner.WaitForJavaScriptCondition2( | 535 action_runner.WaitForJavaScriptCondition( |
536 'document.getElementById(":h") != null') | 536 'document.getElementById(":h") != null') |
537 action_runner.Wait(1) | 537 action_runner.Wait(1) |
538 | 538 |
539 def PerformPageInteractions(self, action_runner): | 539 def PerformPageInteractions(self, action_runner): |
540 with action_runner.CreateGestureInteraction('SwipeAction', repeatable=True): | 540 with action_runner.CreateGestureInteraction('SwipeAction', repeatable=True): |
541 action_runner.SwipeElement( | 541 action_runner.SwipeElement( |
542 direction='left', distance=100, | 542 direction='left', distance=100, |
543 element_function='document.getElementById(":f")') | 543 element_function='document.getElementById(":f")') |
544 with action_runner.CreateGestureInteraction('SwipeAction', repeatable=True): | 544 with action_runner.CreateGestureInteraction('SwipeAction', repeatable=True): |
545 action_runner.Wait(1) | 545 action_runner.Wait(1) |
546 | 546 |
547 | 547 |
548 class Page26(KeySilkCasesPage): | 548 class Page26(KeySilkCasesPage): |
549 | 549 |
550 """ Why: famo.us twitter demo """ | 550 """ Why: famo.us twitter demo """ |
551 | 551 |
552 def __init__(self, page_set, run_no_page_interactions): | 552 def __init__(self, page_set, run_no_page_interactions): |
553 super(Page26, self).__init__( | 553 super(Page26, self).__init__( |
554 url='http://s.codepen.io/befamous/fullpage/pFsqb?scroll', | 554 url='http://s.codepen.io/befamous/fullpage/pFsqb?scroll', |
555 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 555 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
556 | 556 |
557 def RunNavigateSteps(self, action_runner): | 557 def RunNavigateSteps(self, action_runner): |
558 super(Page26, self).RunNavigateSteps(action_runner) | 558 super(Page26, self).RunNavigateSteps(action_runner) |
559 action_runner.WaitForJavaScriptCondition2( | 559 action_runner.WaitForJavaScriptCondition( |
560 'document.getElementsByClassName("tweet").length > 0') | 560 'document.getElementsByClassName("tweet").length > 0') |
561 action_runner.Wait(1) | 561 action_runner.Wait(1) |
562 | 562 |
563 def PerformPageInteractions(self, action_runner): | 563 def PerformPageInteractions(self, action_runner): |
564 # Add a touch-action: none because this page prevent defaults all | 564 # Add a touch-action: none because this page prevent defaults all |
565 # touch moves. | 565 # touch moves. |
566 action_runner.ExecuteJavaScript2(''' | 566 action_runner.ExecuteJavaScript(''' |
567 var style = document.createElement("style"); | 567 var style = document.createElement("style"); |
568 document.head.appendChild(style); | 568 document.head.appendChild(style); |
569 style.sheet.insertRule("body { touch-action: none }", 0); | 569 style.sheet.insertRule("body { touch-action: none }", 0); |
570 ''') | 570 ''') |
571 with action_runner.CreateGestureInteraction('ScrollAction'): | 571 with action_runner.CreateGestureInteraction('ScrollAction'): |
572 action_runner.ScrollPage(distance=5000) | 572 action_runner.ScrollPage(distance=5000) |
573 | 573 |
574 | 574 |
575 class SVGIconRaster(KeySilkCasesPage): | 575 class SVGIconRaster(KeySilkCasesPage): |
576 | 576 |
577 """ Why: Mutating SVG icons; these paint storm and paint slowly. """ | 577 """ Why: Mutating SVG icons; these paint storm and paint slowly. """ |
578 | 578 |
579 def __init__(self, page_set, run_no_page_interactions): | 579 def __init__(self, page_set, run_no_page_interactions): |
580 super(SVGIconRaster, self).__init__( | 580 super(SVGIconRaster, self).__init__( |
581 url='http://wiltzius.github.io/shape-shifter/', | 581 url='http://wiltzius.github.io/shape-shifter/', |
582 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 582 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
583 | 583 |
584 def RunNavigateSteps(self, action_runner): | 584 def RunNavigateSteps(self, action_runner): |
585 super(SVGIconRaster, self).RunNavigateSteps(action_runner) | 585 super(SVGIconRaster, self).RunNavigateSteps(action_runner) |
586 action_runner.WaitForJavaScriptCondition2( | 586 action_runner.WaitForJavaScriptCondition( |
587 'loaded = true') | 587 'loaded = true') |
588 action_runner.Wait(1) | 588 action_runner.Wait(1) |
589 | 589 |
590 def PerformPageInteractions(self, action_runner): | 590 def PerformPageInteractions(self, action_runner): |
591 for i in xrange(9): | 591 for i in xrange(9): |
592 button_func = ('document.getElementById("demo").$.' | 592 button_func = ('document.getElementById("demo").$.' |
593 'buttons.children[%d]') % i | 593 'buttons.children[%d]') % i |
594 with action_runner.CreateInteraction('Action_TapAction', repeatable=True): | 594 with action_runner.CreateInteraction('Action_TapAction', repeatable=True): |
595 action_runner.TapElement(element_function=button_func) | 595 action_runner.TapElement(element_function=button_func) |
596 action_runner.Wait(1) | 596 action_runner.Wait(1) |
597 | 597 |
598 | 598 |
599 class UpdateHistoryState(KeySilkCasesPage): | 599 class UpdateHistoryState(KeySilkCasesPage): |
600 | 600 |
601 """ Why: Modern apps often update history state, which currently is janky.""" | 601 """ Why: Modern apps often update history state, which currently is janky.""" |
602 | 602 |
603 def __init__(self, page_set, run_no_page_interactions): | 603 def __init__(self, page_set, run_no_page_interactions): |
604 super(UpdateHistoryState, self).__init__( | 604 super(UpdateHistoryState, self).__init__( |
605 url='file://key_silk_cases/pushState.html', | 605 url='file://key_silk_cases/pushState.html', |
606 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 606 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
607 | 607 |
608 def RunNavigateSteps(self, action_runner): | 608 def RunNavigateSteps(self, action_runner): |
609 super(UpdateHistoryState, self).RunNavigateSteps(action_runner) | 609 super(UpdateHistoryState, self).RunNavigateSteps(action_runner) |
610 action_runner.ExecuteJavaScript2(''' | 610 action_runner.ExecuteJavaScript(''' |
611 window.requestAnimationFrame(function() { | 611 window.requestAnimationFrame(function() { |
612 window.__history_state_loaded = true; | 612 window.__history_state_loaded = true; |
613 }); | 613 }); |
614 ''') | 614 ''') |
615 action_runner.WaitForJavaScriptCondition2( | 615 action_runner.WaitForJavaScriptCondition( |
616 'window.__history_state_loaded == true;') | 616 'window.__history_state_loaded == true;') |
617 | 617 |
618 def PerformPageInteractions(self, action_runner): | 618 def PerformPageInteractions(self, action_runner): |
619 with action_runner.CreateInteraction('animation_interaction'): | 619 with action_runner.CreateInteraction('animation_interaction'): |
620 action_runner.Wait(5) # JS runs the animation continuously on the page | 620 action_runner.Wait(5) # JS runs the animation continuously on the page |
621 | 621 |
622 | 622 |
623 class SilkFinance(KeySilkCasesPage): | 623 class SilkFinance(KeySilkCasesPage): |
624 | 624 |
625 """ Why: Some effects repaint the page, possibly including plenty of text. """ | 625 """ Why: Some effects repaint the page, possibly including plenty of text. """ |
(...skipping 15 matching lines...) Expand all Loading... |
641 def __init__(self, page_set, run_no_page_interactions): | 641 def __init__(self, page_set, run_no_page_interactions): |
642 super(PolymerTopeka, self).__init__( | 642 super(PolymerTopeka, self).__init__( |
643 url='https://polymer-topeka.appspot.com/', | 643 url='https://polymer-topeka.appspot.com/', |
644 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 644 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
645 | 645 |
646 def PerformPageInteractions(self, action_runner): | 646 def PerformPageInteractions(self, action_runner): |
647 profile = 'html /deep/ topeka-profile /deep/ ' | 647 profile = 'html /deep/ topeka-profile /deep/ ' |
648 first_name = profile + 'paper-input#first /deep/ input' | 648 first_name = profile + 'paper-input#first /deep/ input' |
649 action_runner.WaitForElement(selector=first_name) | 649 action_runner.WaitForElement(selector=first_name) |
650 # Input First Name: | 650 # Input First Name: |
651 action_runner.ExecuteJavaScript2(''' | 651 action_runner.ExecuteJavaScript(''' |
652 var fn = document.querySelector({{ first_name }}); | 652 var fn = document.querySelector({{ first_name }}); |
653 fn.value = 'Chrome'; | 653 fn.value = 'Chrome'; |
654 fn.fire('input');''', | 654 fn.fire('input');''', |
655 first_name=first_name) | 655 first_name=first_name) |
656 # Input Last Initial: | 656 # Input Last Initial: |
657 action_runner.ExecuteJavaScript2(''' | 657 action_runner.ExecuteJavaScript(''' |
658 var li = document.querySelector({{ selector }}); | 658 var li = document.querySelector({{ selector }}); |
659 li.value = 'E'; | 659 li.value = 'E'; |
660 li.fire('input');''', | 660 li.fire('input');''', |
661 selector='%s paper-input#last /deep/ input' % profile) | 661 selector='%s paper-input#last /deep/ input' % profile) |
662 with action_runner.CreateInteraction('animation_interaction'): | 662 with action_runner.CreateInteraction('animation_interaction'): |
663 # Click the check-mark to login: | 663 # Click the check-mark to login: |
664 action_runner.ExecuteJavaScript2(''' | 664 action_runner.ExecuteJavaScript(''' |
665 window.topeka_page_transitions = 0; | 665 window.topeka_page_transitions = 0; |
666 [].forEach.call(document.querySelectorAll( | 666 [].forEach.call(document.querySelectorAll( |
667 'html /deep/ core-animated-pages'), function(p){ | 667 'html /deep/ core-animated-pages'), function(p){ |
668 p.addEventListener( | 668 p.addEventListener( |
669 'core-animated-pages-transition-end', function(e) { | 669 'core-animated-pages-transition-end', function(e) { |
670 window.topeka_page_transitions++; | 670 window.topeka_page_transitions++; |
671 }); | 671 }); |
672 }); | 672 }); |
673 document.querySelector({{ selector }}).fire('tap')''', | 673 document.querySelector({{ selector }}).fire('tap')''', |
674 selector='%s paper-fab' % profile) | 674 selector='%s paper-fab' % profile) |
675 # Wait for category list to animate in: | 675 # Wait for category list to animate in: |
676 action_runner.WaitForJavaScriptCondition2(''' | 676 action_runner.WaitForJavaScriptCondition(''' |
677 window.topeka_page_transitions === 1''') | 677 window.topeka_page_transitions === 1''') |
678 # Click a category to start a quiz: | 678 # Click a category to start a quiz: |
679 action_runner.ExecuteJavaScript2(''' | 679 action_runner.ExecuteJavaScript(''' |
680 document.querySelector('\ | 680 document.querySelector('\ |
681 html /deep/ core-selector.category-list').fire( | 681 html /deep/ core-selector.category-list').fire( |
682 'tap',1,document.querySelector('html /deep/ \ | 682 'tap',1,document.querySelector('html /deep/ \ |
683 div.category-item.red-theme'));''') | 683 div.category-item.red-theme'));''') |
684 # Wait for the category splash to animate in: | 684 # Wait for the category splash to animate in: |
685 action_runner.WaitForJavaScriptCondition2(''' | 685 action_runner.WaitForJavaScriptCondition(''' |
686 window.topeka_page_transitions === 2''') | 686 window.topeka_page_transitions === 2''') |
687 # Click to start the quiz: | 687 # Click to start the quiz: |
688 action_runner.ExecuteJavaScript2(''' | 688 action_runner.ExecuteJavaScript(''' |
689 document.querySelector('html /deep/ topeka-category-front-page /deep/\ | 689 document.querySelector('html /deep/ topeka-category-front-page /deep/\ |
690 paper-fab').fire('tap');''') | 690 paper-fab').fire('tap');''') |
691 action_runner.WaitForJavaScriptCondition2(''' | 691 action_runner.WaitForJavaScriptCondition(''' |
692 window.topeka_page_transitions === 4''') | 692 window.topeka_page_transitions === 4''') |
693 # Input a mostly correct answer: | 693 # Input a mostly correct answer: |
694 action_runner.ExecuteJavaScript2(''' | 694 action_runner.ExecuteJavaScript(''' |
695 document.querySelector('html /deep/ topeka-quiz-fill-blank /deep/\ | 695 document.querySelector('html /deep/ topeka-quiz-fill-blank /deep/\ |
696 input').value = 'arkinsaw'; | 696 input').value = 'arkinsaw'; |
697 document.querySelector('html /deep/ topeka-quiz-fill-blank /deep/\ | 697 document.querySelector('html /deep/ topeka-quiz-fill-blank /deep/\ |
698 input').fire('input'); | 698 input').fire('input'); |
699 document.querySelector('html /deep/ topeka-quizzes /deep/ \ | 699 document.querySelector('html /deep/ topeka-quizzes /deep/ \ |
700 paper-fab').fire('tap');''') | 700 paper-fab').fire('tap');''') |
701 action_runner.WaitForJavaScriptCondition2(''' | 701 action_runner.WaitForJavaScriptCondition(''' |
702 window.topeka_page_transitions === 6''') | 702 window.topeka_page_transitions === 6''') |
703 | 703 |
704 class Masonry(KeySilkCasesPage): | 704 class Masonry(KeySilkCasesPage): |
705 | 705 |
706 """ Why: Popular layout hack. """ | 706 """ Why: Popular layout hack. """ |
707 | 707 |
708 def __init__(self, page_set, run_no_page_interactions): | 708 def __init__(self, page_set, run_no_page_interactions): |
709 super(Masonry, self).__init__( | 709 super(Masonry, self).__init__( |
710 url='file://key_silk_cases/masonry.html', | 710 url='file://key_silk_cases/masonry.html', |
711 page_set=page_set, run_no_page_interactions=run_no_page_interactions) | 711 page_set=page_set, run_no_page_interactions=run_no_page_interactions) |
712 | 712 |
713 def PerformPageInteractions(self, action_runner): | 713 def PerformPageInteractions(self, action_runner): |
714 with action_runner.CreateInteraction('animation_interaction'): | 714 with action_runner.CreateInteraction('animation_interaction'): |
715 action_runner.ExecuteJavaScript2('window.brick()') | 715 action_runner.ExecuteJavaScript('window.brick()') |
716 action_runner.WaitForJavaScriptCondition2('window.done') | 716 action_runner.WaitForJavaScriptCondition('window.done') |
717 | 717 |
718 | 718 |
719 class KeySilkCasesPageSet(story.StorySet): | 719 class KeySilkCasesPageSet(story.StorySet): |
720 | 720 |
721 """ Pages hand-picked for project Silk. """ | 721 """ Pages hand-picked for project Silk. """ |
722 | 722 |
723 def __init__(self, run_no_page_interactions=False): | 723 def __init__(self, run_no_page_interactions=False): |
724 super(KeySilkCasesPageSet, self).__init__( | 724 super(KeySilkCasesPageSet, self).__init__( |
725 archive_data_file='data/key_silk_cases.json', | 725 archive_data_file='data/key_silk_cases.json', |
726 cloud_storage_bucket=story.PARTNER_BUCKET) | 726 cloud_storage_bucket=story.PARTNER_BUCKET) |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
759 self.AddStory(SilkFinance(self, run_no_page_interactions)) | 759 self.AddStory(SilkFinance(self, run_no_page_interactions)) |
760 # Flaky interaction steps on Android; crbug.com/507865 | 760 # Flaky interaction steps on Android; crbug.com/507865 |
761 # self.AddStory(PolymerTopeka(self, run_no_page_interactions)) | 761 # self.AddStory(PolymerTopeka(self, run_no_page_interactions)) |
762 self.AddStory(Masonry(self, run_no_page_interactions)) | 762 self.AddStory(Masonry(self, run_no_page_interactions)) |
763 | 763 |
764 for page in self: | 764 for page in self: |
765 assert (page.__class__.RunPageInteractions == | 765 assert (page.__class__.RunPageInteractions == |
766 KeySilkCasesPage.RunPageInteractions), ( | 766 KeySilkCasesPage.RunPageInteractions), ( |
767 'Pages in this page set must not override KeySilkCasesPage\' ' | 767 'Pages in this page set must not override KeySilkCasesPage\' ' |
768 'RunPageInteractions method.') | 768 'RunPageInteractions method.') |
OLD | NEW |