tools: tc-testing: Can refer to $TESTID in test spec
When processing the commands in the test cases, substitute
the test id for $TESTID. This helps to make more flexible
tests. For example, the testid can be given as a command
line argument.
As an example, if we wish to save the test output to a file
named for the test case, we can write in the test case:
"cmdUnderTest": "some test command | tee -a $TESTID.out"
Signed-off-by: Brenda J. Butler <bjb@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/tools/testing/selftests/tc-testing/tdc.py b/tools/testing/selftests/tc-testing/tdc.py
index 241eea3..c05b9f0 100755
--- a/tools/testing/selftests/tc-testing/tdc.py
+++ b/tools/testing/selftests/tc-testing/tdc.py
@@ -177,6 +177,7 @@
'"{}" did not complete successfully'.format(prefix))
def run_one_test(pm, args, index, tidx):
+ global NAMES
result = True
tresult = ""
tap = ""
@@ -184,6 +185,9 @@
print("\t====================\n=====> ", end="")
print("Test " + tidx["id"] + ": " + tidx["name"])
+ # populate NAMES with TESTID for this test
+ NAMES['TESTID'] = tidx['id']
+
pm.call_pre_case(index, tidx['id'])
prepare_env(args, pm, 'setup', "-----> prepare stage", tidx["setup"])
@@ -227,6 +231,8 @@
index += 1
+ # remove TESTID from NAMES
+ del(NAMES['TESTID'])
return tap
def test_runner(pm, args, filtered_tests):