diff options
author | Masood Malekghassemi <soltanmm@users.noreply.github.com> | 2015-10-09 15:19:17 -0700 |
---|---|---|
committer | Masood Malekghassemi <soltanmm@users.noreply.github.com> | 2015-10-09 15:33:29 -0700 |
commit | 26ea9e28815bc473d72c0c1909e9ac3b30a4f9aa (patch) | |
tree | ae0f940a31715558f9446378e3ff3f7519901f05 | |
parent | 4c351aafedb51d5a0a02eb603af8e9a6a499453f (diff) |
Give Python tests 15 minutes
Also refactors configurations to setting timeout multipliers and
allowing individual test languages to set their desired absolute
timeouts.
-rwxr-xr-x | tools/run_tests/run_tests.py | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/tools/run_tests/run_tests.py b/tools/run_tests/run_tests.py index a3bed4ef87..2916bdcb33 100755 --- a/tools/run_tests/run_tests.py +++ b/tools/run_tests/run_tests.py @@ -71,16 +71,17 @@ def platform_string(): # SimpleConfig: just compile with CONFIG=config, and run the binary to test class SimpleConfig(object): - def __init__(self, config, environ=None, timeout_seconds=5*60): + def __init__(self, config, environ=None, timeout_multiplier=1): if environ is None: environ = {} self.build_config = config self.allow_hashing = (config != 'gcov') self.environ = environ self.environ['CONFIG'] = config - self.timeout_seconds = timeout_seconds + self.timeout_multiplier = timeout_multiplier - def job_spec(self, cmdline, hash_targets, shortname=None, environ={}): + def job_spec(self, cmdline, hash_targets, timeout_seconds=5*60, + shortname=None, environ={}): """Construct a jobset.JobSpec for a test under this config Args: @@ -98,7 +99,7 @@ class SimpleConfig(object): return jobset.JobSpec(cmdline=cmdline, shortname=shortname, environ=actual_environ, - timeout_seconds=self.timeout_seconds, + timeout_seconds=self.timeout_multiplier * timeout_seconds, hash_targets=hash_targets if self.allow_hashing else None, flake_retries=5 if args.allow_flakes else 0) @@ -248,6 +249,7 @@ class PythonLanguage(object): None, environ=environment, shortname='py.test', + timeout_seconds=15*60 )] def pre_build_steps(self): @@ -431,11 +433,11 @@ class Build(object): _CONFIGS = { 'dbg': SimpleConfig('dbg'), 'opt': SimpleConfig('opt'), - 'tsan': SimpleConfig('tsan', timeout_seconds=10*60, environ={ + 'tsan': SimpleConfig('tsan', timeout_multiplier=2, environ={ 'TSAN_OPTIONS': 'suppressions=tools/tsan_suppressions.txt:halt_on_error=1:second_deadlock_stack=1'}), - 'msan': SimpleConfig('msan', timeout_seconds=7*60), + 'msan': SimpleConfig('msan', timeout_multiplier=1.5), 'ubsan': SimpleConfig('ubsan'), - 'asan': SimpleConfig('asan', timeout_seconds=7*60, environ={ + 'asan': SimpleConfig('asan', timeout_multiplier=1.5, environ={ 'ASAN_OPTIONS': 'detect_leaks=1:color=always:suppressions=tools/tsan_suppressions.txt', 'LSAN_OPTIONS': 'report_objects=1'}), 'asan-noleaks': SimpleConfig('asan', environ={ |