From cb16c03e012907c852c0029c0c1036f5f6d207cb Mon Sep 17 00:00:00 2001 From: Denozordec Date: Thu, 24 Sep 2026 01:40:34 +0700 Subject: [PATCH] =?UTF-8?q?test(ui):=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D0=B8=D1=82=D1=8C=20=D0=BF=D0=B5=D1=80=D0=B8=D0=BE=D0=B4?= =?UTF-8?q?=20=D1=82=D1=80=D0=B0=D1=84=D0=B8=D0=BA=D0=B0=20=D0=BD=D0=B0=20?= =?UTF-8?q?=D1=82=D0=B5=D0=BB=D0=B5=D1=84=D0=BE=D0=BD=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/ux-ui-progress.md | 5 +++++ tests/e2e/traffic-details.spec.ts | 16 ++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/docs/ux-ui-progress.md b/docs/ux-ui-progress.md index 832d47e6..ba3c68eb 100644 --- a/docs/ux-ui-progress.md +++ b/docs/ux-ui-progress.md @@ -29,6 +29,11 @@ | 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Не начат | | 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат | +## Блок 8.4А2 — мобильный период серверного трафика (2026-09-24) + +- Добавлены E2E ширин 320/390 px: кнопка 24ч помещается в экран, меняет период, показывает подтверждённые детали; документ не переполняется по горизонтали. Всего 4 теста деталей прошли, lint теста чистый. Изменений production-кода в этом блоке нет. +- Использовано 98% пятичасового и 62% недельного лимита; работа сохранена локальным коммитом без push. Следующий шаг: мобильные клиенты/интерфейсы, длинные значения и пустые состояния трафика, затем оставшиеся пункты 8.4. Общая приёмка этапа 8 ещё не завершена. + ## Блок 8.4А — адаптивная оболочка трафика (2026-09-24) - Общие списки/детали трафика и flow переходят в одну колонку на узких экранах; на широких — 300px + гибкая колонка. Отступы Frame адаптивны, заголовки и периоды переносятся, навигация разделов прокручивается по горизонтали. diff --git a/tests/e2e/traffic-details.spec.ts b/tests/e2e/traffic-details.spec.ts index ad97666a..ace661c8 100644 --- a/tests/e2e/traffic-details.spec.ts +++ b/tests/e2e/traffic-details.spec.ts @@ -56,3 +56,19 @@ test('Детали трафика: ошибка интерфейса не под await expect(page.getByRole('heading', { name: 'Детали 1h ether2', exact: true })).toBeVisible() await expect(page.getByLabel('Скорость выбранного сервера')).toBeVisible() }) + +for (const width of [320, 390]) { + test(`Детали трафика: период доступен на ${width}px`, async ({ page }) => { + await page.setViewportSize({ width, height: 900 }) + await setup(page) + const period = page.getByRole('button', { name: '24ч', exact: true }) + const box = await period.boundingBox() + expect(box).not.toBeNull() + expect(box!.x).toBeGreaterThanOrEqual(0) + expect(box!.x + box!.width).toBeLessThanOrEqual(width + 1) + await period.click() + await expect(page.getByRole('heading', { name: 'Детали 24h __all__', exact: true })).toBeVisible() + await expect(page.getByLabel('Скорость выбранного сервера')).toBeVisible() + expect(await page.evaluate(() => document.documentElement.scrollWidth <= window.innerWidth + 1)).toBe(true) + }) +}