aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2015-12-03 00:28:52 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2015-12-03 00:28:52 +0200
commitf7608fc56941e81e18647de00591ba23050c5f7b (patch)
tree392bd3d5f0935ddde13b0610676f97e07fbe20a9 /interpreter.py
parent913963d608a419a336473203c3167987f8c15060 (diff)
parentb167f3a56f2f21f5dab284463e3be15a201738b2 (diff)
downloadmeson-f7608fc56941e81e18647de00591ba23050c5f7b.zip
meson-f7608fc56941e81e18647de00591ba23050c5f7b.tar.gz
meson-f7608fc56941e81e18647de00591ba23050c5f7b.tar.bz2
Merge pull request #317 from mesonbuild/benchmark
Create benchmark feature
Diffstat (limited to 'interpreter.py')
-rw-r--r--interpreter.py15
1 files changed, 13 insertions, 2 deletions
diff --git a/interpreter.py b/interpreter.py
index d60de83..cacfe05 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -943,6 +943,7 @@ class Interpreter():
'run_target' : self.func_run_target,
'generator' : self.func_generator,
'test' : self.func_test,
+ 'benchmark' : self.func_benchmark,
'install_headers' : self.func_install_headers,
'install_man' : self.func_install_man,
'subdir' : self.func_subdir,
@@ -1677,7 +1678,13 @@ class Interpreter():
self.generators.append(gen)
return gen
+ def func_benchmark(self, node, args, kwargs):
+ self.add_test(node, args, kwargs, False)
+
def func_test(self, node, args, kwargs):
+ self.add_test(node, args, kwargs, True)
+
+ def add_test(self, node, args, kwargs, is_base_test):
if len(args) != 2:
raise InterpreterException('Incorrect number of arguments')
if not isinstance(args[0], str):
@@ -1719,8 +1726,12 @@ class Interpreter():
if not isinstance(timeout, int):
raise InterpreterException('Timeout must be an integer.')
t = Test(args[0], args[1].held_object, par, cmd_args, env, should_fail, valgrind_args, timeout)
- self.build.tests.append(t)
- mlog.debug('Adding test "', mlog.bold(args[0]), '".', sep='')
+ if is_base_test:
+ self.build.tests.append(t)
+ mlog.debug('Adding test "', mlog.bold(args[0]), '".', sep='')
+ else:
+ self.build.benchmarks.append(t)
+ mlog.debug('Adding benchmark "', mlog.bold(args[0]), '".', sep='')
@stringArgs
def func_install_headers(self, node, args, kwargs):