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

Side by Side Diff: tools/telemetry/telemetry/page/actions/wait.py

Issue 29423005: telemetry: Add GetRendererProcessFromTab to timeline model. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update unit test. Created 7 years, 1 month 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
« no previous file with comments | « tools/telemetry/telemetry/page/actions/scroll.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 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 4
5 import re 5 import re
6 import time 6 import time
7 7
8 from telemetry.core import util 8 from telemetry.core import util
9 from telemetry.page.actions import page_action 9 from telemetry.page.actions import page_action
10 10
11 class WaitAction(page_action.PageAction): 11 class WaitAction(page_action.PageAction):
12 def __init__(self, attributes=None): 12 def __init__(self, attributes=None):
13 self.timeout = 60 13 self.timeout = 60
14 super(WaitAction, self).__init__(attributes) 14 super(WaitAction, self).__init__(attributes)
15 15
16 def RunsPreviousAction(self): 16 def RunsPreviousAction(self):
17 return (getattr(self, 'condition', None) == 'navigate' or 17 return (getattr(self, 'condition', None) == 'navigate' or
18 getattr(self, 'condition', None) == 'href_change') 18 getattr(self, 'condition', None) == 'href_change')
19 19
20 def RunAction(self, page, tab, previous_action): 20 def RunAction(self, page, tab, previous_action):
21 tab.ExecuteJavaScript( 21 tab.ExecuteJavaScript(
22 'console.time("' + self.GetTimelineMarkerLabel() + '")') 22 'console.time("' + self.GetTimelineMarkerName() + '")')
23 23
24 if hasattr(self, 'seconds'): 24 if hasattr(self, 'seconds'):
25 time.sleep(self.seconds) 25 time.sleep(self.seconds)
26 26
27 elif getattr(self, 'condition', None) == 'navigate': 27 elif getattr(self, 'condition', None) == 'navigate':
28 if not previous_action: 28 if not previous_action:
29 raise page_action.PageActionFailed('You need to perform an action ' 29 raise page_action.PageActionFailed('You need to perform an action '
30 'before waiting for navigate.') 30 'before waiting for navigate.')
31 previous_action.WillRunAction(page, tab) 31 previous_action.WillRunAction(page, tab)
32 action_to_perform = lambda: previous_action.RunAction(page, tab, None) 32 action_to_perform = lambda: previous_action.RunAction(page, tab, None)
(...skipping 29 matching lines...) Expand all
62 tab.WaitForJavaScriptExpression('%s != null' % code, self.timeout) 62 tab.WaitForJavaScriptExpression('%s != null' % code, self.timeout)
63 else: 63 else:
64 raise page_action.PageActionFailed( 64 raise page_action.PageActionFailed(
65 'No element condition given to wait') 65 'No element condition given to wait')
66 elif hasattr(self, 'javascript'): 66 elif hasattr(self, 'javascript'):
67 tab.WaitForJavaScriptExpression(self.javascript, self.timeout) 67 tab.WaitForJavaScriptExpression(self.javascript, self.timeout)
68 else: 68 else:
69 raise page_action.PageActionFailed('No wait condition found') 69 raise page_action.PageActionFailed('No wait condition found')
70 70
71 tab.ExecuteJavaScript( 71 tab.ExecuteJavaScript(
72 'console.timeEnd("' + self.GetTimelineMarkerLabel() + '")') 72 'console.timeEnd("' + self.GetTimelineMarkerName() + '")')
73 73
74 def GetTimelineMarkerLabel(self): 74 def GetTimelineMarkerName(self):
75 return 'WaitAction::RunAction' 75 return 'WaitAction::RunAction'
OLDNEW
« no previous file with comments | « tools/telemetry/telemetry/page/actions/scroll.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698