nodes: keep plugins which subclass Item, File working for a bit more

Fix #8435.
This commit is contained in:
Ran Benita 2021-11-08 09:17:46 +02:00
parent 86446edc86
commit 9f6cd8e916
2 changed files with 7 additions and 3 deletions

View File

@ -669,9 +669,13 @@ class Item(Node):
nodeid: Optional[str] = None,
**kw,
) -> None:
# The first two arguments are intentionally passed postionally,
# to keep plugins who define a node type which inherits from
# (pytest.Item, pytest.File) working (see issue #8435).
# They can be made kwargs when the deprecation above is done.
super().__init__(
name=name,
parent=parent,
name,
parent,
config=config,
session=session,
nodeid=nodeid,

View File

@ -71,7 +71,7 @@ def test_subclassing_both_item_and_collector_deprecated(
),
):
class SoWrong(nodes.File, nodes.Item):
class SoWrong(nodes.Item, nodes.File):
def __init__(self, fspath, parent):
"""Legacy ctor with legacy call # don't wana see"""
super().__init__(fspath, parent)