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

Unified Diff: tools/telemetry/telemetry/browser_options.py

Issue 11412238: Proof of concept for running extension API stack through dev tools. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 11 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/telemetry/telemetry/browser_finder.py ('k') | tools/telemetry/telemetry/browser_unittest.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/telemetry/telemetry/browser_options.py
diff --git a/tools/telemetry/telemetry/browser_options.py b/tools/telemetry/telemetry/browser_options.py
index 62b1eb81637574d14af9c2aba551d5113627c7bf..b9e58eb849f7b188947d85c3e1a6e318cf2985bb 100644
--- a/tools/telemetry/telemetry/browser_options.py
+++ b/tools/telemetry/telemetry/browser_options.py
@@ -10,6 +10,11 @@ import copy
from telemetry import browser_finder
from telemetry import wpr_modes
+class ExtensionToLoad(object):
+ def __init__(self, path, is_component):
+ self.path = path
+ self.is_component = is_component
+
class BrowserOptions(optparse.Values):
"""Options to be used for discovering and launching a browser."""
@@ -25,6 +30,7 @@ class BrowserOptions(optparse.Values):
self.dont_override_profile = False
self.extra_browser_args = []
self.show_stdout = False
+ self.extensions_to_load = []
self.cros_remote = None
self.wpr_mode = wpr_modes.WPR_OFF
@@ -86,6 +92,12 @@ class BrowserOptions(optparse.Values):
group.add_option('--show-stdout',
action='store_true',
help='When possible, will display the stdout of the process')
+ group.add_option('--load-component-extension',
+ dest='component_extensions_to_load_as_string',
+ help='Loads additional component extensions.')
+ group.add_option('--load-extension',
+ dest='extensions_to_load_as_string',
+ help='Loads additional extension.')
parser.add_option_group(group)
# Page set options
@@ -149,6 +161,18 @@ class BrowserOptions(optparse.Values):
self.extra_browser_args_as_string) # pylint: disable=E1101
self.extra_browser_args.extend(tmp)
delattr(self, 'extra_browser_args_as_string')
+ if self.component_extensions_to_load_as_string: # pylint: disable=E1101
+ paths = self.component_extensions_to_load_as_string.split(',')
+ self.extensions_to_load.extend(
+ [ExtensionToLoad(ext_path, True)
+ for ext_path in paths])
+ delattr(self, 'component_extensions_to_load_as_string')
+ if self.extensions_to_load_as_string: # pylint: disable=E1101
+ paths = self.extensions_to_load_as_string.split(',')
+ self.extensions_to_load.extend(
+ [ExtensionToLoad(ext_path, False)
+ for ext_path in paths])
+ delattr(self, 'component_extensions_to_load_as_string')
return ret
parser.parse_args = ParseArgs
return parser
« no previous file with comments | « tools/telemetry/telemetry/browser_finder.py ('k') | tools/telemetry/telemetry/browser_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698