Index: tools/telemetry/telemetry/browser_options.py |
diff --git a/tools/telemetry/telemetry/browser_options.py b/tools/telemetry/telemetry/browser_options.py |
index be52f17b1174eecb1e994567fe40388cf052256e..daf68e898d7d3e00bd62280d930121b12ae72bbf 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 |
@@ -81,6 +87,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 |
@@ -142,6 +154,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 |