mirror of
https://github.com/HKUDS/nanobot.git
synced 2026-06-13 22:34:06 +00:00
* feat(webui): refine output timeline and composer queue * feat(webui): add provider model picker * fix(webui): polish model settings and heartbeat checks * chore: keep heartbeat changes out of webui pr * refactor(webui): isolate settings routes * fix(providers): align minimax anthropic test * fix(providers): keep minimax anthropic base sdk-compatible * fix(providers): normalize anthropic base urls
47 lines
1.7 KiB
Python
47 lines
1.7 KiB
Python
from unittest.mock import patch
|
|
|
|
from nanobot.providers.anthropic_provider import AnthropicProvider
|
|
from nanobot.providers.azure_openai_provider import AzureOpenAIProvider
|
|
from nanobot.providers.openai_compat_provider import OpenAICompatProvider
|
|
|
|
|
|
async def test_openai_compat_disables_sdk_retries_by_default() -> None:
|
|
with patch("nanobot.providers.openai_compat_provider.AsyncOpenAI") as mock_client:
|
|
provider = OpenAICompatProvider(api_key="sk-test", default_model="gpt-4o")
|
|
await provider._ensure_client()
|
|
|
|
kwargs = mock_client.call_args.kwargs
|
|
assert kwargs["max_retries"] == 0
|
|
|
|
|
|
def test_anthropic_disables_sdk_retries_by_default() -> None:
|
|
with patch("anthropic.AsyncAnthropic") as mock_client:
|
|
AnthropicProvider(api_key="sk-test", default_model="claude-sonnet-4-5")
|
|
|
|
kwargs = mock_client.call_args.kwargs
|
|
assert kwargs["max_retries"] == 0
|
|
|
|
|
|
def test_anthropic_normalizes_versioned_base_url() -> None:
|
|
with patch("anthropic.AsyncAnthropic") as mock_client:
|
|
AnthropicProvider(
|
|
api_key="sk-test",
|
|
api_base="https://api.minimax.io/anthropic/v1",
|
|
default_model="MiniMax-M2.7-highspeed",
|
|
)
|
|
|
|
kwargs = mock_client.call_args.kwargs
|
|
assert kwargs["base_url"] == "https://api.minimax.io/anthropic"
|
|
|
|
|
|
def test_azure_openai_disables_sdk_retries_by_default() -> None:
|
|
with patch("nanobot.providers.azure_openai_provider.AsyncOpenAI") as mock_client:
|
|
AzureOpenAIProvider(
|
|
api_key="sk-test",
|
|
api_base="https://example.openai.azure.com",
|
|
default_model="gpt-4.1",
|
|
)
|
|
|
|
kwargs = mock_client.call_args.kwargs
|
|
assert kwargs["max_retries"] == 0
|