"""Tests for model adapters.""" import pytest from app.model_adapters.base import ModelAdapter, ChatResponse from app.model_adapters.providers import DeepSeekAdapter def test_adapter_payload_and_extraction(): adapter = DeepSeekAdapter(api_key="test", model="deepseek-chat", base_url="https://x") payload = adapter._build_payload("hello", {"temperature": 0.5, "max_tokens": 100}) assert payload["model"] == "deepseek-chat" assert payload["messages"][0]["content"] == "hello" response_text = adapter._extract_text( {"choices": [{"message": {"content": "hi"}}]} ) assert response_text == "hi" def test_adapter_token_usage(): adapter = DeepSeekAdapter(api_key="test", model="m", base_url="https://x") usage = adapter._extract_token_usage( {"usage": {"prompt_tokens": 10, "completion_tokens": 5, "total_tokens": 15}} ) assert usage["total_tokens"] == 15