mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2025-12-26 15:10:05 +00:00
fix playwrights
This commit is contained in:
parent
73ea261451
commit
3816eb09f0
@ -21,7 +21,7 @@ export enum SidebarItem {
|
||||
GOVERNANCE = 'governance',
|
||||
GLOSSARY = 'glossary',
|
||||
DOMAINS = 'domains-section',
|
||||
DATA_PRODUCTS = 'data-products',
|
||||
DATA_PRODUCT = 'data-product',
|
||||
TAGS = 'tags',
|
||||
INSIGHTS = 'data-insight',
|
||||
SETTINGS = 'settings',
|
||||
@ -47,6 +47,7 @@ export const SIDEBAR_LIST_ITEMS = {
|
||||
[SidebarItem.TAGS]: [SidebarItem.GOVERNANCE, SidebarItem.TAGS],
|
||||
[SidebarItem.METRICS]: [SidebarItem.GOVERNANCE, SidebarItem.METRICS],
|
||||
[SidebarItem.DOMAIN]: [SidebarItem.DOMAINS, SidebarItem.DOMAIN],
|
||||
[SidebarItem.DATA_PRODUCT]: [SidebarItem.DOMAINS, SidebarItem.DATA_PRODUCT],
|
||||
|
||||
// Profile Dropdown
|
||||
'user-name': ['dropdown-profile', 'user-name'],
|
||||
|
||||
@ -227,8 +227,8 @@ test.describe('Domains', () => {
|
||||
|
||||
await test.step('Follow & Un-follow DataProducts', async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain.data, dataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct1.data);
|
||||
await followEntity(page, EntityTypeEndpoint.DataProduct);
|
||||
await redirectToHomePage(page);
|
||||
|
||||
@ -240,8 +240,8 @@ test.describe('Domains', () => {
|
||||
page.locator('[data-testid="following-widget"]')
|
||||
).toContainText(dataProduct1.data.displayName);
|
||||
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain.data, dataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct1.data);
|
||||
await unFollowEntity(page, EntityTypeEndpoint.DataProduct);
|
||||
await redirectToHomePage(page);
|
||||
|
||||
@ -256,8 +256,8 @@ test.describe('Domains', () => {
|
||||
|
||||
await test.step('Add assets to DataProducts', async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain.data, dataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct1.data);
|
||||
await addAssetsToDataProduct(
|
||||
page,
|
||||
dataProduct1.data.fullyQualifiedName ?? '',
|
||||
@ -267,8 +267,8 @@ test.describe('Domains', () => {
|
||||
|
||||
await test.step('Remove assets from DataProducts', async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain.data, dataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct1.data);
|
||||
await removeAssetsFromDataProduct(page, dataProduct1.data, assets);
|
||||
await checkAssetsCount(page, 0);
|
||||
});
|
||||
@ -555,11 +555,11 @@ test.describe('Domains', () => {
|
||||
await newDomainDP2.create(apiContext);
|
||||
await page.reload();
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain1.data, newDomainDP1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, newDomainDP1.data);
|
||||
await checkAssetsCount(page, 0);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain1.data, newDomainDP2.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, newDomainDP2.data);
|
||||
await checkAssetsCount(page, 0);
|
||||
}
|
||||
);
|
||||
@ -607,9 +607,8 @@ test.describe('Domains', () => {
|
||||
await page.reload();
|
||||
await redirectToHomePage(page);
|
||||
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDomain(page, domain.data);
|
||||
await selectDataProduct(page, domain.data, dataProduct.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct.data);
|
||||
|
||||
await expect(
|
||||
page.getByTestId('domain-owner-name').getByTestId('owner-label')
|
||||
@ -714,8 +713,8 @@ test.describe('Domains', () => {
|
||||
await createDataProduct(page, dataProduct.data);
|
||||
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectDataProduct(page, domain1.data, dataProduct.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct.data);
|
||||
|
||||
await addTagsAndGlossaryToDomain(page, {
|
||||
tagFqn: tag.responseData.fullyQualifiedName,
|
||||
@ -824,11 +823,7 @@ test.describe('Domains', () => {
|
||||
// Navigate to domain page
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
|
||||
// Select the domain
|
||||
await page
|
||||
.getByRole('menuitem', { name: domain.data.displayName })
|
||||
.locator('span')
|
||||
.click();
|
||||
await selectDomain(page, domain.data);
|
||||
|
||||
// Click on custom properties tab
|
||||
await page.getByTestId('custom_properties').click();
|
||||
@ -866,10 +861,7 @@ test.describe('Domains', () => {
|
||||
|
||||
// Navigate back to the domain and custom properties
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await page
|
||||
.getByRole('menuitem', { name: domain.data.displayName })
|
||||
.locator('span')
|
||||
.click();
|
||||
await selectDomain(page, domain.data);
|
||||
|
||||
await page.getByTestId('custom_properties').click();
|
||||
|
||||
|
||||
@ -36,7 +36,7 @@ import {
|
||||
toastNotification,
|
||||
uuid,
|
||||
} from './common';
|
||||
import { addOwner, waitForAllLoadersToDisappear } from './entity';
|
||||
import { addOwner } from './entity';
|
||||
import { sidebarClick } from './sidebar';
|
||||
|
||||
export const assignDomain = async (page: Page, domain: Domain['data']) => {
|
||||
@ -206,22 +206,45 @@ export const selectDataProductFromTab = async (
|
||||
|
||||
export const selectDataProduct = async (
|
||||
page: Page,
|
||||
domain: Domain['data'],
|
||||
dataProduct: DataProduct['data']
|
||||
) => {
|
||||
await page
|
||||
.getByRole('menuitem', { name: domain.displayName })
|
||||
.locator('span')
|
||||
.click();
|
||||
const searchBox = page
|
||||
.getByTestId('page-layout-v1')
|
||||
.getByRole('textbox', { name: 'Search' });
|
||||
|
||||
await selectDataProductFromTab(page, dataProduct);
|
||||
const dpRes = page.waitForResponse(
|
||||
'/api/v1/search/query?q=&index=data_product_search_index*'
|
||||
);
|
||||
|
||||
await searchBox.fill(dataProduct.name);
|
||||
|
||||
await dpRes;
|
||||
|
||||
await page.waitForSelector('[data-testid="loader"]', {
|
||||
state: 'detached',
|
||||
});
|
||||
|
||||
const dpApiRes = page.waitForResponse('/api/v1/dataProducts/name/*');
|
||||
|
||||
await page.getByRole('row', { name: dataProduct.displayName }).click();
|
||||
|
||||
await dpApiRes;
|
||||
|
||||
await page.waitForSelector('[data-testid="loader"]', {
|
||||
state: 'detached',
|
||||
});
|
||||
};
|
||||
|
||||
const goToAssetsTab = async (page: Page, domain: Domain['data']) => {
|
||||
await selectDomain(page, domain);
|
||||
await checkDomainDisplayName(page, domain.displayName);
|
||||
|
||||
const assetRes = page.waitForResponse('/api/v1/search/query*');
|
||||
await page.getByRole('tab', { name: /Assets/ }).click();
|
||||
await waitForAllLoadersToDisappear(page);
|
||||
await assetRes;
|
||||
|
||||
await page.waitForLoadState('networkidle');
|
||||
await page.waitForSelector('[data-testid="loader"]', { state: 'detached' });
|
||||
};
|
||||
|
||||
const fillCommonFormItems = async (
|
||||
@ -579,7 +602,7 @@ export const createDataProduct = async (
|
||||
|
||||
await fillCommonFormItems(page, dataProduct);
|
||||
const saveRes = page.waitForResponse('/api/v1/dataProducts');
|
||||
await page.getByTestId('save-data-product').click();
|
||||
await page.getByTestId('save-btn').click();
|
||||
await saveRes;
|
||||
};
|
||||
|
||||
@ -604,12 +627,14 @@ export const verifyDataProductAssetsAfterDelete = async (
|
||||
|
||||
await test.step('Add assets to DataProduct Sales', async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
|
||||
if (subDomain) {
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectSubDomain(page, domain.data, subDomain.data);
|
||||
await selectDataProductFromTab(page, dataProduct1.data);
|
||||
} else {
|
||||
await selectDataProduct(page, domain.data, dataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct1.data);
|
||||
}
|
||||
await addAssetsToDataProduct(
|
||||
page,
|
||||
@ -620,12 +645,14 @@ export const verifyDataProductAssetsAfterDelete = async (
|
||||
|
||||
await test.step('Add assets to DataProduct Finance', async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
|
||||
if (subDomain) {
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectSubDomain(page, domain.data, subDomain.data);
|
||||
await selectDataProductFromTab(page, dataProduct2.data);
|
||||
} else {
|
||||
await selectDataProduct(page, domain.data, dataProduct2.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, dataProduct2.data);
|
||||
}
|
||||
await addAssetsToDataProduct(
|
||||
page,
|
||||
@ -657,12 +684,14 @@ export const verifyDataProductAssetsAfterDelete = async (
|
||||
'Verify assets are not present in the newly created data product',
|
||||
async () => {
|
||||
await redirectToHomePage(page);
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
|
||||
if (subDomain) {
|
||||
await sidebarClick(page, SidebarItem.DOMAIN);
|
||||
await selectSubDomain(page, domain.data, subDomain.data);
|
||||
await selectDataProductFromTab(page, newDataProduct1.data);
|
||||
} else {
|
||||
await selectDataProduct(page, domain.data, newDataProduct1.data);
|
||||
await sidebarClick(page, SidebarItem.DATA_PRODUCT);
|
||||
await selectDataProduct(page, newDataProduct1.data);
|
||||
}
|
||||
await checkAssetsCount(page, 0);
|
||||
}
|
||||
|
||||
@ -32,7 +32,7 @@ describe('LeftSidebar', () => {
|
||||
expect(screen.getByTestId('image')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('app-bar-item-explore')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('observability')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('app-bar-item-domain')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('domains-section')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('governance')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('app-bar-item-settings')).toBeInTheDocument();
|
||||
expect(screen.getByTestId('app-bar-item-logout')).toBeInTheDocument();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user