def run(args): options = parser.parse_args(args) if options.benchmark: options.num_processes = 1 if options.setup is not None: global_env = merge_suite_options(options) else: global_env = build.EnvironmentVariables() setattr(options, 'global_env', global_env) if options.verbose and options.quiet: print('Can not be both quiet and verbose at the same time.') return 1 if options.gdb: options.verbose = True if options.wrapper: print('Must not specify both a wrapper and gdb at the same time.') return 1 options.wd = os.path.abspath(options.wd) th = TestHarness(options) if options.list: list_tests(th) return 0 if not options.no_rebuild: if not th.rebuild_all(): sys.exit(-1) if len(options.args) == 0: return th.doit() return th.run_special()
def run(args): options = parser.parse_args(args) if options.benchmark: options.num_processes = 1 if options.setup is not None: global_env = merge_suite_options(options) else: global_env = build.EnvironmentVariables() if options.timeout_multiplier is None: options.timeout_multiplier = 1 setattr(options, 'global_env', global_env) if options.verbose and options.quiet: print('Can not be both quiet and verbose at the same time.') return 1 check_bin = None if options.gdb: options.verbose = True if options.wrapper: print('Must not specify both a wrapper and gdb at the same time.') return 1 check_bin = 'gdb' if options.wrapper: check_bin = options.wrapper[0] if check_bin is not None: exe = ExternalProgram(check_bin, silent=True) if not exe.found(): sys.exit("Could not find requested program: %s" % check_bin) options.wd = os.path.abspath(options.wd) if not options.list and not options.no_rebuild: if not rebuild_all(options.wd): sys.exit(-1) try: th = TestHarness(options) if options.list: list_tests(th) return 0 if not options.args: return th.doit() return th.run_special() except TestException as e: print('Meson test encountered an error:\n') print(e) return 1