|
14 | 14 | try:
|
15 | 15 | import PySide.QtCore as _QtCore
|
16 | 16 | QtCore = _QtCore
|
17 |
| - PYSIDE_AVAILABLE = True |
| 17 | + USE_PYSIDE = True |
18 | 18 | except ImportError:
|
19 |
| - PYSIDE_AVAILABLE = False |
| 19 | + USE_PYSIDE = False |
20 | 20 |
|
21 | 21 | FORCE_PYQT = os.environ.get('PYTEST_QT_FORCE_PYQT', 'false') == 'true'
|
22 |
| - if not PYSIDE_AVAILABLE or FORCE_PYQT: |
23 |
| - PYSIDE_AVAILABLE = False |
24 |
| - import sip |
| 22 | + if not USE_PYSIDE or FORCE_PYQT: |
| 23 | + try: |
| 24 | + import sip |
| 25 | + except ImportError: |
| 26 | + msg = 'pytest-qt requires either PyQt4 or PySide to be installed' |
| 27 | + raise ImportError(msg) |
| 28 | + USE_PYSIDE = False |
25 | 29 | sip.setapi('QString', 2)
|
26 | 30 | sip.setapi('QVariant', 2)
|
27 | 31 | import PyQt4.QtCore as _QtCore
|
28 | 32 | QtCore = _QtCore
|
29 | 33 |
|
30 |
| - def _pyside_import_module(moduleName): |
31 |
| - pyside = __import__('PySide', globals(), locals(), [moduleName], 0) |
32 |
| - return getattr(pyside, moduleName) |
33 |
| - |
34 |
| - |
35 |
| - def _pyqt4_import_module(moduleName): |
36 |
| - pyside = __import__('PyQt4', globals(), locals(), [moduleName], 0) |
37 |
| - return getattr(pyside, moduleName) |
38 |
| - |
39 |
| - |
40 |
| - if PYSIDE_AVAILABLE: |
41 |
| - import_module = _pyside_import_module |
| 34 | + if USE_PYSIDE: |
| 35 | + def _import_module(moduleName): |
| 36 | + pyside = __import__('PySide', globals(), locals(), [moduleName], 0) |
| 37 | + return getattr(pyside, moduleName) |
42 | 38 |
|
43 | 39 | Signal = QtCore.Signal
|
44 | 40 | Slot = QtCore.Slot
|
45 | 41 | Property = QtCore.Property
|
46 | 42 | else:
|
47 |
| - import_module = _pyqt4_import_module |
| 43 | + def _import_module(moduleName): |
| 44 | + pyside = __import__('PyQt4', globals(), locals(), [moduleName], 0) |
| 45 | + return getattr(pyside, moduleName) |
48 | 46 |
|
49 | 47 | Signal = QtCore.pyqtSignal
|
50 | 48 | Slot = QtCore.pyqtSlot
|
51 | 49 | Property = QtCore.pyqtProperty
|
52 | 50 |
|
53 | 51 |
|
54 |
| - QtGui = import_module('QtGui') |
55 |
| - QtTest = import_module('QtTest') |
| 52 | + QtGui = _import_module('QtGui') |
| 53 | + QtTest = _import_module('QtTest') |
56 | 54 | Qt = QtCore.Qt
|
57 | 55 | QEvent = QtCore.QEvent
|
58 | 56 |
|
|
0 commit comments