""" conftest.py - pytest 全局 mock 配置 在任何 app.* 模块加载前,把 app.config 和 app.utils.logger 替换为 mock, 避免 pydantic_settings / 数据库 / 真实网络依赖。 """ import sys from unittest.mock import MagicMock def _mock_settings(): s = MagicMock() s.bitget_max_total_leverage = 10.0 s.bitget_max_single_position = 1000.0 s.hyperliquid_circuit_breaker_drawdown = 0.10 s.bitget_trading_enabled = False return s # ---- mock app.config ---- mock_config_module = MagicMock() mock_config_module.get_settings = _mock_settings sys.modules['app.config'] = mock_config_module # ---- mock app.utils.logger ---- mock_logger_module = MagicMock() mock_logger_module.logger = MagicMock() sys.modules['app.utils'] = MagicMock() sys.modules['app.utils.logger'] = mock_logger_module # ---- mock app.services.bitget_trading_api_sdk (避免 ccxt import) ---- mock_sdk_module = MagicMock() mock_sdk_module.get_bitget_trading_api = MagicMock(return_value=MagicMock()) sys.modules['app.services.bitget_trading_api_sdk'] = mock_sdk_module