Coverage for tests / unit / tools / pytest_tool / test_configuration.py: 100%
30 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 PytestConfiguration class."""
3from __future__ import annotations
5from assertpy import assert_that
7from lintro.enums.pytest_enums import PytestSpecialMode
8from lintro.tools.implementations.pytest.pytest_config import PytestConfiguration
10# =============================================================================
11# Tests for PytestConfiguration class
12# =============================================================================
15def test_default_values(sample_pytest_config: PytestConfiguration) -> None:
16 """Configuration has correct default values.
18 Args:
19 sample_pytest_config: The PytestConfiguration instance to test.
20 """
21 assert_that(sample_pytest_config.verbose).is_none()
22 assert_that(sample_pytest_config.tb).is_none()
23 assert_that(sample_pytest_config.maxfail).is_none()
26def test_set_options(sample_pytest_config: PytestConfiguration) -> None:
27 """Configuration set_options works correctly.
29 Args:
30 sample_pytest_config: The PytestConfiguration instance to test.
31 """
32 sample_pytest_config.set_options(verbose=True, tb="short", maxfail=5)
33 assert_that(sample_pytest_config.verbose).is_true()
34 assert_that(sample_pytest_config.tb).is_equal_to("short")
35 assert_that(sample_pytest_config.maxfail).is_equal_to(5)
38def test_get_options_dict(sample_pytest_config: PytestConfiguration) -> None:
39 """Configuration get_options_dict returns only non-None values.
41 Args:
42 sample_pytest_config: The PytestConfiguration instance to test.
43 """
44 sample_pytest_config.set_options(verbose=True, tb="short")
45 options = sample_pytest_config.get_options_dict()
46 assert_that(options).contains_key("verbose")
47 assert_that(options).contains_key("tb")
48 assert_that(options.get("verbose")).is_true()
49 assert_that(options.get("tb")).is_equal_to("short")
52def test_is_special_mode_false_by_default(
53 sample_pytest_config: PytestConfiguration,
54) -> None:
55 """Configuration is_special_mode returns False by default.
57 Args:
58 sample_pytest_config: The PytestConfiguration instance to test.
59 """
60 assert_that(sample_pytest_config.is_special_mode()).is_false()
63def test_is_special_mode_true_when_set(
64 sample_pytest_config: PytestConfiguration,
65) -> None:
66 """Configuration is_special_mode returns True when special mode is set.
68 Args:
69 sample_pytest_config: The PytestConfiguration instance to test.
70 """
71 sample_pytest_config.set_options(collect_only=True)
72 assert_that(sample_pytest_config.is_special_mode()).is_true()
75def test_get_special_mode_none_by_default(
76 sample_pytest_config: PytestConfiguration,
77) -> None:
78 """Configuration get_special_mode returns None by default.
80 Args:
81 sample_pytest_config: The PytestConfiguration instance to test.
82 """
83 assert_that(sample_pytest_config.get_special_mode()).is_none()
86def test_get_special_mode_returns_correct_mode(
87 sample_pytest_config: PytestConfiguration,
88) -> None:
89 """Configuration get_special_mode returns the correct mode name.
91 Args:
92 sample_pytest_config: The PytestConfiguration instance to test.
93 """
94 sample_pytest_config.set_options(list_plugins=True)
95 assert_that(sample_pytest_config.get_special_mode()).is_equal_to(
96 PytestSpecialMode.LIST_PLUGINS.value,
97 )