Coverage for tests / unit / formatters / styles / conftest.py: 100%

34 statements  

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

1"""Shared fixtures and test data for formatter style tests. 

2 

3Provides common fixtures for style instances and shared test data 

4used across multiple style test modules. 

5""" 

6 

7from __future__ import annotations 

8 

9import pytest 

10 

11from lintro.formatters.styles.csv import CsvStyle 

12from lintro.formatters.styles.github import GitHubStyle 

13from lintro.formatters.styles.grid import GridStyle 

14from lintro.formatters.styles.html import HtmlStyle 

15from lintro.formatters.styles.json import JsonStyle 

16from lintro.formatters.styles.markdown import MarkdownStyle 

17from lintro.formatters.styles.plain import PlainStyle 

18 

19# --- Style instance fixtures --- 

20 

21 

22@pytest.fixture 

23def plain_style() -> PlainStyle: 

24 """Create PlainStyle instance. 

25 

26 Returns: 

27 A PlainStyle instance for testing. 

28 """ 

29 return PlainStyle() 

30 

31 

32@pytest.fixture 

33def grid_style() -> GridStyle: 

34 """Create GridStyle instance. 

35 

36 Returns: 

37 A GridStyle instance for testing. 

38 """ 

39 return GridStyle() 

40 

41 

42@pytest.fixture 

43def json_style() -> JsonStyle: 

44 """Create JsonStyle instance. 

45 

46 Returns: 

47 A JsonStyle instance for testing. 

48 """ 

49 return JsonStyle() 

50 

51 

52@pytest.fixture 

53def html_style() -> HtmlStyle: 

54 """Create HtmlStyle instance. 

55 

56 Returns: 

57 An HtmlStyle instance for testing. 

58 """ 

59 return HtmlStyle() 

60 

61 

62@pytest.fixture 

63def markdown_style() -> MarkdownStyle: 

64 """Create MarkdownStyle instance. 

65 

66 Returns: 

67 A MarkdownStyle instance for testing. 

68 """ 

69 return MarkdownStyle() 

70 

71 

72@pytest.fixture 

73def csv_style() -> CsvStyle: 

74 """Create CsvStyle instance. 

75 

76 Returns: 

77 A CsvStyle instance for testing. 

78 """ 

79 return CsvStyle() 

80 

81 

82@pytest.fixture 

83def github_style() -> GitHubStyle: 

84 """Create GitHubStyle instance. 

85 

86 Returns: 

87 A GitHubStyle instance for testing. 

88 """ 

89 return GitHubStyle() 

90 

91 

92# --- Common test data --- 

93 

94SINGLE_ROW_DATA = [["src/main.py", "10", "Error found"]] 

95MULTI_ROW_DATA = [ 

96 ["src/a.py", "10"], 

97 ["src/b.py", "20"], 

98] 

99STANDARD_COLUMNS = ["File", "Line", "Message"] 

100TWO_COLUMNS = ["File", "Line"]