src/eric7/Testing/Interfaces/UnittestExecutor.py

branch
eric7-maintenance
changeset 9549
67295777d9fe
parent 9442
906485dcd210
parent 9547
38fa6ca90253
child 9654
7328efba128b
equal deleted inserted replaced
9451:24c847222774 9549:67295777d9fe
10 import contextlib 10 import contextlib
11 import json 11 import json
12 import os 12 import os
13 import re 13 import re
14 14
15 from PyQt6.QtCore import pyqtSlot, QProcess 15 from PyQt6.QtCore import QProcess, pyqtSlot
16 16
17 from eric7.EricNetwork.EricJsonStreamReader import EricJsonReader 17 from eric7.EricNetwork.EricJsonStreamReader import EricJsonReader
18 18
19 from .TestExecutorBase import TestExecutorBase, TestResult, TestResultCategory 19 from .TestExecutorBase import TestExecutorBase, TestResult, TestResultCategory
20 20
220 filename = fmatch.group(1) 220 filename = fmatch.group(1)
221 lineno = int(fmatch.group(2)) 221 lineno = int(fmatch.group(2))
222 222
223 message = data.get("shortmsg", "") 223 message = data.get("shortmsg", "")
224 if not message and tracebackLines: 224 if not message and tracebackLines:
225 message = tracebackLines[-1].split(":", 1)[1].strip() 225 # search the line containing the assertion error
226 for index in range(len(tracebackLines) - 1, -1, -1):
227 line = tracebackLines[index].strip()
228 if line.startswith("AssertionError:"):
229 message = line.replace("AssertionError:", "").strip()
230 break
226 231
227 self.testResult.emit( 232 self.testResult.emit(
228 TestResult( 233 TestResult(
229 category=self.__statusCategoryMapping[data["status"]], 234 category=self.__statusCategoryMapping[data["status"]],
230 status=self.__statusDisplayMapping[data["status"]], 235 status=self.__statusDisplayMapping[data["status"]],

eric ide

mercurial