File size: 1,178 Bytes
89419ea | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | from src.config.settings import SETTING_DEFINITIONS, get_settings, update_settings
def test_external_api_settings_definitions_exist():
assert "external_api_enabled" in SETTING_DEFINITIONS
assert SETTING_DEFINITIONS["external_api_enabled"].db_key == "external_api.enabled"
assert "external_api_key" in SETTING_DEFINITIONS
assert SETTING_DEFINITIONS["external_api_key"].db_key == "external_api.key"
assert SETTING_DEFINITIONS["external_api_key"].is_secret is True
def test_update_settings_supports_external_api_fields():
current = get_settings()
old_enabled = getattr(current, "external_api_enabled", False)
old_key = getattr(current, "external_api_key", None)
old_key_value = old_key.get_secret_value() if old_key else ""
try:
settings = update_settings(external_api_enabled=True, external_api_key="demo-key")
assert settings.external_api_enabled is True
assert settings.external_api_key.get_secret_value() == "demo-key"
latest = get_settings()
assert latest.external_api_enabled is True
finally:
update_settings(external_api_enabled=old_enabled, external_api_key=old_key_value)
|