• Home
  • Raw
  • Download

Lines Matching +full:runner +full:- +full:before +full:- +full:script

3 # Script to compile and runs tests.
6 # ./scripts/test.py runners/test_runner -b
9 # SPDX-License-Identifier: BSD-3-Clause
38 def openio(path, mode='r', buffering=-1):
39 # allow '-' for stdin/stdout
40 if path == '-':
89 parens -= 1
100 # which can be comma-separated values, with optional
102 # the runner itself.
153 self.name = self.name[:-len('.toml')]
216 # combine per-case defines
220 # combine other per-case things
245 sys.exit(-1)
283 sys.exit(-1)
342 f.writeln(8*' '+'[%-24s] = {%s, NULL},' % (
388 f.writeln('#define %-24s '
390 f.writeln('#define %-24s '
418 # 32-bytes for some reason
435 f.writeln(8*' '+'[%-24s] = "%s",' % (k+'_i', k))
485 f.writeln('#define %-24s '
488 f.writeln('#define %-24s '
510 def find_runner(runner, **args): argument
511 cmd = runner.copy()
520 '--leak-check=full',
521 '--track-origins=yes',
522 '--error-exitcode=4',
523 '-q']
528 '-R',
529 '--perf-freq=%s' % args['perf_freq']
531 '--perf-period=%s' % args['perf_period']
533 '--perf-events=%s' % args['perf_events']
535 '--perf-path=%s' % args['perf_path']
537 '-o%s' % args['perf']]))
541 cmd.append('-G%s' % args['geometry'])
543 cmd.append('-P%s' % args['powerloss'])
545 cmd.append('-d%s' % args['disk'])
547 cmd.append('-t%s' % args['trace'])
549 cmd.append('--trace-backtrace')
551 cmd.append('--trace-period=%s' % args['trace_period'])
553 cmd.append('--trace-freq=%s' % args['trace_freq'])
555 cmd.append('--read-sleep=%s' % args['read_sleep'])
557 cmd.append('--prog-sleep=%s' % args['prog_sleep'])
559 cmd.append('--erase-sleep=%s' % args['erase_sleep'])
564 cmd.append('-D%s' % define)
568 def list_(runner, test_ids=[], **args): argument
569 cmd = find_runner(runner, **args) + test_ids
570 if args.get('summary'): cmd.append('--summary')
571 if args.get('list_suites'): cmd.append('--list-suites')
572 if args.get('list_cases'): cmd.append('--list-cases')
573 if args.get('list_suite_paths'): cmd.append('--list-suite-paths')
574 if args.get('list_case_paths'): cmd.append('--list-case-paths')
575 if args.get('list_defines'): cmd.append('--list-defines')
577 cmd.append('--list-permutation-defines')
579 cmd.append('--list-implicit-defines')
580 if args.get('list_geometries'): cmd.append('--list-geometries')
581 if args.get('list_powerlosses'): cmd.append('--list-powerlosses')
594 # query cases from the runner
595 cmd = runner_ + ['--list-cases'] + ids
622 sys.exit(-1)
625 cmd = runner_ + ['--list-case-paths'] + ids
645 suite = suite[:-len('.toml')]
652 sys.exit(-1)
668 # query from runner
669 cmd = runner_ + ['--list-case-paths', id]
693 sys.exit(-1)
698 # query permutation defines from runner
699 cmd = runner_ + ['--list-permutation-defines', id]
721 sys.exit(-1)
726 # Thread-safe CSV writer
753 self.head.extend(row.keys() - (self.head + self.tail))
893 job_runner.append('-s%s,%s,%s' % (start, start+step, step))
895 job_runner.append('-s%s,,%s' % (start, step))
989 # this is handled by the runner threads, we just
1006 def run(runner, test_ids=[], **args): argument
1007 # query runner for tests
1008 runner_ = find_runner(runner, **args)
1009 print('using runner: %s' % ' '.join(shlex.quote(c) for c in runner_))
1097 'in %.2fs' % (stop-start)]))))
1106 # get some extra info from runner
1123 stdout = stdout[:-1]
1124 for line in stdout[-args.get('context', 5):]:
1136 line = next(it.islice(f, lineno-1, None)).strip('\n')
1155 '-ex', 'break main',
1156 '-ex', 'break %s:%d' % (path, lineno),
1157 '-ex', 'run',
1158 '--args']
1162 '-ex', 'break %s:%d' % (path, lineno),
1163 '-ex', 'run',
1164 '--args']
1168 '-ex', 'break %s:%d' % (path, lineno),
1169 '-ex', 'ignore 1 %d' % args['gdb_pl'],
1170 '-ex', 'run',
1171 '--args']
1175 sum(1 for _ in re.finditer('[0-9a-f]',
1176 failure.id.split(':', 2)[-1]))
1180 '-ex', 'break %s:%d' % (path, lineno),
1181 '-ex', 'ignore 1 %d' % max(powerlosses-1, 0),
1182 '-ex', 'run',
1183 '--args']
1187 sum(1 for _ in re.finditer('[0-9a-f]',
1188 failure.id.split(':', 2)[-1]))
1192 '-ex', 'break %s:%d' % (path, lineno),
1193 '-ex', 'ignore 1 %d' % powerlosses,
1194 '-ex', 'run',
1195 '--args']
1198 '-ex', 'run',
1199 '-ex', 'frame function raise',
1200 '-ex', 'up 2',
1201 '--args']
1204 '-ex', 'run',
1205 '--args']
1251 '-v', '--verbose',
1255 '--color',
1263 'runner',
1266 help="Test runner to use for testing. Defaults to %r." % RUNNER_PATH)
1272 '-Y', '--summary',
1276 '-l', '--list-suites',
1280 '-L', '--list-cases',
1284 '--list-suite-paths',
1288 '--list-case-paths',
1292 '--list-defines',
1294 help="List all defines in this test-runner.")
1296 '--list-permutation-defines',
1298 help="List explicit defines in this test-runner.")
1300 '--list-implicit-defines',
1302 help="List implicit defines in this test-runner.")
1304 '--list-geometries',
1308 '--list-powerlosses',
1310 help="List the available power-loss scenarios.")
1312 '-D', '--define',
1316 '-G', '--geometry',
1317 help="Comma-separated list of disk geometries to test.")
1319 '-P', '--powerloss',
1320 help="Comma-separated list of power-loss scenarios to test.")
1322 '-d', '--disk',
1325 '-t', '--trace',
1328 '--trace-backtrace',
1332 '--trace-period',
1335 '--trace-freq',
1338 '-O', '--stdout',
1341 '-o', '--output',
1344 '--read-sleep',
1347 '--prog-sleep',
1350 '--erase-sleep',
1353 '-j', '--jobs',
1357 help="Number of parallel runners to run. 0 runs one runner per core.")
1359 '-k', '--keep-going',
1363 '-i', '--isolate',
1367 '-b', '--by-suites',
1371 '-B', '--by-cases',
1375 '--context',
1381 '--gdb',
1385 '--gdb-case',
1390 '--gdb-main',
1395 '--gdb-pl',
1399 '--gdb-pl-before',
1401 help="Drop into gdb before the powerloss that caused the failure.")
1403 '--gdb-pl-after',
1407 '--gdb-path',
1413 '--exec',
1417 '--valgrind',
1420 "--isolate.")
1422 '--valgrind-path',
1428 '-p', '--perf',
1432 '--perf-freq',
1434 "script.")
1436 '--perf-period',
1438 "script.")
1440 '--perf-events',
1442 "script.")
1444 '--perf-script',
1447 help="Path to the perf script to use. Defaults to %r." % PERF_SCRIPT)
1449 '--perf-path',
1452 "directly to the perf script")
1462 '-c', '--compile',
1466 '-s', '--source',
1469 '--include',
1474 '-o', '--output',
1477 # runner/test_paths overlap, so need to do some munging here
1479 args.test_paths = [' '.join(args.runner or [])] + args.test_ids
1480 args.runner = args.runner or [RUNNER_PATH]