import re
class LogHelper:
def __init__(self):
self.report_message = ""
def get_script_list(self, message, log_type=LogType.Null, is_title=False):
"""
:param message 需要进行现实的信息
:param log_type 打印的类型,分配颜色,根据enum LogType Null => 根据结果
Info => 浅黑 Primary => 蓝色 Warn => 黄色 Danger => 红色
Message => 橙色 Detail => 浅灰
:param is_title 是否为标题
:return script_list 数组=> 需要运行的js的命令
"""
message = message.replace("\n", "").replace("\r", "")
self.report_message += message + "\n"
script_list = []
if is_title:
title_flag = "1"
else:
title_flag = "0"
script_message = "addLog('" + message + "'," + str(log_type.value) + "," + title_flag + ")"
try:
if re.match(r"^(addLog)\(.*\)$", script_message, flags=re.I | re.S | re.M):
script_list.append(script_message)
if message.find("result") != -1:
index = message.find(":")
script_list.append(self.change_result_color(message[index + 1:]))
return script_list
except Exception as e:
raise OSError("添加日志错误 ==> " + str(e))
def change_result_color(self, message):
script_message = "changeResultColor('" + message + "')"
return script_message
@staticmethod
def get_result_type(result):
"""
:param result 结果类型
"""
result = result.lower()
if result.find("pass") != -1:
return ResultType.Pass
elif result.find("fail") != -1:
return ResultType.Fail
elif result.find("unknown") != -1:
return ResultType.Unknown
elif result.find("shutdown") != -1:
return ResultType.Shutdown
def get_report_message(self):
"""
获取打印的所有的日志
"""
return self.report_message
def get_clear_report_script(self):
"""
获取清空报文取得script
"""
self.report_message = ""
return "destroyAllElement()"