[8.0.x] Improve error message when using @pytest.fixture twice (#11958)

Co-authored-by: Florian Bruhin <me@the-compiler.org>
This commit is contained in:
github-actions[bot]
2024-02-09 14:34:45 +00:00
committed by GitHub
parent 23b91d12de
commit e6f6be3bc9
2 changed files with 22 additions and 1 deletions

View File

@@ -4352,6 +4352,27 @@ def test_call_fixture_function_error():
assert fix() == 1
def test_fixture_double_decorator(pytester: Pytester) -> None:
"""Check if an error is raised when using @pytest.fixture twice."""
pytester.makepyfile(
"""
import pytest
@pytest.fixture
@pytest.fixture
def fixt():
pass
"""
)
result = pytester.runpytest()
result.assert_outcomes(errors=1)
result.stdout.fnmatch_lines(
[
"E * ValueError: @pytest.fixture is being applied more than once to the same function 'fixt'"
]
)
def test_fixture_param_shadowing(pytester: Pytester) -> None:
"""Parametrized arguments would be shadowed if a fixture with the same name also exists (#5036)"""
pytester.makepyfile(