mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-16 07:45:17 +03:00
test(web-test): покрытие quickChoice + radio (RadioButtons)
03-fillfields: - reference-dropdown: переведён с Контрагент на Организация (после смены quickChoice Контрагенты идут через форму выбора) - новый шаг radio: КатегорияЦены через method=radio (RadioButtons) 04-selectvalue: - dropdown: переведён на Организация (quickChoice=true) - новый шаг direct-form: Контрагент (quickChoice=false), method=form Закрывает selectValue#3 dropdown (P0), selectValue#6 direct-form (P1), fillFields#3 radio (P1) из coverage matrix. Tumbler-представление радио (СпособУчёта) пока не покрыто — getFormState не возвращает Tumbler в fields[]. Зафиксировано в upload/web-test-bugs.md пункт 5. 10/10 smoke зелёные на webtest базе. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,20 +1,36 @@
|
||||
export const name = 'selectValue: dropdown быстрый выбор для ссылочного поля';
|
||||
export const name = 'selectValue: dropdown vs форма выбора';
|
||||
export const tags = ['selectvalue', 'smoke'];
|
||||
export const timeout = 60000;
|
||||
export const timeout = 90000;
|
||||
|
||||
const findField = (state, name) => state.fields?.find(f => f.name === name || f.label === name);
|
||||
|
||||
export default async function({ navigateSection, openCommand, clickElement, selectValue, closeForm, getFormState, assert, step, log }) {
|
||||
export default async function({ navigateSection, openCommand, clickElement, selectValue, closeForm, assert, step, log }) {
|
||||
|
||||
await step('dropdown: Контрагент → CatalogRef.Контрагенты, малый список', async () => {
|
||||
await step('dropdown: Организация → CatalogRef.Организации (quickChoice=true)', async () => {
|
||||
await navigateSection('Склад');
|
||||
await openCommand('Приходная накладная');
|
||||
await clickElement('Создать');
|
||||
|
||||
const result = await selectValue('Контрагент', 'ООО Север');
|
||||
const result = await selectValue('Организация', 'Альфа');
|
||||
log(`method=${result.selected?.method}, search=${result.selected?.search}`);
|
||||
assert.equal(result.selected?.method, 'dropdown', 'Должен быть метод dropdown (быстрый выбор)');
|
||||
|
||||
const field = findField(result, 'Организация');
|
||||
log(`Организация value='${field?.value}'`);
|
||||
assert.includes(field?.value || '', 'Альфа', 'Организация должна показать выбранное значение');
|
||||
|
||||
await closeForm({ save: false });
|
||||
});
|
||||
|
||||
await step('direct-form: Контрагент → CatalogRef.Контрагенты (quickChoice=false)', async () => {
|
||||
await navigateSection('Склад');
|
||||
await openCommand('Приходная накладная');
|
||||
await clickElement('Создать');
|
||||
|
||||
const result = await selectValue('Контрагент', 'Север');
|
||||
log(`method=${result.selected?.method}, search=${result.selected?.search}`);
|
||||
assert.equal(result.selected?.method, 'form', 'Должен быть метод form (через форму выбора)');
|
||||
|
||||
const field = findField(result, 'Контрагент');
|
||||
log(`Контрагент value='${field?.value}'`);
|
||||
assert.includes(field?.value || '', 'Север', 'Контрагент должен показать выбранное значение');
|
||||
|
||||
Reference in New Issue
Block a user