generated from john/python-template
Continue GC code review: Pydantic
This commit is contained in:
@@ -122,7 +122,7 @@ class TestOpenRouterProviderTranscribe:
|
||||
assert result.provider == "openrouter"
|
||||
assert result.prompt_name is None
|
||||
assert result.model == "vendor/model-b"
|
||||
assert result.ai_metadata == {
|
||||
assert result.metadata_payload() == {
|
||||
"finish_reason": "stop",
|
||||
"usage": {"input_tokens": 10, "output_tokens": 25, "total_tokens": 35},
|
||||
}
|
||||
@@ -178,3 +178,25 @@ class TestOpenRouterProviderTranscribe:
|
||||
image_bytes=b"img-bytes",
|
||||
mime_type="image/png",
|
||||
)
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_ignores_invalid_token_metadata_without_discarding_transcript(self):
|
||||
response = {
|
||||
"model": "vendor/model-a",
|
||||
"choices": [{"message": {"content": "Transcript text"}}],
|
||||
"usage": {"prompt_tokens": -1},
|
||||
}
|
||||
provider = OpenRouterTranscriptionProvider(
|
||||
settings=Settings(openrouter_api_key="test-key"),
|
||||
client=_FakeClient(response=response),
|
||||
)
|
||||
|
||||
result = await provider.transcribe(
|
||||
prompt_text="Prompt body",
|
||||
image_bytes=b"img-bytes",
|
||||
mime_type="image/png",
|
||||
)
|
||||
|
||||
assert result.text == "Transcript text"
|
||||
assert result.metadata_payload() is None
|
||||
assert result.raw_api_response == response
|
||||
|
||||
Reference in New Issue
Block a user