from fastapi.testclient import TestClient from app.main import app client = TestClient(app) def test_models(monkeypatch): async def fake_list_models(): return {"data": [{"id": "DragonLLM/LLM-Pro-Finance-Small"}]} from app.providers import transformers_provider monkeypatch.setattr(transformers_provider, "list_models", fake_list_models) r = client.get("/v1/models") assert r.status_code == 200 j = r.json() assert "data" in j def test_chat_completions(monkeypatch): async def fake_chat(payload, stream=False): assert payload["model"] return { "id": "cmpl-1", "object": "chat.completion", "created": 0, "model": payload["model"], "choices": [ { "index": 0, "message": {"role": "assistant", "content": "Hello"}, "finish_reason": "stop", } ], } from app.providers import transformers_provider monkeypatch.setattr(transformers_provider, "chat", fake_chat) r = client.post( "/v1/chat/completions", json={ "model": "DragonLLM/LLM-Pro-Finance-Small", "messages": [{"role": "user", "content": "Hi"}], }, ) assert r.status_code == 200 j = r.json() assert j["choices"][0]["message"]["content"] == "Hello"