test(ui): проверить смену режима во время опроса
This commit is contained in:
1 parent
27f8323624
commit
ddb47a0ee4
2 files changed
+27
No files matched your search
@@ -29,6 +29,11 @@
|
|||||||
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Не начат |
|
| 11Б | Оповещения, сбор данных, интеграции, релизы и настройки | Не начат |
|
||||||
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
|
| 12 | Итоговая доступность, адаптивность, производительность и регрессия | Не начат |
|
||||||
|
|
||||||
|
## Приёмка 7.5Д — смена режима при незавершённом Ping (2026-09-23)
|
||||||
|
|
||||||
|
- Новый E2E удерживает POST collect-group, открывает настройки обычной ссылкой, переключает «Живые» на «Моковые», возвращается назад и получает поздний 500 старого запроса. Проверено отсутствие старой ошибки и доступность создания пробы в новом режиме. Тест прошёл; код приложения не менялся. Сценарий включает размонтирование страницы, не доказывает смену контекста без размонтирования.
|
||||||
|
- URL backend в текущем Playwright окружении заблокирован NEXT_PUBLIC_BACKEND_URL=same-origin. Смену адреса backend нужно проверять отдельной конфигурацией; этот сценарий остаётся открытым, как и сквозной переход к Ping-проверке из дашборда. Production build не повторялся для изменения теста; последняя успешная сборка ca9474a. Работа продолжена по просьбе пользователя при остатке 7% пятичасовой квоты. Локальный коммит без push.
|
||||||
|
|
||||||
## Приёмка 7.5Г — сквозной сценарий сервера (2026-09-23)
|
## Приёмка 7.5Г — сквозной сценарий сервера (2026-09-23)
|
||||||
|
|
||||||
- Добавлен E2E «проблема на дашборде → выбранный сервер → опрос с 403 → успешный повтор → назад → вперёд». Проверены точный ID и одна строка, сохранение выбранного сервера при отказе, два явных POST только выбранному устройству и отсутствие операций записи от переходов истории.
|
- Добавлен E2E «проблема на дашборде → выбранный сервер → опрос с 403 → успешный повтор → назад → вперёд». Проверены точный ID и одна строка, сохранение выбранного сервера при отказе, два явных POST только выбранному устройству и отсутствие операций записи от переходов истории.
|
||||||
|
|||||||
@@ -641,3 +641,25 @@ for (const width of [320, 390]) {
|
|||||||
expect(await page.evaluate(() => document.documentElement.scrollWidth <= innerWidth)).toBe(true)
|
expect(await page.evaluate(() => document.documentElement.scrollWidth <= innerWidth)).toBe(true)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test('Смена режима через настройки: поздняя ошибка Ping не появляется после возврата', async ({ page }) => {
|
||||||
|
await setup(page, '/uptime?probe=p1', 0, false, 'mm:uptime:write')
|
||||||
|
let release!: () => void
|
||||||
|
const gate = new Promise<void>(resolve => { release = resolve })
|
||||||
|
await page.route('**/api/uptime/probes/collect-group', async route => {
|
||||||
|
await gate
|
||||||
|
await route.fulfill({ status: 500, json: { error: 'Ошибка старого live-подключения' } })
|
||||||
|
})
|
||||||
|
const started = page.waitForRequest(r => r.url().endsWith('/collect-group'))
|
||||||
|
await page.getByRole('button', { name: 'Обновить', exact: true }).click()
|
||||||
|
await started
|
||||||
|
await page.locator('a[href="/settings"]').first().click()
|
||||||
|
await page.getByRole('button', { name: 'Моковые', exact: true }).click()
|
||||||
|
await page.goBack()
|
||||||
|
await expect(page.getByText(/Демо-режим · пробы/)).toBeVisible()
|
||||||
|
const response = page.waitForResponse(r => r.url().endsWith('/collect-group'))
|
||||||
|
release()
|
||||||
|
await response
|
||||||
|
await expect(page.getByText('Ошибка старого live-подключения', { exact: true })).toHaveCount(0)
|
||||||
|
await expect(page.getByRole('button', { name: 'Новая проба', exact: true })).toBeEnabled()
|
||||||
|
})
|
||||||
Reference in new issue
Block a user