Chromium Code Reviews| Index: tools/perf/page_sets/system_health/background_stories.py |
| diff --git a/tools/perf/page_sets/system_health/background_stories.py b/tools/perf/page_sets/system_health/background_stories.py |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..5a850b2ca38328cfe2b497b5b7d02402adb9e451 |
| --- /dev/null |
| +++ b/tools/perf/page_sets/system_health/background_stories.py |
| @@ -0,0 +1,73 @@ |
| +# Copyright 2016 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +from page_sets.system_health import platforms |
| +from page_sets.system_health import system_health_story |
| +from page_sets.system_health.loading_stories import LoadGmailMobileStory |
| + |
| +class _BackgroundStory(system_health_story.SystemHealthStory): |
| + """Abstract base class for background stories |
| + |
| + As in _LoadingStory except it puts the browser into the |
| + background before measuring. |
| + """ |
| + ABSTRACT_STORY = True |
| + SUPPORTED_PLATFORMS = platforms.MOBILE_ONLY |
| + |
| + def _Measure(self, action_runner): |
| + action_runner.tab.browser.Background() |
| + super(_BackgroundStory, self)._Measure(action_runner) |
| + |
| + |
| +class BackgroundGoogleStory(_BackgroundStory): |
| + NAME = 'background:search:google' |
| + URL = 'https://www.google.co.uk/#q=tom+cruise+movies' |
| + |
| + def _DidLoadDocument(self, action_runner): |
| + # Activte the immersive movie browsing experience |
| + action_runner.WaitForJavaScriptCondition( |
| + 'document.querySelector("g-fab") !== null') |
| + action_runner.ExecuteJavaScript( |
| + 'document.querySelector("g-fab").click()') |
|
nednguyen
2016/10/18 15:27:29
ditto
hjd
2016/10/21 16:17:22
Done.
|
| + |
| + |
| +class BackgroundFacebookMobileStory(_BackgroundStory): |
| + NAME = 'background:social:facebook' |
| + URL = 'https://www.facebook.com/rihanna' |
| + SUPPORTED_PLATFORMS = platforms.MOBILE_ONLY |
| + |
| + |
| +class BackgroundNytimesMobileStory(_BackgroundStory): |
| + """The third top website in http://www.alexa.com/topsites/category/News""" |
| + NAME = 'background:news:nytimes' |
| + URL = 'http://www.nytimes.com/2016/10/04/us/politics/vice-presidential-debate.html?_r=0' |
| + SUPPORTED_PLATFORMS = platforms.MOBILE_ONLY |
| + |
| + def _DidLoadDocument(self, action_runner): |
| + action_runner.WaitForJavaScriptCondition( |
| + 'document.querySelector("#additional-content button") !== null') |
| + action_runner.ExecuteJavaScript( |
| + 'document.querySelector("#additional-content button").click()') |
|
nednguyen
2016/10/18 15:27:29
ditto
hjd
2016/10/21 16:17:22
Done.
|
| + |
| + action_runner.WaitForJavaScriptCondition( |
| + 'document.querySelector(".nytd-player-poster") !== null') |
| + action_runner.ScrollPageToElement(selector='.nytd-player-poster') |
| + action_runner.ExecuteJavaScript( |
| + 'document.querySelector(".nytd-player-poster").click();') |
|
nednguyen
2016/10/18 15:27:29
nits: use action_runner.TapElement( 'document.quer
hjd
2016/10/21 16:17:22
Done.
|
| + |
|
nednguyen
2016/10/18 15:27:29
After clicking playing the video, can you add a wa
|
| + |
| +class BackgroundImgurMobileStory(_BackgroundStory): |
| + NAME = 'background:media:imgur' |
| + URL = 'http://imgur.com/gallery/hUita' |
| + SUPPORTED_PLATFORMS = platforms.MOBILE_ONLY |
| + |
| + |
| +class BackgroundGmailMobileStory(LoadGmailMobileStory): |
| + NAME = 'background:tools:gmail' |
| + SUPPORTED_PLATFORMS = platforms.MOBILE_ONLY |
| + |
| + def _Measure(self, action_runner): |
| + action_runner.tab.browser.Background() |
| + super(BackgroundGmailMobileStory, self)._Measure(action_runner) |
| + |