summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-python/pytest-qt/Manifest1
-rw-r--r--dev-python/pytest-qt/pytest-qt-4.0.0.ebuild59
2 files changed, 60 insertions, 0 deletions
diff --git a/dev-python/pytest-qt/Manifest b/dev-python/pytest-qt/Manifest
index 15c6c8683df4..4357596288ec 100644
--- a/dev-python/pytest-qt/Manifest
+++ b/dev-python/pytest-qt/Manifest
@@ -1 +1,2 @@
DIST pytest-qt-3.3.0.tar.gz 113439 BLAKE2B 1eb486d2d44825058577306ed3b9ade34e6cbad0d90038fe314114bb22c82ae069c9fe66c170591de6c97bad99f5f9e0021c8b3dc38c858b8293a22c448bed74 SHA512 8b3ce7b62621c55fb319966b162cb60663c5ef290f34e62e6a9329e67f530c2bde1329ae0b045b15c99ae14f5f6a5fef9ee930475fa700922c50ee725adf7983
+DIST pytest-qt-4.0.0.tar.gz 113333 BLAKE2B 69c2c8c823b55c44150c7beb0754e90866c7659912dbc0d99ee29904b0a20eadf26939709a5d120d0b95e23bcb99310415932e87934ae84571c55e3ffd07c284 SHA512 cfdde2e82b42979313d96f9a14bdafea0d4d5d5b64b4785ac73b74e36bfb892ab7b5ec6eb1c4e540ec00ccec6739e8bd9a3ffb610f204f6cfe97061f57a3971a
diff --git a/dev-python/pytest-qt/pytest-qt-4.0.0.ebuild b/dev-python/pytest-qt/pytest-qt-4.0.0.ebuild
new file mode 100644
index 000000000000..a86288ff3b73
--- /dev/null
+++ b/dev-python/pytest-qt/pytest-qt-4.0.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..10} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="pytest plugin for PyQt5 and PySide2 applications"
+HOMEPAGE="
+ https://pypi.org/project/pytest-qt/
+ https://github.com/pytest-dev/pytest-qt/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+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} )
+ )
+"
+
+distutils_enable_tests --install pytest
+distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
+
+python_prepare_all() {
+ # This show window test does not work inside the emerge env, as we cannot show windows.
+ # pytestqt.exceptions.TimeoutError: widget <PyQt5.QtWidgets.QWidget object at 0x7f57d8527af8> not activated in 1000 ms.
+ sed -i -e 's:test_wait_window:_&:' tests/test_basics.py || die
+
+ # 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() {
+ distutils_install_for_testing
+ PYTEST_QT_API="pyqt5" epytest
+ if [[ "${EPYTHON}" == "python3.10" ]]; then
+ return
+ else
+ PYTEST_QT_API="pyside2" epytest
+ fi
+}