chore(ui): fix glossary tests (#23368)

This commit is contained in:
Karan Hotchandani 2025-09-13 13:44:24 +05:30 committed by GitHub
parent 2e134b2cfe
commit 5a68dba5f0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 62 additions and 31 deletions

View File

@ -73,7 +73,6 @@ import {
verifyAllColumns, verifyAllColumns,
verifyColumnsVisibility, verifyColumnsVisibility,
verifyGlossaryDetails, verifyGlossaryDetails,
verifyGlossaryTermAssets,
verifyGlossaryWorkflowReviewerCase, verifyGlossaryWorkflowReviewerCase,
verifyTaskCreated, verifyTaskCreated,
verifyWorkflowInstanceExists, verifyWorkflowInstanceExists,
@ -744,12 +743,18 @@ test.describe('Glossary tests', () => {
await goToAssetsTab(page, glossaryTerm1.data.displayName); await goToAssetsTab(page, glossaryTerm1.data.displayName);
await addAssetToGlossaryTerm(page, assets); await addAssetToGlossaryTerm(page, assets);
await renameGlossaryTerm(page, glossaryTerm1, newName); await renameGlossaryTerm(page, glossaryTerm1, newName);
await verifyGlossaryTermAssets(
page, await page.click('[data-testid="overview"]');
glossary1.data, const queryRes = page.waitForResponse(
glossaryTerm1.data, '/api/v1/search/query?q=*&index=all&from=0&size=15'
assets.length
); );
await page.getByTestId('assets').click();
await queryRes;
await page.waitForSelector('.ant-tabs-tab-active:has-text("Assets")');
await expect(
page.getByTestId('assets').getByTestId('filter-count')
).toContainText(`${assets.length}`);
}); });
await test.step('Rename the same entity again', async () => { await test.step('Rename the same entity again', async () => {
@ -763,12 +768,17 @@ test.describe('Glossary tests', () => {
assets.length assets.length
); );
await renameGlossaryTerm(page, glossaryTerm1, newName); await renameGlossaryTerm(page, glossaryTerm1, newName);
await verifyGlossaryTermAssets( await page.click('[data-testid="overview"]');
page, const queryRes = page.waitForResponse(
glossary1.data, '/api/v1/search/query?q=*&index=all&from=0&size=15'
glossaryTerm1.data,
assets.length
); );
await page.getByTestId('assets').click();
await queryRes;
await page.waitForSelector('.ant-tabs-tab-active:has-text("Assets")');
await expect(
page.getByTestId('assets').getByTestId('filter-count')
).toContainText(`${assets.length}`);
}); });
} finally { } finally {
await table.delete(apiContext); await table.delete(apiContext);
@ -1018,8 +1028,13 @@ test.describe('Glossary tests', () => {
).not.toBeVisible(); ).not.toBeVisible();
await selectActiveGlossary(page, glossary2.data.displayName); await selectActiveGlossary(page, glossary2.data.displayName);
const termRes = page.waitForResponse(
'/api/v1/glossaryTerms?directChildrenOf=*&fields=childrenCount%2Cowners%2Creviewers&limit=1000'
);
// verify the term is moved to the destination glossary // verify the term is moved to the destination glossary
await page.getByTestId('expand-collapse-all-button').click(); await page.getByTestId('expand-collapse-all-button').click();
await termRes;
await expect( await expect(
page.getByRole('cell', { page.getByRole('cell', {
@ -1228,7 +1243,12 @@ test.describe('Glossary tests', () => {
await selectActiveGlossary(page, glossary1.data.displayName); await selectActiveGlossary(page, glossary1.data.displayName);
await selectActiveGlossaryTerm(page, glossaryTerm1.data.displayName); await selectActiveGlossaryTerm(page, glossaryTerm1.data.displayName);
await page.getByTestId('terms').click(); await page.getByTestId('terms').click();
const termRes = page.waitForResponse(
'/api/v1/glossaryTerms?directChildrenOf=*&fields=childrenCount%2Cowners%2Creviewers&limit=1000'
);
await page.getByTestId('expand-collapse-all-button').click(); await page.getByTestId('expand-collapse-all-button').click();
await termRes;
await expect( await expect(
page.getByRole('cell', { name: glossaryTerm2.data.displayName }) page.getByRole('cell', { name: glossaryTerm2.data.displayName })
@ -1419,7 +1439,12 @@ test.describe('Glossary tests', () => {
try { try {
await sidebarClick(page, SidebarItem.GLOSSARY); await sidebarClick(page, SidebarItem.GLOSSARY);
await selectActiveGlossary(page, glossary1.data.displayName); await selectActiveGlossary(page, glossary1.data.displayName);
const termRes = page.waitForResponse(
'/api/v1/glossaryTerms?directChildrenOf=*&fields=childrenCount%2Cowners%2Creviewers&limit=1000'
);
await page.getByTestId('expand-collapse-all-button').click(); await page.getByTestId('expand-collapse-all-button').click();
await termRes;
await expect( await expect(
page.getByRole('cell', { name: glossaryTerm1.data.displayName }) page.getByRole('cell', { name: glossaryTerm1.data.displayName })

View File

@ -117,12 +117,33 @@ export const validateDomainForm = async (page: Page) => {
await expect(page.locator('#name_help')).toHaveText(NAME_VALIDATION_ERROR); await expect(page.locator('#name_help')).toHaveText(NAME_VALIDATION_ERROR);
}; };
export const selectDomain = async (page: Page, domain: Domain['data']) => { export const selectDomain = async (
await page page: Page,
.getByRole('menuitem', { name: domain.displayName }) domain: Domain['data'],
.locator('span') bWaitForResponse = true
.click(); ) => {
const menuItem = page.getByRole('menuitem', { name: domain.displayName });
const isSelected = await menuItem.evaluate((element) => {
return element.classList.contains('ant-menu-item-selected');
});
if (!isSelected) {
if (bWaitForResponse) {
const domainRes = page.waitForResponse(
'/api/v1/domains/name/*?fields=children%2Cowners%2Cparent%2Cexperts%2Ctags%2Cfollowers%2Cextension'
);
await menuItem.click();
await domainRes;
} else {
await menuItem.click();
}
}
await page.waitForLoadState('networkidle'); await page.waitForLoadState('networkidle');
await page.waitForSelector('[data-testid="loader"]', {
state: 'detached',
});
}; };
export const selectSubDomain = async ( export const selectSubDomain = async (
@ -244,8 +265,6 @@ export const checkDomainDisplayName = async (
page: Page, page: Page,
displayName: string displayName: string
) => { ) => {
await page.waitForLoadState('networkidle');
await expect(page.getByTestId('entity-header-display-name')).toHaveText( await expect(page.getByTestId('entity-header-display-name')).toHaveText(
displayName displayName
); );

View File

@ -841,19 +841,6 @@ export const updateNameForGlossaryTerm = async (
return data; return data;
}; };
export const verifyGlossaryTermAssets = async (
page: Page,
glossary: GlossaryData,
glossaryTermData: GlossaryTermData,
assetsLength: number
) => {
await page.click('[data-testid="overview"]');
await redirectToHomePage(page);
await sidebarClick(page, SidebarItem.GLOSSARY);
await selectActiveGlossary(page, glossary.displayName);
await goToAssetsTab(page, glossaryTermData.displayName, assetsLength);
};
export const renameGlossaryTerm = async ( export const renameGlossaryTerm = async (
page: Page, page: Page,
glossaryTerm: GlossaryTerm, glossaryTerm: GlossaryTerm,