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
3 # found in the LICENSE file.
4 from telemetry
.page
import page
as page_module
5 from telemetry
.page
import page_set
as page_set_module
8 class SimplePage(page_module
.Page
):
10 def __init__(self
, url
, page_set
):
11 super(SimplePage
, self
).__init
__(
14 credentials_path
='data/credentials.json')
15 self
.archive_data_file
= 'data/simple_mobile_sites.json'
17 def RunNavigateSteps(self
, action_runner
):
18 action_runner
.NavigateToPage(self
)
19 # TODO(epenner): Remove this wait (http://crbug.com/366933)
22 class SimpleScrollPage(SimplePage
):
24 def __init__(self
, url
, page_set
):
25 super(SimpleScrollPage
, self
).__init
__(url
=url
, page_set
=page_set
)
27 def RunSmoothness(self
, action_runner
):
28 # Make the scroll longer to reduce noise.
29 interaction
= action_runner
.BeginGestureInteraction(
30 'ScrollAction', is_smooth
=True)
31 action_runner
.ScrollPage(direction
='down', speed_in_pixels_per_second
=300)
34 class SimpleMobileSitesPageSet(page_set_module
.PageSet
):
36 """ Simple mobile sites """
39 super(SimpleMobileSitesPageSet
, self
).__init
__(
40 user_agent_type
='tablet_10_inch',
41 archive_data_file
='data/simple_mobile_sites.json',
42 bucket
=page_set_module
.PUBLIC_BUCKET
)
45 # Why: Scrolls moderately complex pages (up to 60 layers)
46 'http://www.ebay.co.uk/',
47 'https://www.flickr.com/',
48 'http://www.apple.com/mac/',
50 'http://m.nytimes.com/'
53 for url
in scroll_page_list
:
54 self
.AddPage(SimpleScrollPage(url
, self
))