From c1ca42b5c264b4ea1b4591bc12e08bd740ba4987 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Fri, 10 Jul 2020 22:29:06 +0300 Subject: [PATCH] mark/structure: fix pylint complaining that builtin marks are not callable --- src/_pytest/mark/structures.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/_pytest/mark/structures.py b/src/_pytest/mark/structures.py index 0c9344f3f..ffa6b78a2 100644 --- a/src/_pytest/mark/structures.py +++ b/src/_pytest/mark/structures.py @@ -4,6 +4,7 @@ import typing import warnings from typing import Any from typing import Callable +from typing import cast from typing import Iterable from typing import List from typing import Mapping @@ -467,12 +468,14 @@ class MarkGenerator: # See TYPE_CHECKING above. if TYPE_CHECKING: - skip = None # type: _SkipMarkDecorator - skipif = None # type: _SkipifMarkDecorator - xfail = None # type: _XfailMarkDecorator - parametrize = None # type: _ParametrizeMarkDecorator - usefixtures = None # type: _UsefixturesMarkDecorator - filterwarnings = None # type: _FilterwarningsMarkDecorator + # Using casts instead of type comments intentionally - issue #7473. + # TODO(py36): Change to builtin annotation syntax. + skip = cast(_SkipMarkDecorator, None) + skipif = cast(_SkipifMarkDecorator, None) + xfail = cast(_XfailMarkDecorator, None) + parametrize = cast(_ParametrizeMarkDecorator, None) + usefixtures = cast(_UsefixturesMarkDecorator, None) + filterwarnings = cast(_FilterwarningsMarkDecorator, None) def __getattr__(self, name: str) -> MarkDecorator: if name[0] == "_":