""" 配置模块测试 """ import pytest import os from unittest.mock import patch from src.config.settings import Settings class TestSettings: """测试配置类""" def test_default_settings(self): """测试默认配置""" settings = Settings() assert settings.app_name == "AI_Architecture" assert settings.app_version == "1.0.0" assert settings.debug is False assert settings.log_level == "INFO" assert settings.cache_enabled is True assert settings.max_tokens == 4000 assert settings.temperature == 0.7 def test_environment_variables(self): """测试环境变量配置""" with patch.dict(os.environ, { "OPENAI_API_KEY": "test_key", "LOG_LEVEL": "DEBUG", "CACHE_ENABLED": "false" }): settings = Settings() assert settings.openai_api_key == "test_key" assert settings.log_level == "DEBUG" assert settings.cache_enabled is False def test_validation(self): """测试配置验证""" settings = Settings() # 测试数值类型 assert isinstance(settings.max_tokens, int) assert isinstance(settings.temperature, float) assert isinstance(settings.cache_ttl, int) # 测试布尔类型 assert isinstance(settings.debug, bool) assert isinstance(settings.cache_enabled, bool)