d73ff9b0fb
Deploy Site / deploy-vercel (push) Has been cancelled
Deploy Site / deploy-docs (push) Has been cancelled
Docker / shell lint / Lint Dockerfile (hadolint) (push) Has been cancelled
Docker / shell lint / Lint docker/ shell scripts (shellcheck) (push) Has been cancelled
Docker Build and Publish / build-amd64 (push) Has been cancelled
Docker Build and Publish / build-arm64 (push) Has been cancelled
Lint (ruff + ty) / ruff + ty diff (push) Has been cancelled
Lint (ruff + ty) / ruff enforcement (blocking) (push) Has been cancelled
Lint (ruff + ty) / Windows footguns (blocking) (push) Has been cancelled
Nix Lockfile Fix / auto-fix-main (push) Has been cancelled
Nix Lockfile Fix / fix (push) Has been cancelled
Nix / nix (macos-latest) (push) Has been cancelled
Nix / nix (ubuntu-latest) (push) Has been cancelled
OSV-Scanner / Scan lockfiles (push) Has been cancelled
Build Skills Index / build-index (push) Has been cancelled
Tests / test (1) (push) Has been cancelled
Tests / test (2) (push) Has been cancelled
Tests / test (3) (push) Has been cancelled
Tests / test (4) (push) Has been cancelled
Tests / test (5) (push) Has been cancelled
Tests / test (6) (push) Has been cancelled
Tests / e2e (push) Has been cancelled
uv.lock check / uv lock --check (push) Has been cancelled
Docker Build and Publish / merge (push) Has been cancelled
Build Skills Index / trigger-deploy (push) Has been cancelled
Tests / save-durations (push) Has been cancelled
43 lines
1.7 KiB
Python
43 lines
1.7 KiB
Python
"""Tests for MiniMax auxiliary client URL normalization.
|
|
|
|
MiniMax and MiniMax-CN set inference_base_url to the /anthropic path.
|
|
The auxiliary client uses the OpenAI SDK, which needs /v1 instead.
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
|
|
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", ".."))
|
|
|
|
from agent.auxiliary_client import _to_openai_base_url
|
|
|
|
|
|
class TestToOpenaiBaseUrl:
|
|
def test_minimax_global_anthropic_suffix_replaced(self):
|
|
assert _to_openai_base_url("https://api.minimax.io/anthropic") == "https://api.minimax.io/v1"
|
|
|
|
def test_minimax_cn_anthropic_suffix_replaced(self):
|
|
assert _to_openai_base_url("https://api.minimaxi.com/anthropic") == "https://api.minimaxi.com/v1"
|
|
|
|
def test_trailing_slash_stripped_before_replace(self):
|
|
assert _to_openai_base_url("https://api.minimax.io/anthropic/") == "https://api.minimax.io/v1"
|
|
|
|
def test_v1_url_unchanged(self):
|
|
assert _to_openai_base_url("https://api.openai.com/v1") == "https://api.openai.com/v1"
|
|
|
|
def test_openrouter_url_unchanged(self):
|
|
assert _to_openai_base_url("https://openrouter.ai/api/v1") == "https://openrouter.ai/api/v1"
|
|
|
|
def test_anthropic_domain_unchanged(self):
|
|
"""api.anthropic.com doesn't end with /anthropic — should be untouched."""
|
|
assert _to_openai_base_url("https://api.anthropic.com") == "https://api.anthropic.com"
|
|
|
|
def test_anthropic_in_subpath_unchanged(self):
|
|
assert _to_openai_base_url("https://example.com/anthropic/extra") == "https://example.com/anthropic/extra"
|
|
|
|
def test_empty_string(self):
|
|
assert _to_openai_base_url("") == ""
|
|
|
|
def test_none(self):
|
|
assert _to_openai_base_url(None) == ""
|