Allow language to be specified to run_tests.py
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 7737b94..aa3245d 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -46,7 +46,10 @@
_DEFAULT = ['dbg', 'opt']
-_MAKE_TEST_TARGETS = ['buildtests_c', 'buildtests_cxx']
+_LANGUAGE_TEST_TARGETS = {
+ 'c++': 'buildtests_cxx',
+ 'c': 'buildtests_c',
+}
# parse command line
argp = argparse.ArgumentParser(description='Run grpc tests.')
@@ -64,6 +67,10 @@
default=False,
action='store_const',
const=True)
+argp.add_argument('-l', '--language',
+ choices=sorted(_LANGUAGE_TEST_TARGETS.keys()),
+ nargs='+',
+ default=sorted(_LANGUAGE_TEST_TARGETS.keys()))
args = argp.parse_args()
# grab config
@@ -72,6 +79,7 @@
_CONFIGS.iterkeys() if x == 'all' else [x]
for x in args.config))
build_configs = set(cfg.build_config for cfg in run_configs)
+make_targets = set(_LANGUAGE_TEST_TARGETS[x] for x in args.language)
filters = args.test_filter
runs_per_test = args.runs_per_test
forever = args.forever
@@ -83,7 +91,7 @@
if not jobset.run(
(['make',
'-j', '%d' % (multiprocessing.cpu_count() + 1),
- 'CONFIG=%s' % cfg] + _MAKE_TEST_TARGETS
+ 'CONFIG=%s' % cfg] + list(make_targets)
for cfg in build_configs),
check_cancelled, maxjobs=1):
return 1