Skip to content

Commit 91dec8e

Browse files
committed
Factor out _validate_parametrize_spelling
This makes it easier to read `pytest_generate_tests`.
1 parent a2d4833 commit 91dec8e

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

src/_pytest/python.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -119,14 +119,17 @@ def pytest_cmdline_main(config):
119119
return 0
120120

121121

122-
def pytest_generate_tests(metafunc):
123-
# those alternative spellings are common - raise a specific error to alert
124-
# the user
125-
alt_spellings = ["parameterize", "parametrise", "parameterise"]
126-
for mark_name in alt_spellings:
122+
def _validate_parametrize_spelling(metafunc):
123+
"""Raise a specific error for common misspellings of "parametrize"."""
124+
for mark_name in ["parameterize", "parametrise", "parameterise"]:
127125
if metafunc.definition.get_closest_marker(mark_name):
128126
msg = "{0} has '{1}' mark, spelling should be 'parametrize'"
129127
fail(msg.format(metafunc.function.__name__, mark_name), pytrace=False)
128+
129+
130+
def pytest_generate_tests(metafunc):
131+
_validate_parametrize_spelling(metafunc)
132+
130133
for marker in metafunc.definition.iter_markers(name="parametrize"):
131134
metafunc.parametrize(*marker.args, **marker.kwargs)
132135

0 commit comments

Comments
 (0)