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 |