diff --git a/backend/tests/api/v1/test_admin_cadastre.py b/backend/tests/api/v1/test_admin_cadastre.py index 8ca81225..72116c70 100644 --- a/backend/tests/api/v1/test_admin_cadastre.py +++ b/backend/tests/api/v1/test_admin_cadastre.py @@ -5,6 +5,12 @@ from __future__ import annotations +# scrape_cadastre зависит от app.scrapers.nspd_bulk_client (PR 2/5). +# Используем importlib.util.find_spec вместо прямого import — иначе +# `import app.workers...` пересоздаёт `app` как Python package и +# перебивает FastAPI instance, привязанный в строке выше → AttributeError +# на app.dependency_overrides. +import importlib.util from typing import Any from unittest.mock import MagicMock, patch @@ -13,13 +19,9 @@ from fastapi.testclient import TestClient from app.main import app -# scrape_cadastre зависит от app.scrapers.nspd_bulk_client (PR 2/5). -# Если ветка ещё не rebased на main — тесты которые импортируют task помечаем skip. -_SCRAPE_CADASTRE_AVAILABLE = True -try: - import app.workers.tasks.scrape_cadastre -except ModuleNotFoundError: - _SCRAPE_CADASTRE_AVAILABLE = False +_SCRAPE_CADASTRE_AVAILABLE = ( + importlib.util.find_spec("app.workers.tasks.scrape_cadastre") is not None +) requires_scrape_cadastre = pytest.mark.skipif( not _SCRAPE_CADASTRE_AVAILABLE,