[ACS-9154] Fix unstable tests in ACA after migration to local ACS (#4341)

* [ACS-9154] enable flaky tests for debugging

* [ACS-9154] added artifacts

* [ACS-9154] Added wait for viewer spinner to load + excluded one test

* [ACS-9154] Final tests stabilization (for this pr)

* [ACS-9154] Excluded XAT-5304

* [ACS-9154] exclude C277736 updated
This commit is contained in:
Adam Świderski 2025-02-04 11:35:17 +01:00 committed by GitHub
parent 9138802bd3
commit f01d6e161b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 37 additions and 12 deletions

View File

@ -1,3 +1,3 @@
{ {
"XAT-5304": "https://hyland.atlassian.net/browse/ACS-9154" "XAT-5304": "https://hyland.atlassian.net/browse/ACS-9187"
} }

View File

@ -179,6 +179,12 @@ test.describe('Info Drawer - File Folder Properties', () => {
test('[XAT-17240] Remove a tag from a node', async ({ personalFiles }) => { test('[XAT-17240] Remove a tag from a node', async ({ personalFiles }) => {
await fileActionsApi.waitForNodes(Folder17240, { expect: 1 }); await fileActionsApi.waitForNodes(Folder17240, { expect: 1 });
await tagsApi.assignTagToNode(Folder17240Id, tagBody); await tagsApi.assignTagToNode(Folder17240Id, tagBody);
await expect(async () => {
expect((await tagsApi.listTagsForNode(Folder17240Id)).list.entries.length).toEqual(1);
}).toPass({
intervals: [1_000],
timeout: 10_000
});
await personalFiles.navigate(); await personalFiles.navigate();
await Utils.reloadPageIfRowNotVisible(personalFiles, Folder17240); await Utils.reloadPageIfRowNotVisible(personalFiles, Folder17240);
await expect(personalFiles.dataTable.getRowByName(Folder17240)).toBeVisible(); await expect(personalFiles.dataTable.getRowByName(Folder17240)).toBeVisible();

View File

@ -25,22 +25,35 @@
import { expect } from '@playwright/test'; import { expect } from '@playwright/test';
import { ApiClientFactory, Utils, test, SitesApi, QueriesApi, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-playwright-shared'; import { ApiClientFactory, Utils, test, SitesApi, QueriesApi, SITE_VISIBILITY, SITE_ROLES } from '@alfresco/aca-playwright-shared';
async function expectSiteToBeDefined(siteName: string, queriesApi: QueriesApi) {
await expect(async () => {
expect(await queriesApi.waitForSites(siteName, { expect: 1 })).toEqual(1);
}).toPass({
intervals: [1_000],
timeout: 10_000
});
}
test.describe('Library properties', () => { test.describe('Library properties', () => {
let sitesApi: SitesApi; let sitesApi: SitesApi;
let queriesApi: QueriesApi;
const username = `user1-${Utils.random()}`; const username = `user1-${Utils.random()}`;
const site = { const site = {
name: `site1-${Utils.random()}`, name: `site1-${Utils.random()}`,
id: `site-id-${Utils.random()}`, id: `site-id-${Utils.random()}`,
visibility: SITE_VISIBILITY.MODERATED, visibility: SITE_VISIBILITY.MODERATED,
description: 'my site description' description: 'my site description'
}; };
const siteForUpdate = { const siteForUpdate = {
name: `site2-${Utils.random()}`, name: `site2-${Utils.random()}`,
id: `site-id-${Utils.random()}`, id: `site-id-${Utils.random()}`,
visibility: SITE_VISIBILITY.MODERATED, visibility: SITE_VISIBILITY.MODERATED,
description: 'my initial description' description: 'my initial description'
}; };
const siteDup = `site3-${Utils.random()}`; const siteDup = `site3-${Utils.random()}`;
test.beforeAll(async () => { test.beforeAll(async () => {
@ -50,6 +63,7 @@ test.describe('Library properties', () => {
await apiClientFactory.createUser({ username }); await apiClientFactory.createUser({ username });
sitesApi = await SitesApi.initialize(username, username); sitesApi = await SitesApi.initialize(username, username);
queriesApi = await QueriesApi.initialize(username, username);
await sitesApi.createSite(site.name, site.visibility, site.description, site.id); await sitesApi.createSite(site.name, site.visibility, site.description, site.id);
await sitesApi.createSite(siteForUpdate.name, siteForUpdate.visibility, siteForUpdate.description, siteForUpdate.id); await sitesApi.createSite(siteForUpdate.name, siteForUpdate.visibility, siteForUpdate.description, siteForUpdate.id);
await sitesApi.createSite(siteDup); await sitesApi.createSite(siteDup);
@ -68,6 +82,7 @@ test.describe('Library properties', () => {
}); });
test('[C289336] Info drawer opens for a library', async ({ myLibrariesPage }) => { test('[C289336] Info drawer opens for a library', async ({ myLibrariesPage }) => {
await expectSiteToBeDefined(site.name, queriesApi);
await expect(myLibrariesPage.dataTable.getRowByName(site.name)).toBeVisible(); await expect(myLibrariesPage.dataTable.getRowByName(site.name)).toBeVisible();
await myLibrariesPage.dataTable.getRowByName(site.name).click(); await myLibrariesPage.dataTable.getRowByName(site.name).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();
@ -88,6 +103,7 @@ test.describe('Library properties', () => {
}); });
test('[C289338] Editable properties', async ({ myLibrariesPage }) => { test('[C289338] Editable properties', async ({ myLibrariesPage }) => {
await expectSiteToBeDefined(site.name, queriesApi);
await myLibrariesPage.dataTable.getRowByName(site.name).click(); await myLibrariesPage.dataTable.getRowByName(site.name).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();
await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible(); await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible();
@ -110,6 +126,7 @@ test.describe('Library properties', () => {
visibility: SITE_VISIBILITY.PRIVATE, visibility: SITE_VISIBILITY.PRIVATE,
description: 'new description' description: 'new description'
}; };
await expectSiteToBeDefined(siteForUpdate.name, queriesApi);
await myLibrariesPage.dataTable.getRowByName(siteForUpdate.name).click(); await myLibrariesPage.dataTable.getRowByName(siteForUpdate.name).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();
@ -133,6 +150,7 @@ test.describe('Library properties', () => {
}); });
test('[C289340] Cancel editing a site', async ({ myLibrariesPage }) => { test('[C289340] Cancel editing a site', async ({ myLibrariesPage }) => {
await expectSiteToBeDefined(site.name, queriesApi);
const newName = `new-name-${Utils.random}`; const newName = `new-name-${Utils.random}`;
const newDesc = `new desc ${Utils.random}`; const newDesc = `new desc ${Utils.random}`;
@ -155,9 +173,8 @@ test.describe('Library properties', () => {
}); });
test('[C289341] Warning appears when editing the name of the library by entering an existing name', async ({ myLibrariesPage }) => { test('[C289341] Warning appears when editing the name of the library by entering an existing name', async ({ myLibrariesPage }) => {
const queriesApi = await QueriesApi.initialize(username, username); await expectSiteToBeDefined(siteDup, queriesApi);
await queriesApi.waitForSites(site.name, { expect: 1 });
await myLibrariesPage.dataTable.getRowByName(siteDup).click(); await myLibrariesPage.dataTable.getRowByName(siteDup).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();
await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible(); await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible();
@ -170,6 +187,8 @@ test.describe('Library properties', () => {
}); });
test('[C289342] Site name too long', async ({ myLibrariesPage }) => { test('[C289342] Site name too long', async ({ myLibrariesPage }) => {
await expectSiteToBeDefined(site.name, queriesApi);
await myLibrariesPage.dataTable.getRowByName(site.name).click(); await myLibrariesPage.dataTable.getRowByName(site.name).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();
await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible(); await expect(myLibrariesPage.libraryDetails.infoDrawerPanel).toBeVisible();
@ -182,6 +201,8 @@ test.describe('Library properties', () => {
}); });
test('[C289343] Site description too long', async ({ myLibrariesPage }) => { test('[C289343] Site description too long', async ({ myLibrariesPage }) => {
await expectSiteToBeDefined(site.name, queriesApi);
await Utils.reloadPageIfRowNotVisible(myLibrariesPage, site.name); await Utils.reloadPageIfRowNotVisible(myLibrariesPage, site.name);
await myLibrariesPage.dataTable.getRowByName(site.name).click(); await myLibrariesPage.dataTable.getRowByName(site.name).click();
await myLibrariesPage.acaHeader.viewDetails.click(); await myLibrariesPage.acaHeader.viewDetails.click();

View File

@ -1,4 +1,3 @@
{ {
"C261153": "https://alfresco.atlassian.net/browse/AAE-7517", "C261153": "https://alfresco.atlassian.net/browse/AAE-7517"
"C589205": "https://hyland.atlassian.net/browse/ACS-9154"
} }

View File

@ -3,5 +3,5 @@
"C290018": "https://hyland.atlassian.net/browse/ACS-6928", "C290018": "https://hyland.atlassian.net/browse/ACS-6928",
"C699046-3": "https://hyland.atlassian.net/browse/ACS-7464", "C699046-3": "https://hyland.atlassian.net/browse/ACS-7464",
"C699498": "https://hyland.atlassian.net/browse/ACS-7682", "C699498": "https://hyland.atlassian.net/browse/ACS-7682",
"C277736": "https://hyland.atlassian.net/browse/ACS-9154" "C277736": "https://hyland.atlassian.net/browse/ACS-9192"
} }

View File

@ -2,6 +2,5 @@
"XAT-17181": "https://hyland.atlassian.net/browse/ACS-8865", "XAT-17181": "https://hyland.atlassian.net/browse/ACS-8865",
"XAT-17182": "https://hyland.atlassian.net/browse/ACS-8865", "XAT-17182": "https://hyland.atlassian.net/browse/ACS-8865",
"XAT-17184": "https://hyland.atlassian.net/browse/ACS-8865", "XAT-17184": "https://hyland.atlassian.net/browse/ACS-8865",
"XAT-17185": "https://hyland.atlassian.net/browse/ACS-8865", "XAT-17185": "https://hyland.atlassian.net/browse/ACS-8865"
"MNT-21058": "https://hyland.atlassian.net/browse/ACS-9154"
} }

View File

@ -200,7 +200,7 @@ test.describe('viewer action file', () => {
test('[MNT-21058] Upload new version action when node is locked', async ({ personalFiles }) => { test('[MNT-21058] Upload new version action when node is locked', async ({ personalFiles }) => {
await personalFiles.dataTable.performClickFolderOrFileToOpen(fileForUploadNewVersion2); await personalFiles.dataTable.performClickFolderOrFileToOpen(fileForUploadNewVersion2);
await personalFiles.viewer.waitForViewerToOpen(); await personalFiles.viewer.waitForViewerToOpen('wait for viewer content');
await Utils.uploadFileNewVersion(personalFiles, docxFile); await Utils.uploadFileNewVersion(personalFiles, docxFile);

View File

@ -69,7 +69,7 @@ export class ContentNodeSelectorDialog extends BaseComponent {
await row.click(); await row.click();
await expect(this.selectedRow).toBeVisible(); await expect(this.selectedRow).toBeVisible();
}).toPass({ }).toPass({
intervals: [2_000, 2_000, 2_000, 2_000, 2_000, 2_000, 2_000], intervals: [2_000],
timeout: 20_000 timeout: 20_000
}); });
} }

View File

@ -54,7 +54,7 @@ export class LinkRulesDialog extends BaseComponent {
await row.click(); await row.click();
await expect(this.selectFolderButton).toBeEnabled(); await expect(this.selectFolderButton).toBeEnabled();
}).toPass({ }).toPass({
intervals: [2_000, 2_000, 2_000, 2_000, 2_000, 2_000, 2_000], intervals: [2_000],
timeout: 20_000 timeout: 20_000
}); });
} }

View File

@ -70,7 +70,7 @@ export class ManageRules extends BaseComponent {
await this.ruleToggle.click(); await this.ruleToggle.click();
await expect(this.ruleToggleFalse).toBeVisible(); await expect(this.ruleToggleFalse).toBeVisible();
}).toPass({ }).toPass({
intervals: [2_000, 2_000, 2_000, 2_000, 2_000, 2_000, 2_000], intervals: [2_000],
timeout: 20_000 timeout: 20_000
}); });
} }