arm-scan-gateway/api/tests/conftest.py
2026-10-04 02:33:18 +04:00

30 lines
1.3 KiB
Python

"""Общие фикстуры. Минимальное окружение local-режима задаётся здесь, чтобы `import src` (он создаёт приложение)
работал без `.env.test` и без инфраструктуры; значения можно переопределить переменными окружения."""
import os
import pytest
_MINIMAL_ENV = {
"OPENBAO__MINIO__MINIO_URL": "localhost:9000",
"OPENBAO__MINIO__MINIO_ADMIN_LOGIN": "minioadmin",
"OPENBAO__MINIO__MINIO_ADMIN_PASSWORD": "minioadmin",
"OPENBAO__MINIO__MINIO_BUCKET": "arm-ka",
"OPENBAO__NATS__NATS_URL": "nats://localhost:4222",
"SCAN_HOTFOLDER_MODE": "local",
"SCAN_HOTFOLDER_PATH": "/tmp/scan-gateway-test-hotfolder",
}
for _key, _value in _MINIMAL_ENV.items():
os.environ.setdefault(_key, _value)
@pytest.fixture(autouse=True)
def _fresh_settings():
"""get_settings кэшируется (lru_cache): сбрасываем кэш до и после каждого теста."""
# Импорт отложен намеренно: `import src` создаёт приложение и требует окружения, заданного выше
from src.core.config import get_settings # noqa: PLC0415
get_settings.cache_clear()
yield
get_settings.cache_clear()