[dts] [PATCH V1 3/3] update case result write function
Liu, Yong
yong.liu at intel.com
Fri Jun 23 19:05:46 CEST 2017
Huilong, some comments below.
> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of xu,huilong
> Sent: Thursday, June 22, 2017 10:57 PM
> To: dts at dpdk.org
> Cc: Xu, HuilongX <huilongx.xu at intel.com>
> Subject: [dts] [PATCH V1 3/3] update case result write function
>
> update case result write function, all same case only have one test result
> if one time case test result passed, this result will passed and save in
> excel file.
> if all times case test result failed, this resulr will failed and save in
> excel file.
>
> Signed-off-by: xu,huilong <huilongx.xu at intel.com>
> ---
> framework/excel_reporter.py | 25 ++++++++++++++++++++-----
> 1 file changed, 20 insertions(+), 5 deletions(-)
>
> diff --git a/framework/excel_reporter.py b/framework/excel_reporter.py
> index 2030d87..aef50c6 100644
> --- a/framework/excel_reporter.py
> +++ b/framework/excel_reporter.py
> @@ -142,9 +142,23 @@ class ExcelReporter(object):
>
> self.title_style = xlwt.XFStyle()
> self.title_style.font = title_font
> -
> - def __write_result(self, dut, target, suite, case):
> - test_result = self.result.result_for(dut, target, suite, case)
> +
> + def __get_suite_result(self, dut, target, suite, case):
Look like function has been change to get result of certain case. Suggest to change name of this function to __get_case_result.
> + case_list = self.result.all_test_cases(dut, target, suite)
> + if case_list.count(case) > 1:
> + tmp_result = []
> + for case_name in case_list:
> + if case == case_name:
> + test_result = self.result.result_for(dut, target,
> suite, case)
> + if 'PASSED' in test_result:
> + return ['PASSED', '']
Why return result list with two items here and only return one is other condition?
> + else:
> + tmp_result.append(test_result)
> + return tmp_result[-1]
> + else:
> + return self.result.result_for(dut, target, suite, case)
> +
> + def __write_result(self, dut, target, suite, case, test_result):
> if test_result is not None and len(test_result) > 0:
> result = test_result[0]
> if test_result[1] != '':
> @@ -156,13 +170,14 @@ class ExcelReporter(object):
> self.row, self.col + 1, result, self.failed_style)
>
> def __write_cases(self, dut, target, suite):
> - for case in self.result.all_test_cases(dut, target, suite):
> + for case in set(self.result.all_test_cases(dut, target, suite)):
> + result = self.__get_suite_result(dut, target, suite, case)
> self.col += 1
> if case[:5] == "test_":
> self.sheet.write(self.row, self.col, case[5:])
> else:
> self.sheet.write(self.row, self.col, case)
> - self.__write_result(dut, target, suite, case)
> + self.__write_result(dut, target, suite, case, result)
> self.row += 1
> self.col -= 1
>
> --
> 1.9.3
More information about the dts
mailing list