import pytest from unittest.mock import patch, MagicMock from src.komconfig.__init__ import main import sys def test_valid_key(): mock_config = MagicMock() mock_config.dict.return_value = {"valid_key": "value"} with patch("src.komconfig.__init__.KomConfig", return_value=mock_config): with patch("sys.argv", ["__init__.py", "valid_key"]): main() def test_key_not_found(): mock_config = MagicMock() mock_config.dict.return_value = {"another_key": "value"} with patch("src.komconfig.__init__.KomConfig", return_value=mock_config): with patch("sys.argv", ["__init__.py", "missing_key"]): main() def test_non_dict_config(): mock_config = MagicMock() mock_config.dict.return_value = None with patch("src.komconfig.__init__.KomConfig", return_value=mock_config): with patch("sys.argv", ["__init__.py", "any_key"]): main() def test_exception_handling(): mock_config = MagicMock() mock_config.dict.side_effect = Exception("Test Exception") with patch("src.komconfig.__init__.KomConfig", return_value=mock_config): with patch("sys.argv", ["__init__.py", "any_key"]): main()