Files
cc-1c-skills/tests/web-test/01-navigation.test.mjs
T
Nick Shirokov ba0c71fa45 test(smoke): починить 01-navigation и 04-selectvalue после фикса form-compile
01-navigation: первое открытое окно 1С имеет form=0 (number), и
assert.ok(state.form, ...) валился на falsy при первом запуске сессии.
Сменил на state.form != null.

04-selectvalue: явный save:false при закрытии модифицированной формы
накладной — после фикса SavedData=true главного реквизита платформа
требует решения по confirmation dialog.
2026-05-02 19:45:15 +03:00

43 lines
2.2 KiB
JavaScript

export const name = 'Навигация по разделам';
export const tags = ['nav', 'smoke'];
export const timeout = 60000;
export default async function({ navigateSection, getPageState, openCommand, closeForm, assert, step, log }) {
await step('Чтение начального состояния', async () => {
const state = await getPageState();
const names = (state.sections || []).map(s => s.name);
log('Sections: ' + names.join(', '));
assert.ok(names.length >= 2, 'Минимум 2 раздела');
assert.includes(names, 'Склад', 'Раздел Склад должен быть');
assert.includes(names, 'Администрирование', 'Раздел Администрирование должен быть');
});
await step('Переход в раздел Склад', async () => {
const result = await navigateSection('Склад');
log('Commands: ' + (result.commands || []).map(c => c.name).join(', '));
assert.ok(result.commands?.length > 0, 'Должны быть команды в разделе Склад');
});
await step('Открыть справочник Контрагенты', async () => {
const state = await openCommand('Контрагенты');
assert.ok(state.form != null, 'Форма списка Контрагентов должна открыться');
log('Opened: ' + state.title);
await closeForm();
});
await step('Переход в раздел Администрирование', async () => {
const result = await navigateSection('Администрирование');
log('Commands: ' + (result.commands || []).map(c => c.name).join(', '));
assert.ok(result.commands?.length > 0, 'Должны быть команды в разделе Администрирование');
});
await step('Открыть Номенклатуру из раздела Склад', async () => {
await navigateSection('Склад');
const state = await openCommand('Номенклатура');
assert.ok(state.form, 'Форма списка Номенклатуры должна открыться');
log('Opened: ' + state.title);
await closeForm();
});
}