提交 efab163b 编写于 作者: B Brenda J. Butler 提交者: David S. Miller

tools: tc-testing: Add notap option

Add a command line arg to suppress tap output.  Handy in case
all the tap output is being supplied by the plugins.
Signed-off-by: NBrenda J. Butler <bjb@mojatatu.com>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 b33cc2ce
...@@ -241,12 +241,17 @@ def test_runner(pm, args, filtered_tests): ...@@ -241,12 +241,17 @@ def test_runner(pm, args, filtered_tests):
testlist = filtered_tests testlist = filtered_tests
tcount = len(testlist) tcount = len(testlist)
index = 1 index = 1
tap = str(index) + ".." + str(tcount) + "\n" tap = ''
badtest = None badtest = None
stage = None stage = None
emergency_exit = False emergency_exit = False
emergency_exit_message = '' emergency_exit_message = ''
if args.notap:
if args.verbose:
tap = 'notap requested: omitting test plan\n'
else:
tap = str(index) + ".." + str(tcount) + "\n"
try: try:
pm.call_pre_suite(tcount, [tidx['id'] for tidx in testlist]) pm.call_pre_suite(tcount, [tidx['id'] for tidx in testlist])
except Exception as ee: except Exception as ee:
...@@ -303,15 +308,16 @@ def test_runner(pm, args, filtered_tests): ...@@ -303,15 +308,16 @@ def test_runner(pm, args, filtered_tests):
# if we failed in setup or teardown, # if we failed in setup or teardown,
# fill in the remaining tests with ok-skipped # fill in the remaining tests with ok-skipped
count = index count = index
tap += 'about to flush the tap output if tests need to be skipped\n' if not args.notap:
if tcount + 1 != index: tap += 'about to flush the tap output if tests need to be skipped\n'
for tidx in testlist[index - 1:]: if tcount + 1 != index:
msg = 'skipped - previous {} failed'.format(stage) for tidx in testlist[index - 1:]:
tap += 'ok {} - {} # {} {} {}\n'.format( msg = 'skipped - previous {} failed'.format(stage)
count, tidx['id'], msg, index, badtest.get('id', '--Unknown--')) tap += 'ok {} - {} # {} {} {}\n'.format(
count += 1 count, tidx['id'], msg, index, badtest.get('id', '--Unknown--'))
count += 1
tap += 'done flushing skipped test tap output\n'
tap += 'done flushing skipped test tap output\n'
pm.call_post_suite(index) pm.call_post_suite(index)
return tap return tap
...@@ -389,6 +395,9 @@ def set_args(parser): ...@@ -389,6 +395,9 @@ def set_args(parser):
parser.add_argument( parser.add_argument(
'-v', '--verbose', action='count', default=0, '-v', '--verbose', action='count', default=0,
help='Show the commands that are being run') help='Show the commands that are being run')
parser.add_argument(
'-N', '--notap', action='store_true',
help='Suppress tap results for command under test')
parser.add_argument('-d', '--device', parser.add_argument('-d', '--device',
help='Execute the test case in flower category') help='Execute the test case in flower category')
return parser return parser
...@@ -601,7 +610,10 @@ def set_operation_mode(pm, args): ...@@ -601,7 +610,10 @@ def set_operation_mode(pm, args):
catresults = test_runner(pm, args, alltests) catresults = test_runner(pm, args, alltests)
else: else:
catresults = 'No tests found\n' catresults = 'No tests found\n'
print('All test results: \n\n{}'.format(catresults)) if args.notap:
print('Tap output suppression requested\n')
else:
print('All test results: \n\n{}'.format(catresults))
def main(): def main():
""" """
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册