summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/pytest-qt')
-rw-r--r--dev-python/pytest-qt/Manifest2
-rw-r--r--dev-python/pytest-qt/pytest-qt-4.1.0.ebuild65
-rw-r--r--dev-python/pytest-qt/pytest-qt-4.4.0.ebuild78
3 files changed, 79 insertions, 66 deletions
diff --git a/dev-python/pytest-qt/Manifest b/dev-python/pytest-qt/Manifest
index 794f27a65f05..0acc509ef1d1 100644
--- a/dev-python/pytest-qt/Manifest
+++ b/dev-python/pytest-qt/Manifest
@@ -1 +1 @@
-DIST pytest-qt-4.1.0.tar.gz 119702 BLAKE2B 7c906c94761df6472ae65a6ebb38dff07de8156730e3e10615ea8e08f0bd9f9fee07127ee6e8616055117b1db1911bc9b4486345d84b249664d317561195ad77 SHA512 bfb56abbaac47bf9da26eb19d6913d59872f2a9923da339e9a30a2145d0a094ddec36bcfa21d39c4cf318f95a83c72c249fe70034294a6791f9d84345f77451d
+DIST pytest-qt-4.4.0.tar.gz 125443 BLAKE2B db2653ffd220e6507edd9cd2610904e5d9c1f5b39edf7b2d5043ecb7951361a6bf75618c9847b62432e0182433f2df528fce300888cca405bdc03502d6ebe717 SHA512 57c6a1866c7685db5301faa42298f11ef3d3a030cbc72fb109a8d6166621625fac89365671f781e5c3d652a190567bec3bae6f12cdab20812f43c7ef8e4518fa
diff --git a/dev-python/pytest-qt/pytest-qt-4.1.0.ebuild b/dev-python/pytest-qt/pytest-qt-4.1.0.ebuild
deleted file mode 100644
index 721c620d61c8..000000000000
--- a/dev-python/pytest-qt/pytest-qt-4.1.0.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8..11} )
-PYSIDE2_COMPAT=( python3_{8..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 ~arm64 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}]
- ' "${PYSIDE2_COMPAT[@]}")
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
-
-src_test() {
- virtx distutils-r1_src_test
-}
-
-python_test() {
- # warnings from other plugins cause the test output matchers to fail
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=pytestqt.plugin
-
- local EPYTEST_DESELECT=(
- # requires the window to be activated; that doesn't seem
- # to be possible inside Xvfb
- "tests/test_basics.py::test_wait_window[waitActive-True]"
-
- # we are forcing a specific module via envvar, effectively
- # overriding the config
- tests/test_basics.py::test_qt_api_ini_config
- tests/test_basics.py::test_qt_api_ini_config_with_envvar
- )
-
- einfo "Testing with PyQt5"
- PYTEST_QT_API="pyqt5" epytest || die
- # Pyside2 is not compatible with python3.11
- if has "${EPYTHON}" "${PYSIDE2_COMPAT[@]/_/.}"; then
- einfo "Testing with PySide2"
- PYTEST_QT_API="pyside2" epytest || die
- fi
-}
diff --git a/dev-python/pytest-qt/pytest-qt-4.4.0.ebuild b/dev-python/pytest-qt/pytest-qt-4.4.0.ebuild
new file mode 100644
index 000000000000..176925a3be36
--- /dev/null
+++ b/dev-python/pytest-qt/pytest-qt-4.4.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+PYSIDE2_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 virtualx pypi
+
+DESCRIPTION="Pytest plugin for PyQt5 and PySide2 applications"
+HOMEPAGE="
+ https://pypi.org/project/pytest-qt/
+ https://github.com/pytest-dev/pytest-qt/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
+
+RDEPEND="
+ dev-python/QtPy[gui,testlib,widgets(+),${PYTHON_USEDEP}]
+ >=dev-python/pluggy-1.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ || (
+ dev-python/PyQt6[gui,testlib,widgets,${PYTHON_USEDEP}]
+ dev-python/PyQt5[gui,testlib,widgets,${PYTHON_USEDEP}]
+ dev-python/pyside6[gui,testlib,widgets,${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/pyside2[gui,testlib,widgets,${PYTHON_USEDEP}]
+ ' "${PYSIDE2_COMPAT[@]}")
+ )
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ # warnings from other plugins cause the test output matchers to fail
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=pytestqt.plugin
+
+ local EPYTEST_DESELECT=(
+ # requires the window to be activated; that doesn't seem
+ # to be possible inside Xvfb
+ "tests/test_basics.py::test_wait_window[waitActive-True]"
+
+ # TODO
+ tests/test_exceptions.py::test_exceptions_dont_leak
+
+ # we are forcing a specific module via envvar, effectively
+ # overriding the config
+ tests/test_basics.py::test_qt_api_ini_config
+ tests/test_basics.py::test_qt_api_ini_config_with_envvar
+ )
+
+ local -x PYTEST_QT_API
+ for PYTEST_QT_API in PyQt{5,6} pyside{2,6}; do
+ if has_version "dev-python/${PYTEST_QT_API}[gui,testlib,widgets,${PYTHON_USEDEP}]"
+ then
+ einfo "Testing with ${EPYTHON} and ${PYTEST_QT_API}"
+ # force-disable xfail_strict as upstream as xfail assumptions
+ # don't seem to hold on arm64
+ nonfatal epytest -oxfail_strict=false ||
+ die -n "Tests failed with ${EPYTHON} and ${PYTEST_QT_API}" ||
+ return 1
+ fi
+ done
+}