commit:     c9c1bf1e893fe61b671a6e9ecb8ec1547b20fbc6
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Feb  8 04:10:20 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Feb  8 04:22:37 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9c1bf1e

dev-python/pytest-qt: Bump to 4.4.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/pytest-qt/Manifest               |  1 +
 dev-python/pytest-qt/pytest-qt-4.4.0.ebuild | 78 +++++++++++++++++++++++++++++
 2 files changed, 79 insertions(+)

diff --git a/dev-python/pytest-qt/Manifest b/dev-python/pytest-qt/Manifest
index d63f06fc8096..5be420851471 100644
--- a/dev-python/pytest-qt/Manifest
+++ b/dev-python/pytest-qt/Manifest
@@ -1 +1,2 @@
 DIST pytest-qt-4.3.1.tar.gz 125223 BLAKE2B 
b7ea852b4f0a97950ff4b8f03983639a30dcd8b3532a52f0d78a5074d1220817a0853a040eba71798fd74fba27cd77eeafff2cf12b177693d77f9bd954d841a4
 SHA512 
e77bd0817f9dfb492ddcd9cb605b07d1e468ce7b52dce7519f2f96afd004f7796a028998572c589444e9737278a84efb887c801fb3bcc79a71c48ab849070114
+DIST pytest-qt-4.4.0.tar.gz 125443 BLAKE2B 
db2653ffd220e6507edd9cd2610904e5d9c1f5b39edf7b2d5043ecb7951361a6bf75618c9847b62432e0182433f2df528fce300888cca405bdc03502d6ebe717
 SHA512 
57c6a1866c7685db5301faa42298f11ef3d3a030cbc72fb109a8d6166621625fac89365671f781e5c3d652a190567bec3bae6f12cdab20812f43c7ef8e4518fa

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..66e09e0d7f4f
--- /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
+}

Reply via email to