Files
kamidso-back/tests/kamidso/test_engine_worker_startup.py
javadandCursor b93ecf1691 Initial commit of the Kamidso API.
Keep source, config, and deploy files. Leave runtime data, uploads, and logs out of git.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-10 13:43:09 +03:30

36 lines
1.3 KiB
Python

import os
import pytest
os.environ.setdefault("KAMIDSO_ENV", "development")
@pytest.mark.asyncio
async def test_engine_llm_worker_loads_under_kamidso_lifecycle(monkeypatch):
if not os.environ.get("OPENAI_API_KEY"):
pytest.skip("OPENAI_API_KEY is required to boot the embedded LLM worker")
monkeypatch.setenv("KAMIDSO_ENV", "development")
import kamidso.settings.flags as flags
flags._SETTINGS = None
from kamidso.bootstrap.application import create_application
from kamidso.integrations.engine.runtime import _worker_is_started
from kamidso.settings.flags import load_kamidso_settings
from kamidso.engine.core.model.cluster.worker.manager import worker_manager
app = await create_application(load_kamidso_settings())
assert app.engine_runtime.ready, app.engine_runtime.error
assert app.engine_runtime.workers_started, app.engine_runtime.error
llm_workers = [
instance.worker
for instances in (worker_manager.worker_manager.workers or {}).values()
for instance in instances
if "@llm" in instance.worker_key
]
assert llm_workers, "expected at least one LLM worker"
assert all(_worker_is_started(worker) for worker in llm_workers), (
"LLM worker model was not loaded; proxy_llm_client would fail at inference"
)