Chromium Code Reviews| Index: tools/telemetry/telemetry/browser_backend.py |
| diff --git a/tools/telemetry/telemetry/browser_backend.py b/tools/telemetry/telemetry/browser_backend.py |
| index b45919dd237c2d5c92e5d358f6f05432512e7a6e..3454ef5bde813d3a0e73e83b6e24f6453e138e0b 100644 |
| --- a/tools/telemetry/telemetry/browser_backend.py |
| +++ b/tools/telemetry/telemetry/browser_backend.py |
| @@ -65,6 +65,14 @@ class BrowserBackend(object): |
| def _debugger_url(self): |
| return 'http://localhost:%i/json' % self._port |
| + def _ListExtensionPages(self, extension_id, timeout=None): |
| + req = urllib2.urlopen(self._debugger_url, timeout=timeout) |
| + data = req.read() |
| + all_contexts = json.loads(data) |
| + pages = [ctx for ctx in all_contexts |
| + if ctx['url'].startswith('chrome-extension://%s' % extension_id)] |
| + return pages |
| + |
| def _ListTabs(self, timeout=None): |
| req = urllib2.urlopen(self._debugger_url, timeout=timeout) |
| data = req.read() |
| @@ -102,6 +110,11 @@ class BrowserBackend(object): |
| def GetNthTabUrl(self, index): |
| return self._ListTabs()[index]['url'] |
| + def ConnectToExtensionPage(self, browser, extension_id): |
| + ib = inspector_backend.InspectorBackend(self, |
| + self._ListExtensionPages(extension_id)[0]) |
| + return tab.Tab(browser, ib) |
|
nduca
2012/11/29 05:09:27
raise exception if nothing found
nduca
2012/11/29 05:09:27
this change looks totally landable. we'll want a u
zel
2012/12/04 03:12:48
I don't see browser_backend_unittest.py - what am
|
| + |
| def ConnectToNthTab(self, browser, index): |
| ib = inspector_backend.InspectorBackend(self, self._ListTabs()[index]) |
| return tab.Tab(browser, ib) |