Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: tools/perf/page_sets/polymer.py

Issue 1013803003: [Telemetry] Remove is_smooth flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix failing test Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 page_set as page_set_module 5 from telemetry.page import page_set as page_set_module
6 6
7 class PolymerPage(page_module.Page): 7 class PolymerPage(page_module.Page):
8 8
9 def __init__(self, url, page_set, run_no_page_interactions): 9 def __init__(self, url, page_set, run_no_page_interactions):
10 """ Base class for all polymer pages. 10 """ Base class for all polymer pages.
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 url=('http://www.polymer-project.org/components/paper-calculator/' 47 url=('http://www.polymer-project.org/components/paper-calculator/'
48 'demo.html'), 48 'demo.html'),
49 page_set=page_set, run_no_page_interactions=run_no_page_interactions) 49 page_set=page_set, run_no_page_interactions=run_no_page_interactions)
50 50
51 def PerformPageInteractions(self, action_runner): 51 def PerformPageInteractions(self, action_runner):
52 self.TapButton(action_runner) 52 self.TapButton(action_runner)
53 self.SlidePanel(action_runner) 53 self.SlidePanel(action_runner)
54 54
55 def TapButton(self, action_runner): 55 def TapButton(self, action_runner):
56 interaction = action_runner.BeginInteraction( 56 interaction = action_runner.BeginInteraction(
57 'Action_TapAction', is_smooth=True) 57 'Action_TapAction')
58 action_runner.TapElement(element_function=''' 58 action_runner.TapElement(element_function='''
59 document.querySelector( 59 document.querySelector(
60 'body /deep/ #outerPanels' 60 'body /deep/ #outerPanels'
61 ).querySelector( 61 ).querySelector(
62 '#standard' 62 '#standard'
63 ).shadowRoot.querySelector( 63 ).shadowRoot.querySelector(
64 'paper-calculator-key[label="5"]' 64 'paper-calculator-key[label="5"]'
65 )''') 65 )''')
66 action_runner.Wait(2) 66 action_runner.Wait(2)
67 interaction.End() 67 interaction.End()
68 68
69 def SlidePanel(self, action_runner): 69 def SlidePanel(self, action_runner):
70 # only bother with this interaction if the drawer is hidden 70 # only bother with this interaction if the drawer is hidden
71 opened = action_runner.EvaluateJavaScript(''' 71 opened = action_runner.EvaluateJavaScript('''
72 (function() { 72 (function() {
73 var outer = document.querySelector("body /deep/ #outerPanels"); 73 var outer = document.querySelector("body /deep/ #outerPanels");
74 return outer.opened || outer.wideMode; 74 return outer.opened || outer.wideMode;
75 }());''') 75 }());''')
76 if not opened: 76 if not opened:
77 interaction = action_runner.BeginInteraction( 77 interaction = action_runner.BeginInteraction(
78 'Action_SwipeAction', is_smooth=True) 78 'Action_SwipeAction')
79 action_runner.SwipeElement( 79 action_runner.SwipeElement(
80 left_start_ratio=0.1, top_start_ratio=0.2, 80 left_start_ratio=0.1, top_start_ratio=0.2,
81 direction='left', distance=300, speed_in_pixels_per_second=5000, 81 direction='left', distance=300, speed_in_pixels_per_second=5000,
82 element_function=''' 82 element_function='''
83 document.querySelector( 83 document.querySelector(
84 'body /deep/ #outerPanels' 84 'body /deep/ #outerPanels'
85 ).querySelector( 85 ).querySelector(
86 '#advanced' 86 '#advanced'
87 ).shadowRoot.querySelector( 87 ).shadowRoot.querySelector(
88 '.handle-bar' 88 '.handle-bar'
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
151 def PerformPageInteractions(self, action_runner): 151 def PerformPageInteractions(self, action_runner):
152 #TODO(wiltzius) Add interactions for input elements and shadow pages 152 #TODO(wiltzius) Add interactions for input elements and shadow pages
153 if self.scrolling_page: 153 if self.scrolling_page:
154 # Only bother scrolling the page if its been marked as worthwhile 154 # Only bother scrolling the page if its been marked as worthwhile
155 self.ScrollContentPane(action_runner) 155 self.ScrollContentPane(action_runner)
156 self.TouchEverything(action_runner) 156 self.TouchEverything(action_runner)
157 157
158 def ScrollContentPane(self, action_runner): 158 def ScrollContentPane(self, action_runner):
159 element_function = (self.iframe_js + '.querySelector(' 159 element_function = (self.iframe_js + '.querySelector('
160 '"core-scroll-header-panel").$.mainContainer') 160 '"core-scroll-header-panel").$.mainContainer')
161 interaction = action_runner.BeginInteraction('Scroll_Page', is_smooth=True) 161 interaction = action_runner.BeginInteraction('Scroll_Page')
162 action_runner.ScrollElement(use_touch=True, 162 action_runner.ScrollElement(use_touch=True,
163 direction='down', 163 direction='down',
164 distance='900', 164 distance='900',
165 element_function=element_function) 165 element_function=element_function)
166 interaction.End() 166 interaction.End()
167 interaction = action_runner.BeginInteraction('Scroll_Page', is_smooth=True) 167 interaction = action_runner.BeginInteraction('Scroll_Page')
168 action_runner.ScrollElement(use_touch=True, 168 action_runner.ScrollElement(use_touch=True,
169 direction='up', 169 direction='up',
170 distance='900', 170 distance='900',
171 element_function=element_function) 171 element_function=element_function)
172 interaction.End() 172 interaction.End()
173 173
174 def TouchEverything(self, action_runner): 174 def TouchEverything(self, action_runner):
175 tappable_types = [ 175 tappable_types = [
176 'paper-button', 176 'paper-button',
177 'paper-checkbox', 177 'paper-checkbox',
(...skipping 22 matching lines...) Expand all
200 element_query = element_list_query + ("[%d]" % i) 200 element_query = element_list_query + ("[%d]" % i)
201 if action_runner.EvaluateJavaScript( 201 if action_runner.EvaluateJavaScript(
202 element_query + '.offsetParent != null'): 202 element_query + '.offsetParent != null'):
203 # Only try to tap on visible elements (offsetParent != null) 203 # Only try to tap on visible elements (offsetParent != null)
204 action_runner.ExecuteJavaScript(element_query + '.scrollIntoView()') 204 action_runner.ExecuteJavaScript(element_query + '.scrollIntoView()')
205 action_runner.Wait(1) # wait for page to settle after scrolling 205 action_runner.Wait(1) # wait for page to settle after scrolling
206 action_function(action_runner, element_query) 206 action_function(action_runner, element_query)
207 207
208 def TapWidget(self, action_runner, element_function): 208 def TapWidget(self, action_runner, element_function):
209 interaction = action_runner.BeginInteraction( 209 interaction = action_runner.BeginInteraction(
210 'Tap_Widget', is_smooth=True) 210 'Tap_Widget')
211 action_runner.TapElement(element_function=element_function) 211 action_runner.TapElement(element_function=element_function)
212 action_runner.Wait(1) # wait for e.g. animations on the widget 212 action_runner.Wait(1) # wait for e.g. animations on the widget
213 interaction.End() 213 interaction.End()
214 214
215 def SwipeWidget(self, action_runner, element_function): 215 def SwipeWidget(self, action_runner, element_function):
216 interaction = action_runner.BeginInteraction( 216 interaction = action_runner.BeginInteraction(
217 'Swipe_Widget', is_smooth=True) 217 'Swipe_Widget')
218 action_runner.SwipeElement(element_function=element_function, 218 action_runner.SwipeElement(element_function=element_function,
219 left_start_ratio=0.75, 219 left_start_ratio=0.75,
220 speed_in_pixels_per_second=300) 220 speed_in_pixels_per_second=300)
221 interaction.End() 221 interaction.End()
222 222
223 223
224 class PolymerPageSet(page_set_module.PageSet): 224 class PolymerPageSet(page_set_module.PageSet):
225 225
226 def __init__(self, run_no_page_interactions=False): 226 def __init__(self, run_no_page_interactions=False):
227 super(PolymerPageSet, self).__init__( 227 super(PolymerPageSet, self).__init__(
(...skipping 29 matching lines...) Expand all
257 for p in SCROLLABLE_PAGES: 257 for p in SCROLLABLE_PAGES:
258 self.AddUserStory(PolymerSampler( 258 self.AddUserStory(PolymerSampler(
259 self, p, run_no_page_interactions=run_no_page_interactions, 259 self, p, run_no_page_interactions=run_no_page_interactions,
260 scrolling_page=True)) 260 scrolling_page=True))
261 261
262 for page in self: 262 for page in self:
263 assert (page.__class__.RunPageInteractions == 263 assert (page.__class__.RunPageInteractions ==
264 PolymerPage.RunPageInteractions), ( 264 PolymerPage.RunPageInteractions), (
265 'Pages in this page set must not override PolymerPage\' ' 265 'Pages in this page set must not override PolymerPage\' '
266 'RunPageInteractions method.') 266 'RunPageInteractions method.')
OLDNEW
« no previous file with comments | « tools/perf/page_sets/pathological_mobile_sites.py ('k') | tools/perf/page_sets/simple_mobile_sites.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698