From 8e06097d68b3f2fb9f44324119de5cefb7a42506 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 7 Jun 2021 00:52:25 +0200 Subject: [PATCH] pytest: Use Node.from_parent(...) Fixes https://github.com/docopt/docopt/issues/483 See https://docs.pytest.org/en/stable/deprecations.html#node-construction-changed-to-node-from-parent --- conftest.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/conftest.py b/conftest.py index f5e8c7b..c4c0bb5 100644 --- 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,13 @@ def collect(self): 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(parent=self, + name="%s(%d)" % (name, index), + doc=doc, + case=case) + else: + yield DocoptTestItem("%s(%d)" % (name, index), self, doc, case) index += 1