# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools PYPI_PN=${PN/-/.} PYTHON_TESTED=( python3_{11..13} python3_13t pypy3_11 ) # py3.14 seems to have had some doctest changes recently PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_14{,t} ) inherit distutils-r1 pypi DESCRIPTION="Zope testing helpers" HOMEPAGE=" https://pypi.org/project/zope.testing/ https://github.com/zopefoundation/zope.testing/ " LICENSE="ZPL" SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" distutils_enable_tests unittest src_prepare() { local PATCHES=( # https://github.com/zopefoundation/zope.testing/pull/54 "${FILESDIR}/${P}-test.patch" ) distutils-r1_src_prepare # strip rdep specific to namespaces # https://github.com/zopefoundation/zope.testing/pull/53 sed -i -e "/'setuptools'/d" setup.py || die } python_test() { if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then einfo "Skipping tests on ${EPYTHON}" return fi "${EPYTHON}" - <<-EOF || die import sys import unittest from zope.testing.tests import test_suite runner = unittest.TextTestRunner(verbosity=2) result = runner.run(test_suite()) sys.exit(0 if result.wasSuccessful() else 1) EOF }