summaryrefslogtreecommitdiffstats
path: root/tools/sharding_supervisor
diff options
context:
space:
mode:
authormaruel@chromium.org <maruel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-05 13:41:59 +0000
committermaruel@chromium.org <maruel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-05 13:41:59 +0000
commitd672cbc84ced1af4f7e5f0cf97c5d087a477717c (patch)
tree4a3f0f0bd29c76c70bf6ed439be59f9972f46429 /tools/sharding_supervisor
parent34475eddc6a0d8ecaae0aba510ad1b1aa3ef2359 (diff)
downloadchromium_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-xtools/sharding_supervisor/sharding_supervisor.py60
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())