mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-06-10 16:14:54 +03:00
11e961c816
Покрывает clickElement по имени страницы как механизм переключения вкладок формы. Используем форму элемента Номенклатура: page1 показывает шапку (Артикул, ВидНоменклатуры, ...), page2 — Дополнительно (ЕдиницаИзмерения, Комментарий). Verify: набор state.fields различен после переключения и совпадает после возврата.
33 lines
1.6 KiB
JavaScript
33 lines
1.6 KiB
JavaScript
export const name = 'Страницы формы: переключение между Основное и Дополнительно';
|
|
export const tags = ['tabs', 'smoke'];
|
|
export const timeout = 60000;
|
|
|
|
export default async function({ navigateSection, openCommand, clickElement, closeForm, getFormState, assert, step, log }) {
|
|
|
|
await step('switch: переключение страниц на форме номенклатуры', async () => {
|
|
await navigateSection('Склад');
|
|
await openCommand('Номенклатура');
|
|
await clickElement('Товары', { dblclick: true });
|
|
await clickElement('Товар 01', { dblclick: true });
|
|
|
|
const s1 = await getFormState();
|
|
const names1 = s1.fields?.map(f => f.name) || [];
|
|
log(`page1 fields: ${names1.join(', ')}`);
|
|
assert.includes(names1, 'Артикул', 'На странице Основное должен быть Артикул');
|
|
|
|
await clickElement('Дополнительно');
|
|
const s2 = await getFormState();
|
|
const names2 = s2.fields?.map(f => f.name) || [];
|
|
log(`page2 fields: ${names2.join(', ')}`);
|
|
assert.notEqual(names2.join(','), names1.join(','), 'Набор полей на странице Дополнительно должен отличаться');
|
|
|
|
await clickElement('Основное');
|
|
const s3 = await getFormState();
|
|
const names3 = s3.fields?.map(f => f.name) || [];
|
|
log(`back to page1 fields: ${names3.join(', ')}`);
|
|
assert.includes(names3, 'Артикул', 'После возврата на Основное снова виден Артикул');
|
|
|
|
await closeForm({ save: false });
|
|
});
|
|
}
|