dev-python/docopt: make tests compatible with >=pytest-6

While at it, remove bits which are now handled by the eclass.

Invoking maintainer time-out.

Closes: https://bugs.gentoo.org/737924
Signed-off-by: Marek Szuba <marecki@gentoo.org>
This commit is contained in:
Marek Szuba
2021-06-22 13:57:54 +01:00
parent 14fd502bae
commit bc9ab1a2ab
2 changed files with 48 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( pypy3 python3_{8..10} )
inherit distutils-r1
DESCRIPTION="Pythonic argument parser, that will make you smile"
HOMEPAGE="https://pypi.org/project/docopt/ https://github.com/docopt/docopt"
SRC_URI="https://github.com/docopt/docopt/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
PATCHES=(
"${FILESDIR}"/${PN}-0.6.2-pytest_node_from_parent.patch
)
distutils_enable_tests pytest

View File

@@ -0,0 +1,26 @@
--- a/conftest.py
+++ b/conftest.py
@@ -11,7 +11,10 @@
def pytest_collect_file(path, parent):
if path.ext == ".docopt" and path.basename.startswith("test"):
- return DocoptTestFile(path, parent)
+ if hasattr(DocoptTestFile, "from_parent"):
+ return DocoptTestFile.from_parent(parent, fspath=path)
+ else:
+ return DocoptTestFile(path, parent)
def parse_test(raw):
@@ -41,7 +44,10 @@
for name, doc, cases in parse_test(raw):
name = self.fspath.purebasename
for case in cases:
- yield DocoptTestItem("%s(%d)" % (name, index), self, doc, case)
+ if hasattr(DocoptTestItem, "from_parent"):
+ yield DocoptTestItem.from_parent(self, name="%s(%d)" % (name, index), doc=doc, case=case)
+ else:
+ yield DocoptTestItem("%s(%d)" % (name, index), self, doc, case)
index += 1