aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/run_tests/run_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/run_tests/run_tests.py')
-rwxr-xr-xtools/run_tests/run_tests.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py
index 2428e21ca3..443c9a87cd 100755
--- a/tools/run_tests/run_tests.py
+++ b/tools/run_tests/run_tests.py
@@ -149,7 +149,7 @@ class NodeLanguage(object):
environ={'GRPC_TRACE': 'surface,batch'})]
def make_targets(self):
- return ['static_c']
+ return ['static_c', 'shared_c']
def build_steps(self):
return [['tools/run_tests/build_node.sh']]
@@ -168,7 +168,7 @@ class PhpLanguage(object):
environ={'GRPC_TRACE': 'surface,batch'})]
def make_targets(self):
- return ['static_c']
+ return ['static_c', 'shared_c']
def build_steps(self):
return [['tools/run_tests/build_php.sh']]
@@ -202,7 +202,7 @@ class PythonLanguage(object):
return files + modules
def make_targets(self):
- return ['static_c', 'grpc_python_plugin']
+ return ['static_c', 'grpc_python_plugin', 'shared_c']
def build_steps(self):
return [['tools/run_tests/build_python.sh']]
@@ -301,7 +301,8 @@ _CONFIGS = {
'msan': SimpleConfig('msan'),
'ubsan': SimpleConfig('ubsan'),
'asan': SimpleConfig('asan', environ={
- 'ASAN_OPTIONS': 'detect_leaks=1:color=always:suppressions=tools/tsan_suppressions.txt'}),
+ 'ASAN_OPTIONS': 'detect_leaks=1:color=always:suppressions=tools/tsan_suppressions.txt',
+ 'LSAN_OPTIONS': 'report_objects=1'}),
'asan-noleaks': SimpleConfig('asan', environ={
'ASAN_OPTIONS': 'detect_leaks=0:color=always:suppressions=tools/tsan_suppressions.txt'}),
'gcov': SimpleConfig('gcov'),
@@ -349,6 +350,10 @@ argp.add_argument('-l', '--language',
choices=sorted(_LANGUAGES.keys()),
nargs='+',
default=sorted(_LANGUAGES.keys()))
+argp.add_argument('-S', '--stop_on_failure',
+ default=False,
+ action='store_const',
+ const=True)
argp.add_argument('-a', '--antagonists', default=0, type=int)
args = argp.parse_args()
@@ -376,11 +381,11 @@ else:
def make_jobspec(cfg, targets):
return jobset.JobSpec(['make',
'-j', '%d' % (multiprocessing.cpu_count() + 1),
- 'EXTRA_DEFINES=GRPC_TEST_SLOWDOWN_MACHINE_FACTOR=%f' %
+ 'EXTRA_DEFINES=GRPC_TEST_SLOWDOWN_MACHINE_FACTOR=%f' %
args.slowdown,
'CONFIG=%s' % cfg] + targets)
-build_steps = [make_jobspec(cfg,
+build_steps = [make_jobspec(cfg,
list(set(itertools.chain.from_iterable(
l.make_targets() for l in languages))))
for cfg in build_configs]
@@ -388,7 +393,7 @@ build_steps.extend(set(
jobset.JobSpec(cmdline, environ={'CONFIG': cfg})
for cfg in build_configs
for l in languages
- for cmdline in l.build_steps()))
+ for cmdline in l.build_steps()))
one_run = set(
spec
for config in run_configs
@@ -454,6 +459,7 @@ def _build_and_run(check_cancelled, newline_on_success, travis, cache):
if not jobset.run(all_runs, check_cancelled,
newline_on_success=newline_on_success, travis=travis,
maxjobs=args.jobs,
+ stop_on_failure=args.stop_on_failure,
cache=cache):
return 2
finally: