mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-06-26 14:45:33 -04:00
test: split provider classification tests (#4392)
This commit is contained in:
committed by
GitHub
parent
ee72d71872
commit
bf56010aad
@@ -0,0 +1,34 @@
|
||||
"""Token-parameter selection for provider setup (REAL src.llm_core).
|
||||
|
||||
Split from `test_provider_classification.py` to keep the token-param quirk
|
||||
separate from provider identification and error formatting.
|
||||
|
||||
* `_uses_max_completion_tokens` — the gpt-5 / o-series quirk that the probe
|
||||
and chat payload builders branch on.
|
||||
|
||||
conftest.py stubs the heavy deps (sqlalchemy, src.database), so importing the
|
||||
real module is side-effect free.
|
||||
"""
|
||||
import pytest
|
||||
|
||||
from src.llm_core import _uses_max_completion_tokens
|
||||
|
||||
|
||||
# ── _uses_max_completion_tokens ──
|
||||
# gpt-5 / o-series need `max_completion_tokens`; everything else `max_tokens`.
|
||||
|
||||
class TestUsesMaxCompletionTokens:
|
||||
@pytest.mark.parametrize("model", [
|
||||
"gpt-5", "gpt-5.2", "gpt-5-mini", "o1", "o1-preview", "o3", "o3-mini",
|
||||
"o4-mini", "gpt-4.5", "gpt-4.5-preview", "openrouter/openai/o3",
|
||||
])
|
||||
def test_requires_max_completion_tokens(self, model):
|
||||
assert _uses_max_completion_tokens(model) is True
|
||||
|
||||
@pytest.mark.parametrize("model", [
|
||||
# gpt-4o must NOT be confused with the o-series ("o4"/"o1" tokens).
|
||||
"gpt-4o", "gpt-4o-mini", "gpt-4.1", "claude-opus-4", "llama-3.3-70b",
|
||||
"deepseek-chat", "", None,
|
||||
])
|
||||
def test_uses_plain_max_tokens(self, model):
|
||||
assert _uses_max_completion_tokens(model) is False
|
||||
Reference in New Issue
Block a user