Files
mlflow--mlflow/dev/clint/tests/rules/test_docstring_param_order.py
T
2026-07-13 13:22:34 +08:00

32 lines
803 B
Python

from pathlib import Path
from clint.config import Config
from clint.index import SymbolIndex
from clint.linter import Position, Range, lint_file
from clint.rules.docstring_param_order import DocstringParamOrder
def test_docstring_param_order(index: SymbolIndex) -> None:
code = """
# Bad
def f(x: int, y: str) -> None:
'''
Args:
y: Second param.
x: First param.
'''
# Good
def f(a: int, b: str) -> None:
'''
Args:
a: First param.
b: Second param.
'''
"""
config = Config(select={DocstringParamOrder.name})
violations = lint_file(Path("test.py"), code, config, index)
assert len(violations) == 1
assert all(isinstance(v.rule, DocstringParamOrder) for v in violations)
assert violations[0].range == Range(Position(2, 0))