aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mtest.py
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2021-01-25 14:12:05 -0500
committerXavier Claessens <xclaesse@gmail.com>2021-01-27 08:26:20 -0500
commite4137ae3eca0c73e8c19ea84d9a203ddb065f0d8 (patch)
treedd0f36ed09f5d9978fc5a71dae4fa97c70e1358e /mesonbuild/mtest.py
parente6ab364a69f2e5a8b0692da926af1e19f4f28734 (diff)
downloadmeson-e4137ae3eca0c73e8c19ea84d9a203ddb065f0d8.zip
meson-e4137ae3eca0c73e8c19ea84d9a203ddb065f0d8.tar.gz
meson-e4137ae3eca0c73e8c19ea84d9a203ddb065f0d8.tar.bz2
test: Make timeout <= 0 infinite duraction
Diffstat (limited to 'mesonbuild/mtest.py')
-rw-r--r--mesonbuild/mtest.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/mesonbuild/mtest.py b/mesonbuild/mtest.py
index d410dba..3525189 100644
--- a/mesonbuild/mtest.py
+++ b/mesonbuild/mtest.py
@@ -129,7 +129,7 @@ def add_arguments(parser: argparse.ArgumentParser) -> None:
parser.add_argument('-t', '--timeout-multiplier', type=float, default=None,
help='Define a multiplier for test timeout, for example '
' when running tests in particular conditions they might take'
- ' more time to execute.')
+ ' more time to execute. (<= 0 to disable timeout)')
parser.add_argument('--setup', default=None, dest='setup',
help='Which test setup to use.')
parser.add_argument('--test-args', default=[], type=split_args,
@@ -492,7 +492,7 @@ class ConsoleLogger(TestLogger):
spaces=' ' * TestResult.maxlen(),
dur=int(time.time() - self.progress_test.starttime),
durlen=harness.duration_max_len,
- timeout=int(self.progress_test.timeout))
+ timeout=int(self.progress_test.timeout or -1))
detail = self.progress_test.detail
if detail:
right += ' ' + detail
@@ -1158,12 +1158,14 @@ class SingleTestRunner:
self.env = env
self.options = options
- if self.options.gdb or self.test.timeout is None:
+ if self.options.gdb or self.test.timeout is None or self.test.timeout <= 0:
timeout = None
- elif self.options.timeout_multiplier is not None:
- timeout = self.test.timeout * self.options.timeout_multiplier
- else:
+ elif self.options.timeout_multiplier is None:
timeout = self.test.timeout
+ elif self.options.timeout_multiplier <= 0:
+ timeout = None
+ else:
+ timeout = self.test.timeout * self.options.timeout_multiplier
self.runobj = TestRun(test, test_env, name, timeout)