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

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

Issue 12278015: [Telemetry] Reorganize everything. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Re-add shebangs. Created 7 years, 10 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
Index: tools/telemetry/telemetry/browser_options.py
diff --git a/tools/telemetry/telemetry/browser_options.py b/tools/telemetry/telemetry/browser_options.py
deleted file mode 100644
index cb714e86b89643b841b72f768d02a5b496375f2d..0000000000000000000000000000000000000000
--- a/tools/telemetry/telemetry/browser_options.py
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright (c) 2012 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-import optparse
-import sys
-import shlex
-import logging
-import copy
-
-from telemetry import browser_finder
-from telemetry import wpr_modes
-
-class BrowserOptions(optparse.Values):
- """Options to be used for discovering and launching a browser."""
-
- def __init__(self, browser_type=None):
- optparse.Values.__init__(self)
-
- self.browser_type = browser_type
- self.browser_executable = None
- self.chrome_root = None
- self.android_device = None
- self.cros_ssh_identity = None
-
- self.dont_override_profile = False
- self.extra_browser_args = []
- self.extra_wpr_args = []
- self.show_stdout = False
- self.extensions_to_load = []
-
- self.cros_remote = None
- self.wpr_mode = wpr_modes.WPR_OFF
- self.wpr_make_javascript_deterministic = True
-
- self.browser_user_agent_type = None
-
- self.trace_dir = None
- self.verbosity = 0
-
- self.page_filter = None
- self.page_filter_exclude = None
-
- def Copy(self):
- return copy.deepcopy(self)
-
- def CreateParser(self, *args, **kwargs):
- parser = optparse.OptionParser(*args, **kwargs)
-
- # Selection group
- group = optparse.OptionGroup(parser, 'Which browser to use')
- group.add_option('--browser',
- dest='browser_type',
- default=None,
- help='Browser type to run, '
- 'in order of priority. Supported values: list,%s' %
- browser_finder.ALL_BROWSER_TYPES)
- group.add_option('--browser-executable',
- dest='browser_executable',
- help='The exact browser to run.')
- group.add_option('--chrome-root',
- dest='chrome_root',
- help='Where to look for chrome builds.'
- 'Defaults to searching parent dirs by default.')
- group.add_option('--device',
- dest='android_device',
- help='The android device ID to use'
- 'If not specified, only 0 or 1 connected devcies are supported.')
- group.add_option('--keep_test_server_ports', action='store_true',
- help='Indicates the test server ports must be '
- 'kept. When this is run via a sharder '
- 'the test server ports should be kept and '
- 'should not be reset.')
- group.add_option(
- '--remote',
- dest='cros_remote',
- help='The IP address of a remote ChromeOS device to use.')
- group.add_option('--identity',
- dest='cros_ssh_identity',
- default=None,
- help='The identity file to use when ssh\'ing into the ChromeOS device')
- parser.add_option_group(group)
-
- # Browser options
- group = optparse.OptionGroup(parser, 'Browser options')
- group.add_option('--dont-override-profile', action='store_true',
- dest='dont_override_profile',
- help='Uses the regular user profile instead of a clean one')
- group.add_option('--extra-browser-args',
- dest='extra_browser_args_as_string',
- help='Additional arguments to pass to the browser when it starts')
- group.add_option('--extra-wpr-args',
- dest='extra_wpr_args_as_string',
- help=('Additional arguments to pass to Web Page Replay. '
- 'See third_party/webpagereplay/replay.py for usage.'))
- group.add_option('--show-stdout',
- action='store_true',
- help='When possible, will display the stdout of the process')
- parser.add_option_group(group)
-
- # Page set options
- group = optparse.OptionGroup(parser, 'Page set options')
- group.add_option('--page-repeat', dest='page_repeat', default=1,
- help='Number of times to repeat each individual ' +
- 'page in the pageset before proceeding.')
- group.add_option('--pageset-repeat', dest='pageset_repeat', default=1,
- help='Number of times to repeat the entire pageset ' +
- 'before finishing.')
- group.add_option('--pageset-shuffle', action='store_true',
- dest='pageset_shuffle',
- help='Shuffle the order of pages within a pageset.')
- group.add_option('--pageset-shuffle-order-file',
- dest='pageset_shuffle_order_file', default=None,
- help='Filename of an output of a previously run test on the current ' +
- 'pageset. The tests will run in the same order again, overriding ' +
- 'what is specified by --page-repeat and --pageset-repeat.')
- parser.add_option_group(group)
-
- # Debugging options
- group = optparse.OptionGroup(parser, 'When things go wrong')
- group.add_option(
- '--trace-dir', dest='trace_dir', default=None,
- help='Record traces and store them in this directory.')
- group.add_option(
- '-v', '--verbose', action='count', dest='verbosity',
- help='Increase verbosity level (repeat as needed)')
- parser.add_option_group(group)
-
- real_parse = parser.parse_args
- def ParseArgs(args=None):
- defaults = parser.get_default_values()
- for k, v in defaults.__dict__.items():
- if k in self.__dict__ and self.__dict__[k] != None:
- continue
- self.__dict__[k] = v
- ret = real_parse(args, self) # pylint: disable=E1121
-
- if self.verbosity >= 2:
- logging.basicConfig(level=logging.DEBUG)
- elif self.verbosity:
- logging.basicConfig(level=logging.INFO)
- else:
- logging.basicConfig(level=logging.WARNING)
-
- if self.browser_executable and not self.browser_type:
- self.browser_type = 'exact'
- if not self.browser_executable and not self.browser_type:
- sys.stderr.write('Must provide --browser=<type>. ' +
- 'Use --browser=list for valid options.\n')
- sys.exit(1)
- if self.browser_type == 'list':
- types = browser_finder.GetAllAvailableBrowserTypes(self)
- sys.stderr.write('Available browsers:\n')
- sys.stdout.write(' %s\n' % '\n '.join(types))
- sys.exit(1)
- if self.extra_browser_args_as_string: # pylint: disable=E1101
- tmp = shlex.split(
- self.extra_browser_args_as_string) # pylint: disable=E1101
- self.extra_browser_args.extend(tmp)
- delattr(self, 'extra_browser_args_as_string')
- if self.extra_wpr_args_as_string: # pylint: disable=E1101
- tmp = shlex.split(
- self.extra_wpr_args_as_string) # pylint: disable=E1101
- self.extra_wpr_args.extend(tmp)
- delattr(self, 'extra_wpr_args_as_string')
- return ret
- parser.parse_args = ParseArgs
- return parser
-
- def AppendExtraBrowserArg(self, arg):
- if arg not in self.extra_browser_args:
- self.extra_browser_args.append(arg)
« no previous file with comments | « tools/telemetry/telemetry/browser_gone_exception.py ('k') | tools/telemetry/telemetry/browser_options_unittest.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698