Coverage for tests / unit / utils / unified_config / test_tool_priority.py: 100%
21 statements
« prev ^ index » next coverage.py v7.13.0, created at 2026-04-03 18:53 +0000
« prev ^ index » next coverage.py v7.13.0, created at 2026-04-03 18:53 +0000
1"""Tests for get_tool_priority function."""
3from __future__ import annotations
5from typing import Any
6from unittest.mock import patch
8import pytest
9from assertpy import assert_that
11from lintro.utils.unified_config import get_tool_priority
14@pytest.mark.parametrize(
15 ("tool_name", "expected_priority"),
16 [
17 ("black", 15),
18 ("ruff", 20),
19 ("markdownlint", 30),
20 ("yamllint", 35),
21 ("bandit", 45),
22 ("pytest", 100),
23 ],
24 ids=[
25 "black",
26 "ruff",
27 "markdownlint",
28 "yamllint",
29 "bandit",
30 "pytest",
31 ],
32)
33def test_get_tool_priority_returns_default_values(
34 mock_empty_tool_order_config: Any,
35 tool_name: str,
36 expected_priority: int,
37) -> None:
38 """Verify default priorities for known tools.
40 Args:
41 mock_empty_tool_order_config: Mock empty tool order configuration.
42 tool_name: Name of the tool.
43 expected_priority: Expected priority value.
44 """
45 result = get_tool_priority(tool_name)
46 assert_that(result).is_equal_to(expected_priority)
49def test_get_tool_priority_unknown_tool_returns_50(
50 mock_empty_tool_order_config: Any,
51) -> None:
52 """Verify unknown tools get default priority of 50.
54 Args:
55 mock_empty_tool_order_config: Mock empty tool order configuration.
56 """
57 result = get_tool_priority("unknown_tool")
58 assert_that(result).is_equal_to(50)
61def test_get_tool_priority_respects_override() -> None:
62 """Verify priority overrides from config take precedence."""
63 with patch(
64 "lintro.utils.config_priority.get_tool_order_config",
65 return_value={"priority_overrides": {"ruff": 5}},
66 ):
67 result = get_tool_priority("ruff")
68 assert_that(result).is_equal_to(5)
71def test_get_tool_priority_override_is_case_insensitive() -> None:
72 """Verify priority override keys are case-insensitive."""
73 with patch(
74 "lintro.utils.config_priority.get_tool_order_config",
75 return_value={"priority_overrides": {"RUFF": 5}},
76 ):
77 result = get_tool_priority("ruff")
78 assert_that(result).is_equal_to(5)