Files

48 lines
1.2 KiB
Python
Raw Permalink Normal View History

2026-05-18 15:50:43 +08:00
from pathlib import Path
from app.config import load_api_config
def test_load_api_config_selects_default_provider(tmp_path: Path) -> None:
config_path = tmp_path / "api_config.yaml"
config_path.write_text(
"""
default_provider: intranet
providers:
intranet:
api_key: EMPTY
base_url: http://model.local/v1
max_tokens: 1024
model: qwen3-coder
temperature: 0.2
""".strip(),
encoding="utf-8",
)
settings = load_api_config(config_path)
assert settings.provider_name == "intranet"
assert settings.provider.model == "qwen3-coder"
assert settings.provider.chat_completions_url == "http://model.local/v1/chat/completions"
def test_load_api_config_accepts_full_chat_completions_url(tmp_path: Path) -> None:
config_path = tmp_path / "api_config.yaml"
config_path.write_text(
"""
default_provider: deepseek
providers:
deepseek:
api_key: key
base_url: https://api.deepseek.com/v1/chat/completions
max_tokens: 4000
model: deepseek-chat
temperature: 0.7
""".strip(),
encoding="utf-8",
)
settings = load_api_config(config_path, provider_name="deepseek")
assert settings.provider.chat_completions_url == "https://api.deepseek.com/v1/chat/completions"