--- type: test-plan work_item_id: ET-002 title: "Test Plan: Чекбокс POI" version: 1 status: approved created_at: 2026-05-20 authors: - "agent:analyst" --- tests: - id: TP-01 type: unit description: "onPoiCheckbox() устанавливает visibility слоёв" steps: - "Mock map.getLayer() → true" - "Mock map.setLayoutProperty()" - "Установить checkbox.checked = false" - "Вызвать onPoiCheckbox()" expected: - "setLayoutProperty('poi-circles', 'visibility', 'none') вызван" - "setLayoutProperty('poi-labels', 'visibility', 'none') вызван" - "localStorage.setItem('poi-visible', '0') вызван" - "layerState.poi === false" - id: TP-02 type: unit description: "onPoiCheckbox() показывает слои при checked=true" steps: - "Mock map.getLayer() → true" - "Установить checkbox.checked = true" - "Вызвать onPoiCheckbox()" expected: - "setLayoutProperty('poi-circles', 'visibility', 'visible') вызван" - "setLayoutProperty('poi-labels', 'visibility', 'visible') вызван" - "localStorage.setItem('poi-visible', '1') вызван" - "layerState.poi === true" - id: TP-03 type: unit description: "Восстановление состояния при загрузке — POI скрыты" steps: - "localStorage.setItem('poi-visible', '0')" - "Вызвать функцию инициализации POI" expected: - "checkbox.checked === false" - "layerState.poi === false" - "Слои скрыты" - id: TP-04 type: unit description: "Восстановление состояния при загрузке — POI видны (default)" steps: - "localStorage не содержит ключ poi-visible" - "Вызвать функцию инициализации POI" expected: - "checkbox.checked === true" - "layerState.poi === true" - id: TP-05 type: e2e description: "Чекбокс POI виден в попапе рельефа" steps: - "Открыть карту в браузере" - "Нажать кнопку «Рельеф»" expected: - "В попапе виден чекбокс с текстом «POI»" - "Чекбокс расположен после «Тропы», отделён линией" - id: TP-06 type: e2e description: "Переключение POI скрывает/показывает маркеры" steps: - "Открыть карту, дождаться загрузки POI" - "Открыть попап рельефа" - "Снять чекбокс POI" - "Убедиться что маркеры исчезли" - "Установить чекбокс POI" - "Убедиться что маркеры появились" expected: - "Маркеры POI скрываются и появляются в соответствии с чекбоксом" - id: TP-07 type: e2e description: "Состояние POI сохраняется после перезагрузки" steps: - "Открыть карту" - "Снять чекбокс POI" - "Перезагрузить страницу" - "Открыть попап рельефа" expected: - "Чекбокс POI снят" - "Маркеры POI не отображаются" - id: TP-08 type: integration description: "Чекбокс POI не влияет на другие слои" steps: - "Включить Тени рельефа и Грунтовки" - "Снять чекбокс POI" expected: - "Тени рельефа остаются видимыми" - "Грунтовки остаются видимыми" - "Только POI скрыты" - id: TP-09 type: e2e description: "Мобильная доступность чекбокса" steps: - "Открыть карту на мобильном viewport (375px)" - "Открыть попап рельефа" - "Тапнуть чекбокс POI" expected: - "Чекбокс нажимается без проблем" - "Touch target достаточный (≥ 44px)"