mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-20 01:20:59 +03:00
test(web-test): покрыть reveal-loop и hasMore на динамическом списке
3 новых шага в 18-cell-click на группе БольшойСписок (60 элементов)
справочника Номенклатура:
- dyn-list setup — вход в группу, проверка hasMore = {above:false, below:true}
(определяется через turn-кнопки vertButtonScroll, не через scrollbar табчасти)
- dyn-list reveal — clickElement({row:{filter}}, {scroll:true}) на дин-списке,
находит Позиция 055 через PageDown loop; после прокрутки above=true
- dyn-list cleanup
Раньше reveal-loop и hasMore проверялись только на табчасти LongDoc;
теперь покрыт и второй тип виртуализированного грида.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
81596503e8
commit
89b109ab04
@@ -213,4 +213,37 @@ export default async function({
|
||||
await step('cleanup: close LongDoc', async () => {
|
||||
await closeForm({ save: false });
|
||||
});
|
||||
|
||||
// ── Dynamic list (not tabular section): hasMore.above/below + reveal-loop ──
|
||||
// Группа БольшойСписок справочника Номенклатура содержит 60 элементов —
|
||||
// заведомо больше окна виртуализации. В отличие от табчасти LongDoc, это
|
||||
// ДИНАМИЧЕСКИЙ список: hasMore определяется через turn-кнопки vertButtonScroll.
|
||||
await step('dyn-list setup: открыть Номенклатуру, развернуть БольшойСписок', async () => {
|
||||
await navigateSection('Склад');
|
||||
await openCommand('Номенклатура');
|
||||
await clickElement('БольшойСписок', { dblclick: true });
|
||||
await wait(1);
|
||||
const t = await readTable();
|
||||
log(`БольшойСписок: shown=${t.shown} hasMore=${JSON.stringify(t.hasMore)}`);
|
||||
// Зашли в группу — наверху списка, сверху ничего, снизу есть (60 > окна).
|
||||
assert.equal(t.hasMore?.above, false, 'в начале списка above=false');
|
||||
assert.equal(t.hasMore?.below, true, '60 элементов > окна → below=true');
|
||||
});
|
||||
|
||||
await step('dyn-list reveal: scroll:true находит Позиция 055 в длинном дин-списке', async () => {
|
||||
const res = await clickElement(
|
||||
{ row: { 'Наименование': 'Позиция 055' }, column: 'Наименование' },
|
||||
{ scroll: true }
|
||||
);
|
||||
log(`reveal clicked: ${JSON.stringify(res.clicked)}`);
|
||||
assert.equal(res.clicked?.kind, 'gridCell', 'reveal-loop на дин-списке нашёл строку');
|
||||
// После прокрутки к концовой части списка сверху уже есть скрытые строки.
|
||||
const t = await readTable();
|
||||
log(`after reveal: hasMore=${JSON.stringify(t.hasMore)}`);
|
||||
assert.equal(t.hasMore?.above, true, 'после прокрутки вниз above=true');
|
||||
});
|
||||
|
||||
await step('dyn-list cleanup: закрыть список', async () => {
|
||||
await closeForm();
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user