From c9c7aab228f34cc4dfb68cac4235db3ce376771a Mon Sep 17 00:00:00 2001 From: bot-backend Date: Thu, 13 Aug 2026 22:28:15 +0500 Subject: [PATCH] =?UTF-8?q?test(ptica):=20=D0=BE=D0=B1=D1=8A=D1=8F=D0=B2?= =?UTF-8?q?=D0=B8=D1=82=D1=8C=20=D0=BF=D1=80=D0=BE=D0=BF=D1=83=D1=81=D0=BA?= =?UTF-8?q?=20=D0=BD=D0=BE=D0=B2=D0=BE=D0=B3=D0=BE=20EXPLAIN-=D1=82=D0=B5?= =?UTF-8?q?=D1=81=D1=82=D0=B0=20=D0=B2=20skip=5Fallowlist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Причина четырёх красных прогонов backend-tests найдена, и это не инфраструктура: сторож в tests/conftest.py (pytest_sessionfinish) роняет прогон, если тест пропустился, но не объявлен в skip_allowlist.txt. Мои два новых параметризованных EXPLAIN-теста скипаются без TEST_DATABASE_URL и в списке не значились → session.exitstatus = 1 при зелёной сводке «4647 passed». Сторож сработал ПРАВИЛЬНО и ровно за тем, зачем написан: пропуск без записи неотличим от пройденной проверки. Его сообщение всё это время лежало в логе на 1014-й строке, за две секунды до сводки, — я его не увидел, потому что искал по английским «FAILED/ERROR» и смотрел хвост лога. Почему проверку нельзя выполнить здесь (как требует шапка файла): EXPLAIN идёт против КОПИИ ПРОДОВОЙ схемы через SSH-туннель, CI намеренно не задаёт TEST_DATABASE_URL (комментарий в ci.yml у backend-tests). Где выполняется вместо этого: вручную с туннелем — прогнан в этой ветке, 4 passed, и со строкой из main падает 1 из 3. Плюс backend/.gitignore: coverage.xml. Локальный прогон с --cov-report=xml кладёт 1.2 МБ рядом с кодом; в этом заходе файл чуть не уехал в коммит и был пойман только хуком check-added-large-files. Refs #2464, #2871 --- backend/.gitignore | 2 ++ backend/tests/skip_allowlist.txt | 1 + 2 files changed, 3 insertions(+) diff --git a/backend/.gitignore b/backend/.gitignore index 6350e986..b073c123 100644 --- a/backend/.gitignore +++ b/backend/.gitignore @@ -1 +1,3 @@ .coverage +# Артефакт локального прогона с --cov-report=xml (1.2 МБ) — чуть не уехал в коммит. +coverage.xml diff --git a/backend/tests/skip_allowlist.txt b/backend/tests/skip_allowlist.txt index 02ca21bc..470eef48 100644 --- a/backend/tests/skip_allowlist.txt +++ b/backend/tests/skip_allowlist.txt @@ -34,6 +34,7 @@ tests/test_layout_tz_pdf.py # (`ssh -N gendesign` → localhost:15432), см. tests/integration/conftest.py. # ЗАПУСКАТЬ ВРУЧНУЮ после правок SQL-запросов в app/services/**. tests/integration/test_analyze_parcels_sql.py::TestIrdOverlapSql::test_explain_ird_overlap +tests/integration/test_analyze_parcels_sql.py::TestVelocityCompetitorsSql::test_explain_competitors tests/integration/test_analyze_parcels_sql.py::TestNeighborsSummarySql::test_explain_neighbors_summary tests/integration/test_phantom_columns.py::TestCadGeoTables::test_parcel_centroid_query tests/integration/test_phantom_columns.py::TestDomrfKnFlats::test_avg_price_query