test(ai): stabilize recovery callback contract

This commit is contained in:
Your Name
2026-07-22 17:33:54 +08:00
parent fd92134e60
commit 783e111801

View File

@@ -23,7 +23,7 @@ OllamaFailoverManager 單元測試 - P1.1c v4.0
from __future__ import annotations
import asyncio
from unittest.mock import ANY, AsyncMock, MagicMock, patch
from unittest.mock import ANY, AsyncMock, MagicMock, create_autospec, patch
import pytest
@@ -402,7 +402,22 @@ class TestSelectProvider:
gcp_b_status=HealthStatus.HEALTHY,
local_status=HealthStatus.OFFLINE,
)
recovery_callback = AsyncMock()
async def metadata_callback(
provider_name: str,
*,
observation_generation: int,
observation_started_at_monotonic: float,
) -> None:
_ = (
provider_name,
observation_generation,
observation_started_at_monotonic,
)
# Bare AsyncMock signature reporting varies across runner Python patch
# versions. Autospec the production callback contract so this test
# verifies our metadata boundary instead of unittest.mock internals.
recovery_callback = create_autospec(metadata_callback)
manager.set_recovery_callback(recovery_callback)
audit = AsyncMock()