2026-03-24 17:53:35 +00:00
|
|
|
"""Tests for OpenAICompatProvider handling custom/direct endpoints."""
|
2026-03-17 06:20:19 +00:00
|
|
|
|
2026-03-24 17:53:35 +00:00
|
|
|
from types import SimpleNamespace
|
|
|
|
|
from unittest.mock import patch
|
|
|
|
|
|
|
|
|
|
from nanobot.providers.openai_compat_provider import OpenAICompatProvider
|
2026-03-17 06:20:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_custom_provider_parse_handles_empty_choices() -> None:
|
2026-03-24 17:53:35 +00:00
|
|
|
with patch("nanobot.providers.openai_compat_provider.AsyncOpenAI"):
|
|
|
|
|
provider = OpenAICompatProvider()
|
2026-03-17 06:20:19 +00:00
|
|
|
response = SimpleNamespace(choices=[])
|
|
|
|
|
|
|
|
|
|
result = provider._parse(response)
|
|
|
|
|
|
|
|
|
|
assert result.finish_reason == "error"
|
|
|
|
|
assert "empty choices" in result.content
|