fix: verify capacity from dual paginated active-task scans

This commit is contained in:
CoolBoy
2026-10-28 00:38:09 +08:00
parent 0ba4977e88
commit 5dead8172c
5 changed files with 148 additions and 53 deletions

View File

@@ -290,16 +290,17 @@ class ClientPoolConcurrencyTests(unittest.TestCase):
client = ModelHubClient(token="test-token")
calls: list[str] = []
def page(*, status: str, current: int = 1, **_kwargs) -> dict: # noqa: ANN003
def page(*, status: str, current: int = 1, page_size: int = 100, **_kwargs) -> dict: # noqa: ANN003
calls.append(status)
total = {"waiting": 175, "running": 25}[status]
return {"data": {"total": total, "records": [
{"taskId": f"{status}-{i}", "status": status}
for i in range((current - 1) * 100, min(current * 100, total))]}}
for i in range((current - 1) * page_size, min(current * page_size, total))]}}
client.list_tasks_page = page # type: ignore[method-assign]
self.assertEqual(200, client.count_active_tasks_exact())
self.assertEqual(["waiting", "waiting", "running"], calls)
self.assertEqual(8, calls.count("waiting"))
self.assertEqual(4, calls.count("running"))
@staticmethod
def monday_calibration_time(hour: int = 10) -> datetime: