spec: plan grouping of all-account rows by instrument (WealthLedger/main#47)
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# Test Cases — pagination
|
||||
|
||||
## TC-PAG-001 — Группа, разрезанная границей страницы журнала: конкретное содержимое страниц и переходы
|
||||
|
||||
**Verifies:** `brokerage-account-ledger` — `All-accounts ledger grouping preserves order and limits` / Scenario: Группа на границе страницы (new combination: конкретное содержимое страниц, next/prev)
|
||||
**Risk / Priority:** Высокий / High
|
||||
**Preconditions:** Режим «Все счета»; полный период; тестовые данные строятся вокруг фактического размера страницы N, который возвращает сервер (фиксируется в момент прогона).
|
||||
**Test Data:** Серверный порядок: p1..p5 (прочие записи), X1 (купон X, +100 RUB), X2 (купон X, +150 RUB), X3 (купон X, +50 RUB), p9..p12. Размер страницы N — как у сервера; данные готовятся так, чтобы X1 был последней записью страницы 1, а X2, X3 — началом страницы 2.
|
||||
**Steps:**
|
||||
1. Открыть страницу 1 журнала; зафиксировать состав.
|
||||
2. Перейти на страницу 2.
|
||||
3. Вернуться на страницу 1.
|
||||
**Expected Results:** Страница 1 заканчивается записью X1 как обычной строкой: группы нет (для группы нужно ≥2 показанных записей), итог не показывается. Страница 2 начинается группой X2+X3 (итог +200 RUB, разбивка X2/X3), затем p9…. Возврат на страницу 1 воспроизводит тот же состав. Серверный относительный порядок нигде не нарушен; записи одной группы не «стягиваются» через границу страницы.
|
||||
**Automation Candidate:** yes (E2E)
|
||||
|
||||
## TC-PAG-002 — Обзор «Все счета»: пять записей, шестая подходящая существует, но не показана
|
||||
|
||||
**Verifies:** `brokerage-account-ledger` — `Account overview includes recent ledger events` / Scenario: Отображение последних событий (new combination: группа на границе лимита 5)
|
||||
**Risk / Priority:** Высокий / High
|
||||
**Preconditions:** Обзор «Все счета».
|
||||
**Test Data:** Последние 6 записей в серверном порядке (свежая → старая): X1 (купон X, ИИС, +100 RUB), p2, p3, p4, p5, X0 (купон X, Брокерский, +200 RUB — шестая, за пределами выборки). X1 и X0 приходятся на один и тот же экранный день и один точный тип — по ключу они образовали бы группу, но X0 не входит в выборку обзора.
|
||||
**Steps:**
|
||||
1. Открыть обзор «Все счета».
|
||||
2. Перейти в полный журнал.
|
||||
**Expected Results:** В обзоре ровно 5 записей; X1 не образует группу (второй записи с тем же ключом в выборке нет) и показан отдельной строкой; X0 в обзоре отсутствует. Полный журнал показывает группу X0+X1 с итогом +300 RUB на месте своей первой записи.
|
||||
**Automation Candidate:** yes (E2E)
|
||||
|
||||
## TC-PAG-003 — Обзор «Все счета»: лимит 5 считается по записям, группа занимает одну визуальную позицию
|
||||
|
||||
**Verifies:** `brokerage-account-ledger` — `Account overview includes recent ledger events` / Scenario: Группировка в последних записях обзора (new combination: счётчик лимита)
|
||||
**Risk / Priority:** Средний / Medium
|
||||
**Preconditions:** Обзор «Все счета».
|
||||
**Test Data:** Последние записи (свежая → старая): p1, X1 (купон X, +100 RUB), X0 (купон X, +200 RUB, тот же экранный день и точный тип), p4, p5, p6.
|
||||
**Steps:**
|
||||
1. Открыть обзор «Все счета».
|
||||
2. Посчитать визуальные позиции и проверить отсутствие p6.
|
||||
**Expected Results:** Лимит 5 считается по записям: показаны записи p1, X1, X0, p4, p5 — это 4 визуальные позиции: p1, группа X (на месте X1, итог +300 RUB, разбивка X1/X0), p4, p5. Запись p6 не показана: она шестая по счётчику записей, свободной позиции от лимита нет.
|
||||
**Automation Candidate:** yes (E2E)
|
||||
Reference in New Issue
Block a user