deer-flow/backend/tests/test_managed_presets_live.py
Eilen Shin e98179a9d3
feat(models): register managed models with provider presets (#6757)
* feat(models): register managed models with provider presets

* docs: add PR 6757 UI comparison screenshots

* test: fix model management CI checks

* docs: remove PR 6757 screenshots

---------

Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
2026-10-13 08:14:23 +08:00

30 lines
1.3 KiB
Python

"""Opt-in real vendor probe. No discovery or credentials in test output."""
import os
from types import SimpleNamespace
import pytest
from app.gateway.routers import managed_models as router
from deerflow.config.managed_models import ManagedModel
pytestmark = [
pytest.mark.live,
pytest.mark.skipif(
os.getenv("DEER_FLOW_RUN_LIVE_TESTS") != "1" or not all(os.getenv(name) for name in ("MANAGED_MODEL_TEST_PROVIDER", "MANAGED_MODEL_TEST_MODEL", "MANAGED_MODEL_TEST_API_KEY")) or bool(os.getenv("CI")),
reason="Requires explicit live opt-in and vendor test settings; never runs in CI",
),
]
@pytest.mark.asyncio
async def test_preset_connection_live(tmp_path, monkeypatch):
monkeypatch.setenv("DEER_FLOW_HOME", str(tmp_path))
monkeypatch.setenv("LANGSMITH_TRACING", "false")
profile = ManagedModel(provider=os.environ["MANAGED_MODEL_TEST_PROVIDER"], model=os.environ["MANAGED_MODEL_TEST_MODEL"], api_key=os.environ["MANAGED_MODEL_TEST_API_KEY"])
assert profile.provider != "openai-compatible", "Use the existing custom endpoint test for legacy profiles"
admin = SimpleNamespace(state=SimpleNamespace(user=SimpleNamespace(system_role="admin")))
result = await router.test_model(admin, router.SaveModelRequest(config=profile))
assert result["ok"], result["message"]
assert not (tmp_path / "managed-models").exists()