diff options
author | maruel@chromium.org <maruel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-05 13:41:59 +0000 |
---|---|---|
committer | maruel@chromium.org <maruel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-05 13:41:59 +0000 |
commit | d672cbc84ced1af4f7e5f0cf97c5d087a477717c (patch) | |
tree | 4a3f0f0bd29c76c70bf6ed439be59f9972f46429 /tools/sharding_supervisor | |
parent | 34475eddc6a0d8ecaae0aba510ad1b1aa3ef2359 (diff) | |
download | chromium_src-d672cbc84ced1af4f7e5f0cf97c5d087a477717c.zip chromium_src-d672cbc84ced1af4f7e5f0cf97c5d087a477717c.tar.gz chromium_src-d672cbc84ced1af4f7e5f0cf97c5d087a477717c.tar.bz2 |
Switch over to run_test_cases.py, take 2.
Instead of doing a "Revert r168479 'Revert r168478'", it's using a simpler version based on renaming sharding_supervisor first.
Try to enable run_test_cases.py again.
R=phajdan.jr@chromium.org
BUG=164886
Review URL: https://codereview.chromium.org/11472024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180696 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/sharding_supervisor')
-rwxr-xr-x | tools/sharding_supervisor/sharding_supervisor.py | 60 |
1 files changed, 58 insertions, 2 deletions
diff --git a/tools/sharding_supervisor/sharding_supervisor.py b/tools/sharding_supervisor/sharding_supervisor.py index 3cd335e..6414a37 100755 --- a/tools/sharding_supervisor/sharding_supervisor.py +++ b/tools/sharding_supervisor/sharding_supervisor.py @@ -3,8 +3,64 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -from sharding_supervisor_old import * # pylint: disable=W0401,W0614 +"""Defer to run_test_cases.py.""" +import os +import optparse +import sys -if __name__ == "__main__": +ROOT_DIR = os.path.dirname( + os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + + +def pop_gtest_output(args): + """Extracts --gtest_output from the args if present.""" + for index, arg in enumerate(args): + if arg.startswith('--gtest_output='): + return args.pop(index) + + +def main(): + parser = optparse.OptionParser() + + group = optparse.OptionGroup( + parser, 'Compability flag with the old sharding_supervisor') + group.add_option( + '--no-color', action='store_true', help='Ignored') + group.add_option( + '--retry-failed', action='store_true', help='Ignored') + group.add_option( + '-t', '--timeout', type='int', help='Kept as --timeout') + group.add_option( + '--total-slaves', type='int', default=1, help='Converted to --index') + group.add_option( + '--slave-index', type='int', default=0, help='Converted to --shards') + parser.add_option_group(group) + + parser.disable_interspersed_args() + options, args = parser.parse_args() + + swarm_client_dir = os.path.join(ROOT_DIR, 'tools', 'swarm_client') + sys.path.insert(0, swarm_client_dir) + + cmd = [ + '--shards', str(options.total_slaves), + '--index', str(options.slave_index), + '--no-dump', + '--no-cr', + ] + if options.timeout is not None: + cmd.extend(['--timeout', str(options.timeout)]) + gtest_output = pop_gtest_output(args) + if gtest_output: + # It is important that --gtest_output appears before the '--' so it is + # properly processed by run_test_cases. + cmd.append(gtest_output) + + import run_test_cases # pylint: disable=F0401 + + return run_test_cases.main(cmd + ['--'] + args) + + +if __name__ == '__main__': sys.exit(main()) |