summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYeoh Ee Peng <ee.peng.yeoh@intel.com>2019-11-07 17:50:28 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-11-14 12:55:56 +0000
commit8b2485bc0d0fa2f72b37e8bafbfa663d456ea98c (patch)
treee752c6aabc6140ac944f1e34e51474eaf2ae6c5c
parent8577abce6feb1f529537da554d39e86a5b05ca2d (diff)
downloadopenembedded-core-contrib-8b2485bc0d0fa2f72b37e8bafbfa663d456ea98c.tar.gz
scripts/resulttool/report: Enable output raw test results
In case of debugging, report user need to acccess the raw test result. Instead of going back to source file/directory/URL to manually pull out the raw result, provide alternative way to let report showing raw test results by providing the result id (optional). Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--scripts/lib/resulttool/report.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/scripts/lib/resulttool/report.py b/scripts/lib/resulttool/report.py
index d2d4d1b59d..0c83fb6a74 100644
--- a/scripts/lib/resulttool/report.py
+++ b/scripts/lib/resulttool/report.py
@@ -207,7 +207,7 @@ class ResultsTextReport(object):
maxlen=maxlen)
print(output)
- def view_test_report(self, logger, source_dir, branch, commit, tag, use_regression_map):
+ def view_test_report(self, logger, source_dir, branch, commit, tag, use_regression_map, raw_test):
test_count_reports = []
configmap = resultutils.store_map
if use_regression_map:
@@ -225,6 +225,17 @@ class ResultsTextReport(object):
testresults = resultutils.git_get_result(repo, [tag], configmap=configmap)
else:
testresults = resultutils.load_resultsdata(source_dir, configmap=configmap)
+ if raw_test:
+ raw_results = {}
+ for testsuite in testresults:
+ result = testresults[testsuite].get(raw_test, {})
+ if result:
+ raw_results[testsuite] = result
+ if raw_results:
+ print(json.dumps(raw_results, sort_keys=True, indent=4))
+ else:
+ print('Could not find raw test result for %s' % raw_test)
+ return 0
for testsuite in testresults:
for resultid in testresults[testsuite]:
skip = False
@@ -251,7 +262,8 @@ class ResultsTextReport(object):
def report(args, logger):
report = ResultsTextReport()
- report.view_test_report(logger, args.source_dir, args.branch, args.commit, args.tag, args.use_regression_map)
+ report.view_test_report(logger, args.source_dir, args.branch, args.commit, args.tag, args.use_regression_map,
+ args.raw_test_only)
return 0
def register_commands(subparsers):
@@ -268,4 +280,6 @@ def register_commands(subparsers):
help='source_dir is a git repository, report on the tag specified from that repository')
parser_build.add_argument('-m', '--use_regression_map', action='store_true',
help='instead of the default "store_map", use the "regression_map" for report')
+ parser_build.add_argument('-r', '--raw_test_only', default='',
+ help='output raw test result only for the user provided test result id')