[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