Skip to content

Commit e053acb

Browse files
Fix QtCompat attributes (#165)
* Fix QtCompat attributes * Add test for QtCompat's __binding_version__ and __qt_version__ * Up version to 0.6.7
1 parent 828b5f6 commit e053acb

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

Qt.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@
6969
self.__modified__ = list() # Existing members modified in some way
7070

7171
# Below members are set dynamically on import relative the original binding.
72-
self.__version__ = "0.6.6"
72+
self.__version__ = "0.6.7"
7373
self.__qt_version__ = "0.0.0"
7474
self.__binding__ = "None"
7575
self.__binding_version__ = "0.0.0"
@@ -159,6 +159,8 @@ def _pyqt5():
159159
_remap(QtCore, "Property", QtCore.pyqtProperty)
160160

161161
_add(QtCompat, "__binding__", PyQt5.__name__)
162+
_add(QtCompat, "__binding_version__", PyQt5.QtCore.PYQT_VERSION_STR)
163+
_add(QtCompat, "__qt_version__", PyQt5.QtCore.QT_VERSION_STR)
162164
_add(QtCompat, "load_ui", lambda fname: uic.loadUi(fname))
163165
_add(QtCompat, "translate", QtCore.QCoreApplication.translate)
164166
_add(QtCompat, "setSectionResizeMode",
@@ -189,7 +191,7 @@ def _pyqt4():
189191

190192
import PyQt4.Qt
191193
from PyQt4 import QtCore, QtGui, uic
192-
194+
193195

194196
_remap(PyQt4, "QtWidgets", QtGui)
195197
_remap(QtCore, "Signal", QtCore.pyqtSignal)
@@ -208,6 +210,8 @@ def _pyqt4():
208210
"QtWebkit is optional in Qt , therefore might not be available"
209211

210212
_add(QtCompat, "__binding__", PyQt4.__name__)
213+
_add(QtCompat, "__binding_version__", PyQt4.QtCore.PYQT_VERSION_STR)
214+
_add(QtCompat, "__qt_version__", PyQt4.QtCore.QT_VERSION_STR)
211215
_add(QtCompat, "load_ui", lambda fname: uic.loadUi(fname))
212216
_add(QtCompat, "setSectionResizeMode", QtGui.QHeaderView.setResizeMode)
213217

@@ -235,6 +239,8 @@ def _pyside2():
235239
_remap(QtCore, "QStringListModel", QtGui.QStringListModel)
236240

237241
_add(QtCompat, "__binding__", PySide2.__name__)
242+
_add(QtCompat, "__binding_version__", PySide2.__version__)
243+
_add(QtCompat, "__qt_version__", PySide2.QtCore.qVersion())
238244
_add(QtCompat, "load_ui", lambda fname: QtUiTools.QUiLoader().load(fname))
239245

240246
_add(QtCompat, "setSectionResizeMode",
@@ -265,6 +271,8 @@ def _pyside():
265271
"QtWebkit is optional in Qt, therefore might not be available"
266272

267273
_add(QtCompat, "__binding__", PySide.__name__)
274+
_add(QtCompat, "__binding_version__", PySide.__version__)
275+
_add(QtCompat, "__qt_version__", PySide.QtCore.qVersion())
268276
_add(QtCompat, "load_ui", lambda fname: QtUiTools.QUiLoader().load(fname))
269277
_add(QtCompat, "setSectionResizeMode", QtGui.QHeaderView.setResizeMode)
270278

tests.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,16 @@ def test_translate_arguments():
337337
assert result == u'Status', result
338338

339339

340+
def test_binding_and_qt_version():
341+
"""QtCompat's __binding_version__ and __qt_version__ populated"""
342+
343+
from Qt import QtCompat
344+
345+
assert QtCompat.__binding_version__ != "0.0.0", ("Binding version was not "
346+
"populated")
347+
assert QtCompat.__qt_version__ != "0.0.0", ("Qt version was not populated")
348+
349+
340350
if binding("PyQt4"):
341351
def test_preferred_pyqt4():
342352
"""QT_PREFERRED_BINDING = PyQt4 properly forces the binding"""

0 commit comments

Comments
 (0)