OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 logging | 5 import logging |
6 import pprint | 6 import pprint |
7 import shlex | 7 import shlex |
8 import sys | 8 import sys |
9 | 9 |
10 from telemetry.core import exceptions | 10 from telemetry.core import exceptions |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 # and installed a root certificate. | 132 # and installed a root certificate. |
133 replay_args.append('--ignore-certificate-errors') | 133 replay_args.append('--ignore-certificate-errors') |
134 return replay_args | 134 return replay_args |
135 | 135 |
136 def HasBrowserFinishedLaunching(self): | 136 def HasBrowserFinishedLaunching(self): |
137 assert self._port, 'No DevTools port info available.' | 137 assert self._port, 'No DevTools port info available.' |
138 return devtools_client_backend.IsDevToolsAgentAvailable( | 138 return devtools_client_backend.IsDevToolsAgentAvailable( |
139 self._port, | 139 self._port, |
140 self._browser_target, self) | 140 self._browser_target, self) |
141 | 141 |
142 def _WaitForBrowserToComeUp(self, remote_devtools_port=None): | 142 def _WaitForBrowserToComeUp(self, remote_devtools_port=None, |
| 143 enable_tracing=True): |
143 """ Wait for browser to come up. | 144 """ Wait for browser to come up. |
144 | 145 |
145 Args: | 146 Args: |
146 remote_devtools_port: The remote devtools port, if | 147 remote_devtools_port: The remote devtools port, if |
147 any. Otherwise assumed to be the same as self._port. | 148 any. Otherwise assumed to be the same as self._port. |
148 """ | 149 """ |
149 try: | 150 try: |
150 timeout = self.browser_options.browser_startup_timeout | 151 timeout = self.browser_options.browser_startup_timeout |
151 py_utils.WaitFor(self.HasBrowserFinishedLaunching, timeout=timeout) | 152 py_utils.WaitFor(self.HasBrowserFinishedLaunching, timeout=timeout) |
152 except (py_utils.TimeoutException, exceptions.ProcessGoneException) as e: | 153 except (py_utils.TimeoutException, exceptions.ProcessGoneException) as e: |
153 if not self.IsBrowserRunning(): | 154 if not self.IsBrowserRunning(): |
154 raise exceptions.BrowserGoneException(self.browser, e) | 155 raise exceptions.BrowserGoneException(self.browser, e) |
155 raise exceptions.BrowserConnectionGoneException(self.browser, e) | 156 raise exceptions.BrowserConnectionGoneException(self.browser, e) |
156 self._devtools_client = devtools_client_backend.DevToolsClientBackend( | 157 self._devtools_client = devtools_client_backend.DevToolsClientBackend( |
157 self._port, self._browser_target, | 158 self._port, self._browser_target, |
158 remote_devtools_port or self._port, self) | 159 remote_devtools_port or self._port, self, enable_tracing) |
159 | 160 |
160 def _WaitForExtensionsToLoad(self): | 161 def _WaitForExtensionsToLoad(self): |
161 """ Wait for all extensions to load. | 162 """ Wait for all extensions to load. |
162 Be sure to check whether the browser_backend supports_extensions before | 163 Be sure to check whether the browser_backend supports_extensions before |
163 calling this method. | 164 calling this method. |
164 """ | 165 """ |
165 assert self._supports_extensions | 166 assert self._supports_extensions |
166 assert self._devtools_client, ( | 167 assert self._devtools_client, ( |
167 'Waiting for extensions required devtool client to be initiated first') | 168 'Waiting for extensions required devtool client to be initiated first') |
168 try: | 169 try: |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
298 def supports_cpu_metrics(self): | 299 def supports_cpu_metrics(self): |
299 return True | 300 return True |
300 | 301 |
301 @property | 302 @property |
302 def supports_memory_metrics(self): | 303 def supports_memory_metrics(self): |
303 return True | 304 return True |
304 | 305 |
305 @property | 306 @property |
306 def supports_power_metrics(self): | 307 def supports_power_metrics(self): |
307 return True | 308 return True |
OLD | NEW |