4
4
import re
5
5
from py ._code .code import TerminalRepr , ReprFileLocation
6
6
import pytest
7
- from pytestqt .qt_compat import qInstallMsgHandler , qInstallMessageHandler , \
8
- QtDebugMsg , QtWarningMsg , QtCriticalMsg , QtFatalMsg
7
+ from pytestqt .qt_compat import qt_api
9
8
10
9
11
10
class QtLoggingPlugin (object ):
@@ -71,6 +70,12 @@ def pytest_runtest_makereport(self, item, call):
71
70
long_repr = getattr (report , 'longrepr' , None )
72
71
if hasattr (long_repr , 'addsection' ): # pragma: no cover
73
72
log_format = self .config .getoption ('qt_log_format' )
73
+ if log_format is None :
74
+ if qt_api .pytest_qt_api == 'pyqt5' :
75
+ log_format = '{rec.context.file}:{rec.context.function}:' \
76
+ '{rec.context.line}:\n {rec.type_name}: {rec.message}'
77
+ else :
78
+ log_format = '{rec.type_name}: {rec.message}'
74
79
lines = []
75
80
for rec in item .qt_log_capture .records :
76
81
suffix = ' (IGNORED)' if rec .ignored else ''
@@ -103,23 +108,23 @@ def _start(self):
103
108
"""
104
109
Start receiving messages from Qt.
105
110
"""
106
- if qInstallMsgHandler :
107
- previous_handler = qInstallMsgHandler (self ._handle_no_context )
111
+ if qt_api . qInstallMsgHandler :
112
+ previous_handler = qt_api . qInstallMsgHandler (self ._handle_no_context )
108
113
else :
109
- assert qInstallMessageHandler
110
- previous_handler = qInstallMessageHandler (self ._handle_with_context )
114
+ assert qt_api . qInstallMessageHandler
115
+ previous_handler = qt_api . qInstallMessageHandler (self ._handle_with_context )
111
116
self ._previous_handler = previous_handler
112
117
113
118
def _stop (self ):
114
119
"""
115
120
Stop receiving messages from Qt, restoring the previously installed
116
121
handler.
117
122
"""
118
- if qInstallMsgHandler :
119
- qInstallMsgHandler (self ._previous_handler )
123
+ if qt_api . qInstallMsgHandler :
124
+ qt_api . qInstallMsgHandler (self ._previous_handler )
120
125
else :
121
- assert qInstallMessageHandler
122
- qInstallMessageHandler (self ._previous_handler )
126
+ assert qt_api . qInstallMessageHandler
127
+ qt_api . qInstallMessageHandler (self ._previous_handler )
123
128
124
129
@contextmanager
125
130
def disabled (self ):
@@ -230,10 +235,10 @@ def _get_msg_type_name(cls, msg_type):
230
235
"""
231
236
if not getattr (cls , '_type_name_map' , None ):
232
237
cls ._type_name_map = {
233
- QtDebugMsg : 'QtDebugMsg' ,
234
- QtWarningMsg : 'QtWarningMsg' ,
235
- QtCriticalMsg : 'QtCriticalMsg' ,
236
- QtFatalMsg : 'QtFatalMsg' ,
238
+ qt_api . QtDebugMsg : 'QtDebugMsg' ,
239
+ qt_api . QtWarningMsg : 'QtWarningMsg' ,
240
+ qt_api . QtCriticalMsg : 'QtCriticalMsg' ,
241
+ qt_api . QtFatalMsg : 'QtFatalMsg' ,
237
242
}
238
243
return cls ._type_name_map [msg_type ]
239
244
@@ -245,10 +250,10 @@ def _get_log_type_name(cls, msg_type):
245
250
"""
246
251
if not getattr (cls , '_log_type_name_map' , None ):
247
252
cls ._log_type_name_map = {
248
- QtDebugMsg : 'DEBUG' ,
249
- QtWarningMsg : 'WARNING' ,
250
- QtCriticalMsg : 'CRITICAL' ,
251
- QtFatalMsg : 'FATAL' ,
253
+ qt_api . QtDebugMsg : 'DEBUG' ,
254
+ qt_api . QtWarningMsg : 'WARNING' ,
255
+ qt_api . QtCriticalMsg : 'CRITICAL' ,
256
+ qt_api . QtFatalMsg : 'FATAL' ,
252
257
}
253
258
return cls ._log_type_name_map [msg_type ]
254
259
0 commit comments