chore(tests): skip POSIX-only ops tests on Windows #3520

Merged
lekss361 merged 1 commit from chore/skip-posix-only-tests-on-windows into main 2026-09-13 11:17:14 +00:00
Collaborator

Summary

  • 20 локальных падений на Windows в test_3448_caddy_only_detection.py (13) и test_2950_latest_image_revision_gate.py (7) — не регрессия, дочерний bash-процесс не стартует на Windows (POSIX shell отсутствует на PATH). В CI (Linux) оба файла зелёные.
  • Помечены @pytest.mark.skipif(sys.platform == "win32", ...) только те тесты, которые реально запускают дочерний процесс (subprocess/bash-скрипт). Чисто-логические проверки (читают YAML/строки, без subprocess) не тронуты и продолжают исполняться на Windows.
  • Каждый новый skip зарегистрирован в backend/tests/skip_allowlist.txt — иначе гейт в conftest.py роняет прогон на незарегистрированных пропусках.

Test plan

  • backend venv python -m pytest tests/ops/test_3448_caddy_only_detection.py tests/test_2950_latest_image_revision_gate.py -q -p no:randomly -rs -> 5 passed, 20 skipped, exit code 0, без сообщения гейта о незарегистрированных пропусках
  • ruff check на оба изменённых тест-файла - чисто

🤖 Generated with Claude Code

https://claude.ai/code/session_01JY6iWDnGDthdvsMWgK1BMG

## Summary - 20 локальных падений на Windows в `test_3448_caddy_only_detection.py` (13) и `test_2950_latest_image_revision_gate.py` (7) — не регрессия, дочерний bash-процесс не стартует на Windows (POSIX shell отсутствует на PATH). В CI (Linux) оба файла зелёные. - Помечены `@pytest.mark.skipif(sys.platform == "win32", ...)` только те тесты, которые реально запускают дочерний процесс (subprocess/bash-скрипт). Чисто-логические проверки (читают YAML/строки, без subprocess) не тронуты и продолжают исполняться на Windows. - Каждый новый skip зарегистрирован в `backend/tests/skip_allowlist.txt` — иначе гейт в `conftest.py` роняет прогон на незарегистрированных пропусках. ## Test plan - [x] backend venv python -m pytest tests/ops/test_3448_caddy_only_detection.py tests/test_2950_latest_image_revision_gate.py -q -p no:randomly -rs -> `5 passed, 20 skipped`, exit code 0, без сообщения гейта о незарегистрированных пропусках - [x] ruff check на оба изменённых тест-файла - чисто 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01JY6iWDnGDthdvsMWgK1BMG
bot-backend added 1 commit 2026-09-13 10:55:21 +00:00
chore(tests): skip POSIX-only ops tests on Windows, register in allowlist
All checks were successful
CI Trade-In / changes (pull_request) Successful in 15s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI / changes (pull_request) Successful in 17s
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Successful in 2m46s
CI / backend-tests (pull_request) Successful in 6m46s
a300a97c44
test_3448_caddy_only_detection.py и test_2950_latest_image_revision_gate.py
запускают дочерние bash-процессы (subprocess.run bash -c / прямой запуск
.sh со скриптом) — на Windows нет POSIX shell на PATH, процесс не стартует
(RPC-ошибка про handle). В CI (Linux) эти тесты идут штатно, регрессии нет.

Пропуск только для кейсов, реально исполняющих дочерний процесс:
- test_3448: 10 обычных тестов + параметризованный
  test_paths_that_merely_start_with_caddy_are_not_the_fast_path (3 кейса) —
  все вызывают _run/_run_guard -> subprocess. Чисто текстовые проверки
  (test_fast_path_takes_the_same_host_lock,
  test_exclusion_gate_has_something_to_check,
  test_no_paths_filter_relies_on_exclusion_patterns) читают только YAML и
  исполняются локально без изменений.
- test_2950: все 7 тестов вызывают check-latest-image-revision.sh дочерним
  процессом — module-level skipif.

Каждый новый skip зарегистрирован в tests/skip_allowlist.txt (гейт в
conftest.py роняет прогон на незарегистрированных пропусках). Локальный
прогон обоих файлов на Windows: 5 passed, 20 skipped, exit 0, без жалоб
гейта.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY6iWDnGDthdvsMWgK1BMG
lekss361 merged commit 94d34e7dcb into main 2026-09-13 11:17:14 +00:00
lekss361 deleted branch chore/skip-posix-only-tests-on-windows 2026-09-13 11:17:14 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: lekss361/gendesign#3520
No description provided.