[V1,2/2] framework/excel_reporter: fix issue of msg exceed xlwt maximum cell length

Message ID 20201113100605.20669-3-haiyangx.zhao@intel.com (mailing list archive)
State Accepted
Headers
Series framework: fix error msg too long cause saving result failed |

Commit Message

Zhao, HaiyangX Nov. 13, 2020, 10:06 a.m. UTC
  truncate msg length if it exceed xlwt maximun cell
legth in case of saving result failed and DTS terminated.

Signed-off-by: Haiyang Zhao <haiyangx.zhao@intel.com>
---
 framework/excel_reporter.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Patch

diff --git a/framework/excel_reporter.py b/framework/excel_reporter.py
index 5b8e4cf..65d26b6 100644
--- a/framework/excel_reporter.py
+++ b/framework/excel_reporter.py
@@ -167,7 +167,7 @@  class ExcelReporter(object):
                 self.sheet.write(self.row, self.col + 1, result)
             else:
                 self.sheet.write(
-                    self.row, self.col + 1, result, self.failed_style)
+                    self.row, self.col + 1, result if len(result) < 5000 else result[:2000] + '\r\n...\r\n...\r\n...\r\n' + result[-2000:], self.failed_style)
 
     def __write_cases(self, dut, target, suite):
         for case in set(self.result.all_test_cases(dut, target, suite)):
@@ -198,7 +198,7 @@  class ExcelReporter(object):
 
     def __write_failed_target(self, dut, target):
         msg = "TARGET ERROR '%s'" % self.result.target_failed_msg(dut, target)
-        self.sheet.write(self.row, self.col + 4, msg, self.failed_style)
+        self.sheet.write(self.row, self.col + 4, msg if len(msg) < 5000 else msg[:2000] + '\r\n...\r\n...\r\n...\r\n' + msg[-2000:], self.failed_style)
         self.row += 1
 
     def __write_targets(self, dut):
@@ -214,7 +214,7 @@  class ExcelReporter(object):
 
     def __write_failed_dut(self, dut):
         msg = "PREREQ FAILED '%s'" % self.result.dut_failed_msg(dut)
-        self.sheet.write(self.row, self.col + 5, msg, self.failed_style)
+        self.sheet.write(self.row, self.col + 5, msg if len(msg) < 5000 else msg[:2000] + '\r\n...\r\n...\r\n...\r\n' + msg[-2000:], self.failed_style)
         self.row += 1
 
     def __parse_result(self):