datalens-ui/tests/suites/dataset/parameters/addParameter.test.ts
2026-06-24 20:31:05 +05:00

49 lines
1.8 KiB
TypeScript

import {Page, expect} from '@playwright/test';
import {DialogParameterDataTypes} from '../../../page-objects/common/DialogParameter';
import DatasetPage from '../../../page-objects/dataset/DatasetPage';
import {openTestPage, waitForCondition} from '../../../utils';
import {RobotChartsDatasetUrls} from '../../../utils/constants';
import datalensTest from '../../../utils/playwright/globalTestDefinition';
const FIRST_ROW_INDEX = 0;
datalensTest.describe('Datasets - Adding a new parameter', () => {
datalensTest.beforeEach(async ({page}: {page: Page}) => {
await openTestPage(page, RobotChartsDatasetUrls.DatasetWithParameters, {tab: 'parameters'});
});
datalensTest('Adding a parameter to a dataset', async ({page}: {page: Page}) => {
const datasetPage = new DatasetPage({page});
const PARAMETER_NAME = 'PARAMETER_TEST_NAME';
const PARAMETER_TYPE = DialogParameterDataTypes.Boolean;
const PARAMETER_VALUE = 'false';
await datasetPage.datasetTabSection.clickAddButton();
await datasetPage.dialogParameter.setName(PARAMETER_NAME);
await datasetPage.dialogParameter.selectType(PARAMETER_TYPE);
await datasetPage.dialogParameter.setDefaultValueBoolean(PARAMETER_VALUE);
await datasetPage.dialogParameter.apply();
await waitForCondition(async () => {
const rowsCount = await datasetPage.datasetTabSection.getRowsCount();
return rowsCount === 1;
});
const row = await datasetPage.datasetTabSection.getRowLocatorByIndex(FIRST_ROW_INDEX);
await expect(row).toContainText(PARAMETER_NAME);
await expect(row).toContainText(PARAMETER_VALUE);
const typeLocator = row.getByTestId(`${PARAMETER_TYPE}-row-0`);
await expect(typeLocator).toHaveCount(1);
});
});