|
@@ -741,8 +741,8 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
passed_suite_perms = co.defaultdict(lambda: 0)
|
|
passed_suite_perms = co.defaultdict(lambda: 0)
|
|
|
passed_case_perms = co.defaultdict(lambda: 0)
|
|
passed_case_perms = co.defaultdict(lambda: 0)
|
|
|
passed_perms = 0
|
|
passed_perms = 0
|
|
|
- read = 0
|
|
|
|
|
- prog = 0
|
|
|
|
|
|
|
+ readed = 0
|
|
|
|
|
+ proged = 0
|
|
|
erased = 0
|
|
erased = 0
|
|
|
failures = []
|
|
failures = []
|
|
|
killed = False
|
|
killed = False
|
|
@@ -750,8 +750,8 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
pattern = re.compile('^(?:'
|
|
pattern = re.compile('^(?:'
|
|
|
'(?P<op>running|finished|skipped|powerloss)'
|
|
'(?P<op>running|finished|skipped|powerloss)'
|
|
|
' (?P<id>(?P<case>[^:]+)[^\s]*)'
|
|
' (?P<id>(?P<case>[^:]+)[^\s]*)'
|
|
|
- '(?: (?P<read>\d+))?'
|
|
|
|
|
- '(?: (?P<prog>\d+))?'
|
|
|
|
|
|
|
+ '(?: (?P<readed>\d+))?'
|
|
|
|
|
+ '(?: (?P<proged>\d+))?'
|
|
|
'(?: (?P<erased>\d+))?'
|
|
'(?: (?P<erased>\d+))?'
|
|
|
'|' '(?P<path>[^:]+):(?P<lineno>\d+):(?P<op_>assert):'
|
|
'|' '(?P<path>[^:]+):(?P<lineno>\d+):(?P<op_>assert):'
|
|
|
' *(?P<message>.*)'
|
|
' *(?P<message>.*)'
|
|
@@ -763,8 +763,8 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
nonlocal passed_suite_perms
|
|
nonlocal passed_suite_perms
|
|
|
nonlocal passed_case_perms
|
|
nonlocal passed_case_perms
|
|
|
nonlocal passed_perms
|
|
nonlocal passed_perms
|
|
|
- nonlocal read
|
|
|
|
|
- nonlocal prog
|
|
|
|
|
|
|
+ nonlocal readed
|
|
|
|
|
+ nonlocal proged
|
|
|
nonlocal erased
|
|
nonlocal erased
|
|
|
nonlocal locals
|
|
nonlocal locals
|
|
|
|
|
|
|
@@ -821,14 +821,14 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
elif op == 'finished':
|
|
elif op == 'finished':
|
|
|
case = m.group('case')
|
|
case = m.group('case')
|
|
|
suite = case_suites[case]
|
|
suite = case_suites[case]
|
|
|
- read_ = int(m.group('read'))
|
|
|
|
|
- prog_ = int(m.group('prog'))
|
|
|
|
|
|
|
+ readed_ = int(m.group('readed'))
|
|
|
|
|
+ proged_ = int(m.group('proged'))
|
|
|
erased_ = int(m.group('erased'))
|
|
erased_ = int(m.group('erased'))
|
|
|
passed_suite_perms[suite] += 1
|
|
passed_suite_perms[suite] += 1
|
|
|
passed_case_perms[case] += 1
|
|
passed_case_perms[case] += 1
|
|
|
passed_perms += 1
|
|
passed_perms += 1
|
|
|
- read += read_
|
|
|
|
|
- prog += prog_
|
|
|
|
|
|
|
+ readed += readed_
|
|
|
|
|
+ proged += proged_
|
|
|
erased += erased_
|
|
erased += erased_
|
|
|
if output_:
|
|
if output_:
|
|
|
# get defines and write to csv
|
|
# get defines and write to csv
|
|
@@ -837,8 +837,8 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
output_.writerow({
|
|
output_.writerow({
|
|
|
'suite': suite,
|
|
'suite': suite,
|
|
|
'case': case,
|
|
'case': case,
|
|
|
- 'bench_read': read_,
|
|
|
|
|
- 'bench_prog': prog_,
|
|
|
|
|
|
|
+ 'bench_readed': readed_,
|
|
|
|
|
+ 'bench_proged': proged_,
|
|
|
'bench_erased': erased_,
|
|
'bench_erased': erased_,
|
|
|
**defines})
|
|
**defines})
|
|
|
elif op == 'skipped':
|
|
elif op == 'skipped':
|
|
@@ -980,8 +980,8 @@ def run_stage(name, runner_, ids, output_, **args):
|
|
|
return (
|
|
return (
|
|
|
expected_perms,
|
|
expected_perms,
|
|
|
passed_perms,
|
|
passed_perms,
|
|
|
- read,
|
|
|
|
|
- prog,
|
|
|
|
|
|
|
+ readed,
|
|
|
|
|
+ proged,
|
|
|
erased,
|
|
erased,
|
|
|
failures,
|
|
failures,
|
|
|
killed)
|
|
killed)
|
|
@@ -1018,7 +1018,7 @@ def run(runner, bench_ids=[], **args):
|
|
|
if args.get('output'):
|
|
if args.get('output'):
|
|
|
output = BenchOutput(args['output'],
|
|
output = BenchOutput(args['output'],
|
|
|
['suite', 'case'],
|
|
['suite', 'case'],
|
|
|
- ['bench_read', 'bench_prog', 'bench_erased'])
|
|
|
|
|
|
|
+ ['bench_readed', 'bench_proged', 'bench_erased'])
|
|
|
|
|
|
|
|
# measure runtime
|
|
# measure runtime
|
|
|
start = time.time()
|
|
start = time.time()
|
|
@@ -1026,8 +1026,8 @@ def run(runner, bench_ids=[], **args):
|
|
|
# spawn runners
|
|
# spawn runners
|
|
|
expected = 0
|
|
expected = 0
|
|
|
passed = 0
|
|
passed = 0
|
|
|
- read = 0
|
|
|
|
|
- prog = 0
|
|
|
|
|
|
|
+ readed = 0
|
|
|
|
|
+ proged = 0
|
|
|
erased = 0
|
|
erased = 0
|
|
|
failures = []
|
|
failures = []
|
|
|
for by in (expected_case_perms.keys() if args.get('by_cases')
|
|
for by in (expected_case_perms.keys() if args.get('by_cases')
|
|
@@ -1036,8 +1036,8 @@ def run(runner, bench_ids=[], **args):
|
|
|
# spawn jobs for stage
|
|
# spawn jobs for stage
|
|
|
(expected_,
|
|
(expected_,
|
|
|
passed_,
|
|
passed_,
|
|
|
- read_,
|
|
|
|
|
- prog_,
|
|
|
|
|
|
|
+ readed_,
|
|
|
|
|
+ proged_,
|
|
|
erased_,
|
|
erased_,
|
|
|
failures_,
|
|
failures_,
|
|
|
killed) = run_stage(
|
|
killed) = run_stage(
|
|
@@ -1049,8 +1049,8 @@ def run(runner, bench_ids=[], **args):
|
|
|
# collect passes/failures
|
|
# collect passes/failures
|
|
|
expected += expected_
|
|
expected += expected_
|
|
|
passed += passed_
|
|
passed += passed_
|
|
|
- read += read_
|
|
|
|
|
- prog += prog_
|
|
|
|
|
|
|
+ readed += readed_
|
|
|
|
|
+ proged += proged_
|
|
|
erased += erased_
|
|
erased += erased_
|
|
|
failures.extend(failures_)
|
|
failures.extend(failures_)
|
|
|
if (failures and not args.get('keep_going')) or killed:
|
|
if (failures and not args.get('keep_going')) or killed:
|
|
@@ -1072,8 +1072,8 @@ def run(runner, bench_ids=[], **args):
|
|
|
if args['color'] else '',
|
|
if args['color'] else '',
|
|
|
'\x1b[m' if args['color'] else '',
|
|
'\x1b[m' if args['color'] else '',
|
|
|
', '.join(filter(None, [
|
|
', '.join(filter(None, [
|
|
|
- '%d read' % read,
|
|
|
|
|
- '%d prog' % prog,
|
|
|
|
|
|
|
+ '%d readed' % readed,
|
|
|
|
|
+ '%d proged' % proged,
|
|
|
'%d erased' % erased,
|
|
'%d erased' % erased,
|
|
|
'in %.2fs' % (stop-start)]))))
|
|
'in %.2fs' % (stop-start)]))))
|
|
|
print()
|
|
print()
|