from app.service.fund_quote_service import ( FUND_TYPE_GROUPS, FundQuoteRuntimeConfig, ) def test_invalid_runtime_config_uses_safe_defaults() -> None: config = FundQuoteRuntimeConfig.from_mapping({ "allowed_codes": ["bad", "159511"], "intraday_cache_ttl": -1, "closing_cache_ttl": "900", }) assert config.allowed_codes == ("159511",) assert config.intraday_cache_ttl == 60 assert config.closing_cache_ttl == 900 def test_empty_code_list_does_not_disable_market_data() -> None: config = FundQuoteRuntimeConfig.from_mapping({"allowed_codes": []}) assert config.allowed_codes assert set(config.allowed_codes) == { code for codes in FUND_TYPE_GROUPS.values() for code in codes }