| Index: tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_runtime.py
|
| diff --git a/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_runtime.py b/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_runtime.py
|
| deleted file mode 100644
|
| index b3c250e0e89fa04ae860c7e5f2ef6921a8546ae4..0000000000000000000000000000000000000000
|
| --- a/tools/telemetry/telemetry/internal/backends/chrome_inspector/inspector_runtime.py
|
| +++ /dev/null
|
| @@ -1,80 +0,0 @@
|
| -# Copyright 2013 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -from telemetry.core import exceptions
|
| -
|
| -
|
| -class InspectorRuntime(object):
|
| - def __init__(self, inspector_websocket):
|
| - self._inspector_websocket = inspector_websocket
|
| - self._inspector_websocket.RegisterDomain('Runtime', self._OnNotification)
|
| - self._contexts_enabled = False
|
| - self._max_context_id = None
|
| -
|
| - def _OnNotification(self, msg):
|
| - if (self._contexts_enabled and
|
| - msg['method'] == 'Runtime.executionContextCreated'):
|
| - self._max_context_id = max(self._max_context_id,
|
| - msg['params']['context']['id'])
|
| -
|
| - def Execute(self, expr, context_id, timeout):
|
| - self.Evaluate(expr + '; 0;', context_id, timeout)
|
| -
|
| - def Evaluate(self, expr, context_id, timeout):
|
| - """Evaluates a javascript expression and returns the result.
|
| -
|
| - |context_id| can refer to an iframe. The main page has context_id=1, the
|
| - first iframe context_id=2, etc.
|
| -
|
| - Raises:
|
| - exceptions.EvaluateException
|
| - exceptions.WebSocketDisconnected
|
| - websocket.WebSocketException
|
| - socket.error
|
| - """
|
| - request = {
|
| - 'method': 'Runtime.evaluate',
|
| - 'params': {
|
| - 'expression': expr,
|
| - 'returnByValue': True
|
| - }
|
| - }
|
| - if context_id is not None:
|
| - self.EnableAllContexts()
|
| - request['params']['contextId'] = context_id
|
| - res = self._inspector_websocket.SyncRequest(request, timeout)
|
| - if 'error' in res:
|
| - raise exceptions.EvaluateException(res['error']['message'])
|
| -
|
| - if 'wasThrown' in res['result'] and res['result']['wasThrown']:
|
| - # TODO(nduca): propagate stacks from javascript up to the python
|
| - # exception.
|
| - raise exceptions.EvaluateException(res['result']['result']['description'])
|
| - if res['result']['result']['type'] == 'undefined':
|
| - return None
|
| - return res['result']['result']['value']
|
| -
|
| - def EnableAllContexts(self):
|
| - """Allow access to iframes.
|
| -
|
| - Raises:
|
| - exceptions.WebSocketDisconnected
|
| - websocket.WebSocketException
|
| - socket.error
|
| - """
|
| - if not self._contexts_enabled:
|
| - self._contexts_enabled = True
|
| - self._inspector_websocket.SyncRequest({'method': 'Runtime.enable'},
|
| - timeout=30)
|
| - return self._max_context_id
|
| -
|
| - def RunInspectorCommand(self, command, timeout):
|
| - """Runs an inspector command.
|
| -
|
| - Raises:
|
| - exceptions.WebSocketDisconnected
|
| - websocket.WebSocketException
|
| - socket.error
|
| - """
|
| - res = self._inspector_websocket.SyncRequest(command, timeout)
|
| - return res
|
|
|