diff options
Diffstat (limited to 'dev-python/pytest-qt/pytest-qt-3.3.0.ebuild')
-rw-r--r-- | dev-python/pytest-qt/pytest-qt-3.3.0.ebuild | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/dev-python/pytest-qt/pytest-qt-3.3.0.ebuild b/dev-python/pytest-qt/pytest-qt-3.3.0.ebuild index 9d310725f1e6..8e4e3f6611c2 100644 --- a/dev-python/pytest-qt/pytest-qt-3.3.0.ebuild +++ b/dev-python/pytest-qt/pytest-qt-3.3.0.ebuild @@ -1,13 +1,13 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{7,8,9} ) +PYTHON_COMPAT=( python3_{7..10} ) inherit distutils-r1 virtualx -DESCRIPTION="pytest plugin for PyQt4 or PyQt5 applications" +DESCRIPTION="pytest plugin for PyQt5 and PySide2 applications" HOMEPAGE=" https://pypi.org/project/pytest-qt/ https://github.com/pytest-dev/pytest-qt/" @@ -17,7 +17,15 @@ LICENSE="MIT" SLOT="0" KEYWORDS="amd64 x86" -DEPEND="dev-python/QtPy[gui,testlib,${PYTHON_USEDEP}]" +RDEPEND="dev-python/QtPy[gui,testlib,widgets(+),${PYTHON_USEDEP}]" +BDEPEND=" + test? ( + dev-python/PyQt5[gui,testlib,widgets,${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/pyside2[gui,testlib,widgets,${PYTHON_USEDEP}] + ' python3_{7..9} ) + ) +" # Patch 1 skips a test that does not work inside the emerge environment: # pytestqt.exceptions.TimeoutError: widget <PyQt5.QtWidgets.QWidget object at 0x7f57d8527af8> not activated in 1000 ms. @@ -30,14 +38,26 @@ PATCHES=( distutils_enable_tests pytest distutils_enable_sphinx docs dev-python/sphinx_rtd_theme +python_prepare_all() { + # This is not going to work since we want to test both implementations + # and therefore pull in both and explicitly set PYTEST_QT_API + sed -i -e 's:test_qt_api_ini_config_with_envvar:_&:' \ + -e 's:test_qt_api_ini_config:_&:' \ + tests/test_basics.py || die + + distutils-r1_python_prepare_all +} + +src_test() { + virtx python_foreach_impl python_test +} + python_test() { - pytest_qt_test() { - # pytest-qt test fail to test in ${BUILDIR}/lib - # if and only if pytest-qt is not already installed - # test do work if executed directly in the extracted tarball - local PYTHONPATH="${WORKDIR}/${P}" - pytest -vv - } - - virtx pytest_qt_test + distutils_install_for_testing + PYTEST_QT_API="pyqt5" epytest + if [[ "${EPYTHON}" == "python3.10" ]]; then + return + else + PYTEST_QT_API="pyside2" epytest + fi } |