Index: tools/telemetry/telemetry/desktop_browser_backend.py |
diff --git a/tools/telemetry/telemetry/desktop_browser_backend.py b/tools/telemetry/telemetry/desktop_browser_backend.py |
index 43ac0b5c1588aa830486a146afd33c6a873e14d1..9797e7bad15e764bfc64bf14c4e362870849e2b8 100644 |
--- a/tools/telemetry/telemetry/desktop_browser_backend.py |
+++ b/tools/telemetry/telemetry/desktop_browser_backend.py |
@@ -27,6 +27,9 @@ class DesktopBrowserBackend(browser_backend.BrowserBackend): |
if not self._executable: |
raise Exception('Cannot create browser, no executable found!') |
+ if len(options.extensions_to_load) > 0 and is_content_shell: |
+ raise Exception('Cannot load extensions for content shell!') |
+ |
self._port = DEFAULT_PORT |
args = [self._executable] |
args.extend(self.GetBrowserStartupArgs()) |
@@ -52,6 +55,17 @@ class DesktopBrowserBackend(browser_backend.BrowserBackend): |
if not self.options.dont_override_profile: |
self._tmpdir = tempfile.mkdtemp() |
args.append('--user-data-dir=%s' % self._tmpdir) |
+ extensions = ','.join( |
+ [extension.path for extension in self.options.extensions_to_load |
+ if not extension.is_component]) |
+ component_extensions = ','.join( |
+ [extension.path for extension in self.options.extensions_to_load |
+ if extension.is_component]) |
+ if len(extensions) > 0: |
+ args.append('--load-extension=%s' % extensions) |
+ if len(component_extensions) > 0: |
+ args.append('--load-component-extension=%s' % component_extensions) |
+ |
return args |
def IsBrowserRunning(self): |