aboutsummaryrefslogtreecommitdiff
path: root/interpreter.py
diff options
context:
space:
mode:
Diffstat (limited to 'interpreter.py')
-rw-r--r--interpreter.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/interpreter.py b/interpreter.py
index 9aae7a4..832233f 100644
--- a/interpreter.py
+++ b/interpreter.py
@@ -429,13 +429,14 @@ class RunTargetHolder(InterpreterObject):
self.held_object = build.RunTarget(name, command, args, subdir)
class Test(InterpreterObject):
- def __init__(self, name, exe, is_parallel, cmd_args, env, valgrind_args):
+ def __init__(self, name, exe, is_parallel, cmd_args, env, should_fail, valgrind_args):
InterpreterObject.__init__(self)
self.name = name
self.exe = exe
self.is_parallel = is_parallel
self.cmd_args = cmd_args
self.env = env
+ self.should_fail = should_fail
self.valgrind_args = valgrind_args
def get_exe(self):
@@ -622,6 +623,7 @@ class ModuleHolder(InterpreterObject):
state.headers = self.interpreter.build.get_headers()
state.man = self.interpreter.build.get_man()
state.pkgconfig_gens = self.interpreter.build.pkgconfig_gens
+ state.global_args = self.interpreter.build.global_args
value = fn(state, args, kwargs)
return self.interpreter.module_method_callback(value)
@@ -1310,7 +1312,10 @@ class Interpreter():
for a in valgrind_args:
if not isinstance(a, str):
raise InterpreterException('Valgrind_arg not a string.')
- t = Test(args[0], args[1].held_object, par, cmd_args, env, valgrind_args)
+ should_fail = kwargs.get('should_fail', False)
+ if not isinstance(should_fail, bool):
+ raise InterpreterException('Keyword argument should_fail must be a boolean.')
+ t = Test(args[0], args[1].held_object, par, cmd_args, env, should_fail, valgrind_args)
self.build.tests.append(t)
mlog.debug('Adding test "', mlog.bold(args[0]), '".', sep='')