test: sidebar-pages-tree.spec тестирует копию продакшен-логики; обоснование про jest-config неверно #75

Closed
opened 2026-06-21 02:33:10 +03:00 by Ghost · 0 comments

Найдено в multi-aspect code review всех изменений с коммита 053a9c0d (ветка develop).

Грань: conventions · Severity: warning
Где: apps/server/src/core/page/services/sidebar-pages-tree.spec.ts:1-45

Проблема
Спека определяет локальный shapeTree — копию PageService.getSidebarPagesTree — и проверяет копию, никогда не задевая продакшен-путь (ложная уверенность: зелёный тест при регрессии реального getSidebarPagesTree). Заголовок оправдывает это «отсутствием ^src/(.*)$ mapping в jest-конфиге сервера», но apps/server/package.json (jest.moduleNameMapper) такой mapping содержит — заявленного блокера нет. Все остальные серверные спеки импортируют реальный код (в т.ч. соседние ws-tree.service.spec.ts, page-ws.listener.spec.ts).

Предлагаемый фикс
Импортировать и тестировать реальную логику (вынести чистую часть getSidebarPagesTree в импортируемый хелпер либо поднять PageService через Test/TestingModule с моками repo), либо, если реальный блокер всё же есть, исправить неверный заголовок.

Связанные: #56

Найдено в multi-aspect code review всех изменений с коммита `053a9c0d` (ветка develop). **Грань:** conventions · **Severity:** warning **Где:** `apps/server/src/core/page/services/sidebar-pages-tree.spec.ts:1-45` **Проблема** Спека определяет локальный shapeTree — копию PageService.getSidebarPagesTree — и проверяет копию, никогда не задевая продакшен-путь (ложная уверенность: зелёный тест при регрессии реального getSidebarPagesTree). Заголовок оправдывает это «отсутствием ^src/(.*)$ mapping в jest-конфиге сервера», но apps/server/package.json (jest.moduleNameMapper) такой mapping содержит — заявленного блокера нет. Все остальные серверные спеки импортируют реальный код (в т.ч. соседние ws-tree.service.spec.ts, page-ws.listener.spec.ts). **Предлагаемый фикс** Импортировать и тестировать реальную логику (вынести чистую часть getSidebarPagesTree в импортируемый хелпер либо поднять PageService через Test/TestingModule с моками repo), либо, если реальный блокер всё же есть, исправить неверный заголовок. **Связанные:** #56
Ghost closed this issue 2026-06-21 14:10:31 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: vvzvlad/gitmost#75