- 新增 CLAUDE.md 文件,包含项目概述、开发环境管理、项目架构、开发规范、特色功能模块及调试和故障排除指南。 - 详细描述了使用 Docker Compose 管理开发环境的步骤和常用命令。 - 介绍了项目的技术栈、核心目录结构及主要服务,确保开发者能够快速上手。
27 lines
846 B
Python
27 lines
846 B
Python
"""
|
|
Integration tests for settings router endpoints.
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import pytest
|
|
|
|
pytestmark = [pytest.mark.asyncio, pytest.mark.integration]
|
|
|
|
|
|
async def test_reranker_list_requires_admin(test_client, standard_user):
|
|
public_response = await test_client.get("/api/settings/rerankers")
|
|
assert public_response.status_code == 401
|
|
|
|
forbidden_response = await test_client.get("/api/settings/rerankers", headers=standard_user["headers"])
|
|
assert forbidden_response.status_code == 403
|
|
|
|
|
|
async def test_admin_can_list_rerankers(test_client, admin_headers):
|
|
response = await test_client.get("/api/settings/rerankers", headers=admin_headers)
|
|
assert response.status_code == 200, response.text
|
|
payload = response.json()
|
|
|
|
assert "rerankers" in payload
|
|
assert isinstance(payload["rerankers"], dict)
|