Coverage for tests / unit / utils / unified_config / test_config_summary.py: 100%

21 statements  

« prev     ^ index     » next       coverage.py v7.13.0, created at 2026-04-03 18:53 +0000

1"""Tests for get_tool_config_summary function.""" 

2 

3from __future__ import annotations 

4 

5from unittest.mock import patch 

6 

7from assertpy import assert_that 

8 

9from lintro.utils.unified_config import ToolConfigInfo, get_tool_config_summary 

10 

11 

12def test_get_tool_config_summary_returns_dict_for_all_standard_tools() -> None: 

13 """Verify config summary includes all standard tools.""" 

14 with ( 

15 patch( 

16 "lintro.utils.config_validation._load_native_tool_config", 

17 return_value={}, 

18 ), 

19 patch( 

20 "lintro.utils.config_validation.load_lintro_tool_config", 

21 return_value={}, 

22 ), 

23 patch( 

24 "lintro.utils.config_validation.get_effective_line_length", 

25 return_value=88, 

26 ), 

27 patch( 

28 "lintro.utils.config_validation.validate_config_consistency", 

29 return_value=[], 

30 ), 

31 ): 

32 result = get_tool_config_summary() 

33 

34 assert_that(result).contains_key("ruff") 

35 assert_that(result).contains_key("black") 

36 assert_that(result).contains_key("yamllint") 

37 assert_that(result).contains_key("markdownlint") 

38 

39 

40def test_get_tool_config_summary_returns_tool_config_info_instances() -> None: 

41 """Verify each tool gets a proper ToolConfigInfo instance.""" 

42 with ( 

43 patch( 

44 "lintro.utils.config_validation._load_native_tool_config", 

45 return_value={}, 

46 ), 

47 patch( 

48 "lintro.utils.config_validation.load_lintro_tool_config", 

49 return_value={}, 

50 ), 

51 patch( 

52 "lintro.utils.config_validation.get_effective_line_length", 

53 return_value=88, 

54 ), 

55 patch( 

56 "lintro.utils.config_validation.validate_config_consistency", 

57 return_value=[], 

58 ), 

59 ): 

60 result = get_tool_config_summary() 

61 

62 assert_that(result["ruff"]).is_instance_of(ToolConfigInfo) 

63 assert_that(result["ruff"].tool_name).is_equal_to("ruff") 

64 

65 

66def test_get_tool_config_summary_includes_effective_line_length() -> None: 

67 """Verify effective line_length is included in effective_config.""" 

68 with ( 

69 patch( 

70 "lintro.utils.config_validation._load_native_tool_config", 

71 return_value={}, 

72 ), 

73 patch( 

74 "lintro.utils.config_validation.load_lintro_tool_config", 

75 return_value={}, 

76 ), 

77 patch( 

78 "lintro.utils.config_validation.get_effective_line_length", 

79 return_value=120, 

80 ), 

81 patch( 

82 "lintro.utils.config_validation.validate_config_consistency", 

83 return_value=[], 

84 ), 

85 ): 

86 result = get_tool_config_summary() 

87 

88 assert_that(result["ruff"].effective_config).contains_key("line_length") 

89 assert_that(result["ruff"].effective_config["line_length"]).is_equal_to(120)