提交 7e9f7a59 创建 作者: 宋海霞's avatar 宋海霞

更新 test.py

上级 77904a93
流水线 #156425 已失败 于阶段
用时 8 秒
......@@ -34,9 +34,10 @@ if bCI == False:
"************************************************************\n"
)
from colorama import Fore, init, AnsiToWin32
init(wrap=False)
stream = AnsiToWin32(sys.stderr).stream
if bCI == False:
from colorama import Fore, init, AnsiToWin32
init(wrap=False)
stream = AnsiToWin32(sys.stderr).stream
red = lambda text: '\033[0;31;1m' + text + '\033[0m'
green = lambda text: '\033[0;32;1m' + text + '\033[0m'
......@@ -61,22 +62,22 @@ def compare_file(file1, file2, seqNum, caseCount, bCI, resultFileType, dsType):
if bCI :
promptInfo = "Case{0} 验证成功".format(seqNum)
outputPromptInfo(bCI, promptInfo, Color.green)
#outputPromptInfo(bCI, promptInfo, Color.green)
print("exec-score", int(score))
else:
promptInfo = "Case{0} 验证成功, 分数: {1}".format(seqNum, int(score))
outputPromptInfo(bCI, promptInfo, Color.green)
#outputPromptInfo(bCI, promptInfo, Color.green)
if seqNum == caseCount:
promptInfo = "恭喜你通过了所有测试!"
outputPromptInfo(bCI, promptInfo, Color.green)
#outputPromptInfo(bCI, promptInfo, Color.green)
returnVal = 1
return returnVal
else:
print("文件不同")
promptInfo = "Case{0} 验证失败".format(seqNum)
outputPromptInfo(bCI, promptInfo, Color.green)
#outputPromptInfo(bCI, promptInfo, Color.green)
if bCI == False and resultFileType != ResultFileType.writedat:
text1_lines = read_file(file1)
......@@ -99,30 +100,30 @@ def compare_file(file1, file2, seqNum, caseCount, bCI, resultFileType, dsType):
else:
return returnVal
if bCI == False:
# 1表示绿色,2表示红色,3表示黄色
def outputPromptInfo(bCI, promptInfo, color):
if bCI :
if color == Color.green:
print(green(promptInfo))
elif color == Color.red:
print(red(promptInfo))
elif color == Color.yellow:
print(yellow(promptInfo))
else:
print(promptInfo)
else:
if color == Color.green:
print(Fore.GREEN + promptInfo, file = stream)
elif color == Color.red:
print(Fore.RED + promptInfo, file = stream)
elif color == Color.yellow:
print(Fore.YELLOW + promptInfo, file = stream)
def outputPromptInfo(bCI, promptInfo, color):
if bCI :
if color == Color.green:
print(green(promptInfo))
elif color == Color.red:
print(red(promptInfo))
elif color == Color.yellow:
print(yellow(promptInfo))
else:
print(promptInfo)
else:
print(promptInfo)
print(Fore.WHITE, file = stream)
sys.stdout.flush()
if color == Color.green:
print(Fore.GREEN + promptInfo, file = stream)
elif color == Color.red:
print(Fore.RED + promptInfo, file = stream)
elif color == Color.yellow:
print(Fore.YELLOW + promptInfo, file = stream)
else:
print(promptInfo)
print(Fore.WHITE, file = stream)
sys.stdout.flush()
if __name__ == "__main__":
......@@ -131,12 +132,12 @@ if __name__ == "__main__":
os.remove(compResultFile)
promptInfo = "正在使用 makefile 文件生成项目"
outputPromptInfo(bCI, promptInfo, Color.green)
# outputPromptInfo(bCI, promptInfo, Color.green)
execResult = os.system("make")
if execResult != 0:
errorInfo = "生成项目失败"
outputPromptInfo(bCI, errorInfo, Color.red)
# outputPromptInfo(bCI, errorInfo, Color.red)
exit(1)
else:
score = 40
......@@ -144,12 +145,12 @@ if __name__ == "__main__":
score = 100
if bCI:
promptInfo = "生成项目成功"
outputPromptInfo(bCI, promptInfo, Color.green)
# outputPromptInfo(bCI, promptInfo, Color.green)
promptInfo = "exec-score {0}".format(score)
print(promptInfo)
else:
promptInfo = "生成项目成功, 分数 {0}".format(score)
outputPromptInfo(bCI, promptInfo, Color.green)
# outputPromptInfo(bCI, promptInfo, Color.green)
dsType, dsFileStr, resultFileType, userresultFileStr, resultFileStr = getProjInfo()
......@@ -181,8 +182,8 @@ if __name__ == "__main__":
if bCI :
print(red(promptInfo))
else:
print(Fore.RED + "该项目未提供自动化验证功能", file = stream, end='')
print(Fore.WHITE, file = stream)
# print(Fore.RED + "该项目未提供自动化验证功能", file = stream, end='')
# print(Fore.WHITE, file = stream)
break
if not os.path.isfile(resultFile):
break
......@@ -201,16 +202,16 @@ if __name__ == "__main__":
runCmdStr =getRunProgCmdStr(dsType, resultFileType, dsFile, userresultFile)
promptInfo = "正在执行命令: {0}".format(runCmdStr)
outputPromptInfo(bCI, promptInfo, Color.white)
# outputPromptInfo(bCI, promptInfo, Color.white)
if bCI == False:
promptInfo = "提示:如果验证程序长时间未结束,说明应用程序中可能存在死循环。请停止验证程序(Ctrl+c),修改应用程序后再验证。"
outputPromptInfo(bCI, promptInfo, Color.yellow)
# outputPromptInfo(bCI, promptInfo, Color.yellow)
execResult = os.system(runCmdStr)
if execResult != 0:
errorInfo = "应用程序执行异常,返回值:{0}。".format(execResult)
outputPromptInfo(bCI, errorInfo, Color.red)
# outputPromptInfo(bCI, errorInfo, Color.red)
exit(1)
if os.path.isfile(resultFile) and os.path.isfile(userresultFile):
......@@ -226,7 +227,7 @@ if __name__ == "__main__":
else:
if resultFileType != 3:
promptInfo = "查看文件比较结果可帮助你查找验证失败的原因。方法是:\n选择 View 菜单中的 Explorer 打开文件列表,右键点击 result_comparation.html 文件,在弹出的菜单中选择 Open Preview"
outputPromptInfo(bCI, promptInfo, Color.red)
# outputPromptInfo(bCI, promptInfo, Color.red)
else:
print("选择 View 菜单中的 Explorer 打开文件列表,右键点击 writefile*.dat文件或user_writefile*.dat文件,在弹出的菜单中选择 Open With...,再选择 Hex Editor ")
exit(1)
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论