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 ToughFastScrollingCasesPage(page_module
.Page
):
10 def __init__(self
, url
, name
, speed_in_pixels_per_second
, page_set
):
11 super(ToughFastScrollingCasesPage
, self
).__init
__(
15 self
.speed_in_pixels_per_second
= speed_in_pixels_per_second
17 def RunPageInteractions(self
, action_runner
):
18 with action_runner
.CreateGestureInteraction('ScrollAction'):
19 action_runner
.ScrollPage(
21 speed_in_pixels_per_second
=self
.speed_in_pixels_per_second
)
23 class ToughScrollingCasesPageSet(page_set_module
.PageSet
):
26 Description: A collection of difficult scrolling tests
30 super(ToughScrollingCasesPageSet
, self
).__init
__()
32 fast_scrolling_page_name_list
= [
37 fast_scrolling_speed_list
= [
38 5000, 10000, 15000, 20000, 30000, 40000, 50000, 60000, 75000, 90000
41 for name
in fast_scrolling_page_name_list
:
42 for speed
in fast_scrolling_speed_list
:
43 self
.AddUserStory(ToughFastScrollingCasesPage(
44 'file://tough_scrolling_cases/' + name
+ '.html',
45 name
+ '_' + str(speed
).zfill(5) + '_pixels_per_second',