- Create backend/tests/test_ai_providers.py with 7 stubs: test_generic_openai_json_mode, test_anthropic_structured_output, test_get_provider_typed, test_client_singleton, test_context_chars_truncation, test_smart_truncation, test_gemini_fallback_to_parse_classification - Create backend/tests/test_ai_config.py with 2 stubs: test_load_provider_config, test_api_key_encrypt_decrypt - Create backend/tests/test_admin_ai_config.py with 2 stubs: test_get_never_returns_key, test_put_writes_active_provider - Create backend/tests/test_document_tasks.py with 2 stubs: test_retry_backoff, test_exhaustion_sets_failed_status - Append test_reclassify_requeues_celery xfail stub to test_documents.py - D-14 regression guard: grep confirms 3 host-gateway entries (>=2 required)
26 lines
913 B
Python
26 lines
913 B
Python
"""
|
|
Wave 0 xfail stubs for Phase 7 admin AI config endpoint tests.
|
|
|
|
Covers:
|
|
- T-07-01: GET /api/admin/ai-config never returns api_key_enc (D-05/D-08)
|
|
- D-08: PUT /api/admin/ai-config writes active provider (admin AI Providers panel)
|
|
|
|
Each function is a placeholder to be promoted in Plan 07-05 once the admin
|
|
AI config endpoints exist.
|
|
|
|
Stub policy (STATE.md decision: xfail(strict=False) for Wave 0):
|
|
- Body is a single pytest.xfail() call — no assertion code.
|
|
- strict=False so unexpected passes (xpass) never break CI.
|
|
"""
|
|
import pytest
|
|
|
|
|
|
@pytest.mark.xfail(strict=False, reason="Wave 0 stub — promoted in Plan 07-05")
|
|
async def test_get_never_returns_key():
|
|
pytest.xfail("not implemented yet — Plan 07-05")
|
|
|
|
|
|
@pytest.mark.xfail(strict=False, reason="Wave 0 stub — promoted in Plan 07-05")
|
|
async def test_put_writes_active_provider():
|
|
pytest.xfail("not implemented yet — Plan 07-05")
|