| 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
 | 
| 
 |