mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-17 16:25:16 +03:00
fix(web-test): fillTableRow — ранний выход после заполнения всех полей строки
Tab-цикл не выходил сразу после заполнения последнего поля: ветки заполнения по составному типу и по примитиву делали continue без проверки «все поля закрыты», и цикл протабывал остаток строки до wrap-around. На широких строках с объединёнными колонками (составной субконто) это заметно «бежало» табами до конца строки — холостые итерации + риск ухода фокуса/создания лишней строки. - row-fill v1.24: единая проверка в начале итерации `if (every filled) break`. Значение последнего поля к этому моменту уже зафиксировано (commit-Tab примитива, выбор из формы, либо end-of-row commit для choice-ячейки). - 05-table: guard на количество строк после составного фила. Проверено: полный регресс web-test 22/22; вживую на широкой ТЧ с составным субконто — лишний хвост табов устранён. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -140,9 +140,12 @@ export default async function({ navigateSection, openCommand, clickElement, fill
|
||||
assert.ok(item?.ok, `ячейка Источник заполнена без ошибки: ${item?.error || ''} ${item?.message || ''}`);
|
||||
|
||||
const t = await readTable({ table: 'Товары' });
|
||||
log(`Источник cell='${t.rows[0]?.['Источник']}'`);
|
||||
log(`Источник cell='${t.rows[0]?.['Источник']}' rows=${t.rows.length}`);
|
||||
assert.equal(t.rows[0]?.['Источник'], 'Север',
|
||||
'exact-preference + клик в видимую ячейку: выбран точный «Север», не «ООО Север»');
|
||||
// Guard: после составного фила цикл не должен табать дальше до создания лишней
|
||||
// строки (раньше ветка type→форма не выходила по «всё заполнено»).
|
||||
assert.equal(t.rows.length, 1, 'ровно одна строка — лишние табы не создали пустую');
|
||||
|
||||
await closeForm({ save: false });
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user