Publish curated ITWorx-ModelForge source from 990401737f96c8d46a9f7b0d84994516cadcb6a0
This commit is contained in:
1 parent
7082ab955a
commit
848f0d8f8a
434 files changed
+67298
-4315
No files matched your search
@@ -0,0 +1,36 @@
|
||||
from uuid import uuid4
|
||||
|
||||
from fastapi.testclient import TestClient
|
||||
from pydantic import SecretStr
|
||||
|
||||
from modelforge_api.api.routes.migrations import get_service
|
||||
from modelforge_api.main import app
|
||||
from modelforge_api.settings import Settings, get_settings
|
||||
|
||||
_TOKEN = uuid4().hex
|
||||
_HEADERS = {"X-ModelForge-Admin-Token": _TOKEN}
|
||||
|
||||
|
||||
def test_migration_plan_index_passes_the_bounded_limit_and_rejects_out_of_range_values() -> None:
|
||||
class IndexService:
|
||||
requested_limit: int | None = None
|
||||
|
||||
def plans(self, limit: int) -> list[object]:
|
||||
self.requested_limit = limit
|
||||
return []
|
||||
|
||||
service = IndexService()
|
||||
app.dependency_overrides[get_settings] = lambda: Settings(
|
||||
_env_file=None, operator_api_key=SecretStr(_TOKEN)
|
||||
)
|
||||
app.dependency_overrides[get_service] = lambda: service
|
||||
try:
|
||||
client = TestClient(app)
|
||||
response = client.get("/api/v1/admin/migrations/plans?limit=37", headers=_HEADERS)
|
||||
invalid = client.get("/api/v1/admin/migrations/plans?limit=201", headers=_HEADERS)
|
||||
|
||||
assert response.status_code == 200
|
||||
assert service.requested_limit == 37
|
||||
assert invalid.status_code == 422
|
||||
finally:
|
||||
app.dependency_overrides.clear()
|
||||
Reference in new issue
Block a user