[ACS-7295] create actions - beforeEach and afterAll refactored (#3730)

* [ACS-7295] create actions beforeEach and afterAll refactored

* [ACS-7295] review fix 1

* [ACS-7295] review fix 2
This commit is contained in:
Adam Świderski
2024-03-25 16:07:01 +01:00
committed by GitHub
parent 419f35e879
commit 2046630f58
5 changed files with 39 additions and 76 deletions

View File

@@ -39,16 +39,13 @@ test.describe('Move actions', () => {
let sourceFolder: string; let sourceFolder: string;
let destinationFolder: string; let destinationFolder: string;
test.afterAll(async ({ nodesApiAction }) => {
await Utils.deleteNodesSitesEmptyTrashcan(nodesApiAction, trashcanApi, 'afterAll failed');
});
test.beforeAll(async () => { test.beforeAll(async () => {
try { try {
const apiClientFactory = new ApiClientFactory(); const apiClientFactory = new ApiClientFactory();
await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.setUpAcaBackend('admin');
await apiClientFactory.createUser({ username }); await apiClientFactory.createUser({ username });
nodesApi = await NodesApi.initialize(username, username); nodesApi = await NodesApi.initialize(username, username);
trashcanApi = await TrashcanApi.initialize(username, username);
} catch {} } catch {}
}); });
@@ -68,6 +65,10 @@ test.describe('Move actions', () => {
await personalFiles.navigate(); await personalFiles.navigate();
}); });
test.afterAll(async () => {
await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed');
});
const moveContentInPersonalFiles = async (personalFilesPage: PersonalFilesPage, sourceFileList: string[], destinationName: string) => { const moveContentInPersonalFiles = async (personalFilesPage: PersonalFilesPage, sourceFileList: string[], destinationName: string) => {
await personalFilesPage.copyOrMoveContentInDatatable(sourceFileList, destinationName, 'Move'); await personalFilesPage.copyOrMoveContentInDatatable(sourceFileList, destinationName, 'Move');
await personalFilesPage.spinner.waitForReload(); await personalFilesPage.spinner.waitForReload();

View File

@@ -34,11 +34,13 @@ import {
SitesApi, SitesApi,
Utils, Utils,
errorStrings, errorStrings,
test test,
TrashcanApi
} from '@alfresco/playwright-shared'; } from '@alfresco/playwright-shared';
test.describe('Create file from template', () => { test.describe('Create file from template', () => {
let nodesApi: NodesApi; let nodesApi: NodesApi;
let trashcanApi: TrashcanApi;
let selectFileTemplateDialog: ContentNodeSelectorDialog; let selectFileTemplateDialog: ContentNodeSelectorDialog;
let createFileFromTemplateDialog: CreateFromTemplateDialogComponent; let createFileFromTemplateDialog: CreateFromTemplateDialogComponent;
let dataTable: DataTableComponent; let dataTable: DataTableComponent;
@@ -109,26 +111,17 @@ test.describe('Create file from template', () => {
await nodesApiAction.removeUserAccessOnNodeTemplate(restrictedTemplateFolder); await nodesApiAction.removeUserAccessOnNodeTemplate(restrictedTemplateFolder);
fileLink = (await nodesApiAction.createLinkToFileName(template2InRoot, await nodesApiAction.getNodeTemplatesFolderId())).entry.name; fileLink = (await nodesApiAction.createLinkToFileName(template2InRoot, await nodesApiAction.getNodeTemplatesFolderId())).entry.name;
nodesApi = await NodesApi.initialize(username, username); nodesApi = await NodesApi.initialize(username, username);
trashcanApi = await TrashcanApi.initialize(username, username);
}); });
test.beforeEach(async ({ loginPage, personalFiles }) => { test.beforeEach(async ({ loginPage, personalFiles }) => {
try { await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed');
await loginPage.loginUser( await personalFiles.navigate();
{ username: username, password: username },
{
withNavigation: true,
waitForLoading: true
}
);
await personalFiles.navigate();
} catch (error) {
console.error(`Main beforeEach failed: ${error}`);
}
}); });
test.afterAll(async ({ nodesApiAction }) => { test.afterAll(async ({ nodesApiAction }) => {
await nodesApiAction.cleanupNodeTemplatesItems([templatesFolder1, templatesFolder2, restrictedTemplateFolder, template1InRoot, template2InRoot]); await nodesApiAction.cleanupNodeTemplatesItems([templatesFolder1, templatesFolder2, restrictedTemplateFolder, template1InRoot, template2InRoot]);
await nodesApi.deleteCurrentUserNodes(); await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed');
}); });
test.describe('Personal Files page', () => { test.describe('Personal Files page', () => {

View File

@@ -34,12 +34,14 @@ import {
SitesApi, SitesApi,
Utils, Utils,
errorStrings, errorStrings,
test test,
TrashcanApi
} from '@alfresco/playwright-shared'; } from '@alfresco/playwright-shared';
test.describe('Create folder from template', () => { test.describe('Create folder from template', () => {
const apiClientFactory = new ApiClientFactory(); const apiClientFactory = new ApiClientFactory();
let nodesApi: NodesApi; let nodesApi: NodesApi;
let trashcanApi: TrashcanApi;
let selectFolderTemplateDialog: ContentNodeSelectorDialog; let selectFolderTemplateDialog: ContentNodeSelectorDialog;
let createFolderFromTemplateDialog: CreateFromTemplateDialogComponent; let createFolderFromTemplateDialog: CreateFromTemplateDialogComponent;
let dataTable: DataTableComponent; let dataTable: DataTableComponent;
@@ -109,6 +111,8 @@ test.describe('Create folder from template', () => {
await apiClientFactory.createUser({ username: username }); await apiClientFactory.createUser({ username: username });
await nodesApiAction.createContent(templates, `Data Dictionary/Space Templates`); await nodesApiAction.createContent(templates, `Data Dictionary/Space Templates`);
await nodesApiAction.removeUserAccessOnSpaceTemplate(restrictedTemplateFolder); await nodesApiAction.removeUserAccessOnSpaceTemplate(restrictedTemplateFolder);
nodesApi = await NodesApi.initialize(username, username);
trashcanApi = await TrashcanApi.initialize(username, username);
folderLink = (await nodesApiAction.createLinkToFolderName(folderInRootFolder, await nodesApiAction.getSpaceTemplatesFolderId())).entry.name; folderLink = (await nodesApiAction.createLinkToFolderName(folderInRootFolder, await nodesApiAction.getSpaceTemplatesFolderId())).entry.name;
} catch (error) { } catch (error) {
console.error(`Main beforeAll failed : ${error}`); console.error(`Main beforeAll failed : ${error}`);
@@ -116,18 +120,8 @@ test.describe('Create folder from template', () => {
}); });
test.beforeEach(async ({ loginPage, personalFiles }) => { test.beforeEach(async ({ loginPage, personalFiles }) => {
try { await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed');
await loginPage.loginUser( await personalFiles.navigate();
{ username: username, password: username },
{
withNavigation: true,
waitForLoading: true
}
);
await personalFiles.navigate();
} catch (error) {
console.error(`Main beforeEach failed : ${error}`);
}
}); });
test.afterAll(async ({ nodesApiAction }) => { test.afterAll(async ({ nodesApiAction }) => {
@@ -139,6 +133,7 @@ test.describe('Create folder from template', () => {
restrictedTemplateFolder, restrictedTemplateFolder,
fileInRootFolder fileInRootFolder
]); ]);
await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed');
} catch (error) { } catch (error) {
console.error(`Main afterAll failed : ${error}`); console.error(`Main afterAll failed : ${error}`);
} }
@@ -166,11 +161,7 @@ test.describe('Create folder from template', () => {
}); });
test.afterAll(async () => { test.afterAll(async () => {
try { await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'Personal Files page, afterAll failed : ');
await nodesApi.deleteCurrentUserNodes();
} catch (error) {
console.error(`Personal Files page, afterAll failed : ${error}`);
}
}); });
test.describe('Select Template dialog', () => { test.describe('Select Template dialog', () => {

View File

@@ -31,12 +31,14 @@ import {
NodesApi, NodesApi,
Utils, Utils,
errorStrings, errorStrings,
test test,
TrashcanApi
} from '@alfresco/playwright-shared'; } from '@alfresco/playwright-shared';
test.describe('Create folders', () => { test.describe('Create folders', () => {
const apiClientFactory = new ApiClientFactory(); const apiClientFactory = new ApiClientFactory();
let nodesApi: NodesApi; let nodesApi: NodesApi;
let trashcanApi: TrashcanApi;
let folderDialog: AdfFolderDialogComponent; let folderDialog: AdfFolderDialogComponent;
let folderTable: DataTableComponent; let folderTable: DataTableComponent;
let randomFolderName: string; let randomFolderName: string;
@@ -53,6 +55,7 @@ test.describe('Create folders', () => {
await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.setUpAcaBackend('admin');
await apiClientFactory.createUser({ username }); await apiClientFactory.createUser({ username });
nodesApi = await NodesApi.initialize(username, username); nodesApi = await NodesApi.initialize(username, username);
trashcanApi = await TrashcanApi.initialize(username, username);
await nodesApi.createFolder(commonFolderName); await nodesApi.createFolder(commonFolderName);
} catch (error) { } catch (error) {
console.error(`beforeAll failed : ${error}`); console.error(`beforeAll failed : ${error}`);
@@ -65,27 +68,13 @@ test.describe('Create folders', () => {
randomFolderDescription = `folder-description-${Utils.random()}`; randomFolderDescription = `folder-description-${Utils.random()}`;
folderDialog = personalFiles.folderDialog; folderDialog = personalFiles.folderDialog;
const loginPage = new LoginPage(page); const loginPage = new LoginPage(page);
try { await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed');
await loginPage.loginUser( await personalFiles.navigate();
{ username, password: username }, await personalFiles.selectCreateFolder();
{
withNavigation: true,
waitForLoading: true
}
);
await personalFiles.navigate();
await personalFiles.selectCreateFolder();
} catch (error) {
console.error(`beforeEach failed : ${error}`);
}
}); });
test.afterAll(async () => { test.afterAll(async () => {
try { await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed');
await nodesApi.deleteCurrentUserNodes();
} catch (error) {
console.error(`afterAll failed : ${error}`);
}
}); });
test('[C216345] Create new folder dialog check', async () => { test('[C216345] Create new folder dialog check', async () => {

View File

@@ -33,12 +33,15 @@ import {
AdfLibraryDialogComponent, AdfLibraryDialogComponent,
DataTableComponent, DataTableComponent,
Breadcrumb, Breadcrumb,
TrashcanApi TrashcanApi,
NodesApi
} from '@alfresco/playwright-shared'; } from '@alfresco/playwright-shared';
test.describe('Create Libraries ', () => { test.describe('Create Libraries ', () => {
const apiClientFactory = new ApiClientFactory(); const apiClientFactory = new ApiClientFactory();
let sitesApi: SitesApi; let sitesApi: SitesApi;
let nodesApi: NodesApi;
let trashcanApi: TrashcanApi;
let libraryDialog: AdfLibraryDialogComponent; let libraryDialog: AdfLibraryDialogComponent;
let libraryTable: DataTableComponent; let libraryTable: DataTableComponent;
let libraryBreadcrumb: Breadcrumb; let libraryBreadcrumb: Breadcrumb;
@@ -64,6 +67,8 @@ test.describe('Create Libraries ', () => {
await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.setUpAcaBackend('admin');
await apiClientFactory.createUser({ username }); await apiClientFactory.createUser({ username });
sitesApi = await SitesApi.initialize(username, username); sitesApi = await SitesApi.initialize(username, username);
nodesApi = await NodesApi.initialize(username, username);
trashcanApi = await TrashcanApi.initialize(username, username);
await sitesApi.createSite(commonLibraryName); await sitesApi.createSite(commonLibraryName);
createdLibrariesIds.push(commonLibraryName); createdLibrariesIds.push(commonLibraryName);
await sitesApi.createSite(commonTrashLibraryName); await sitesApi.createSite(commonTrashLibraryName);
@@ -79,29 +84,13 @@ test.describe('Create Libraries ', () => {
randomLibraryDescription = `libraryDescription-${Utils.random()}`; randomLibraryDescription = `libraryDescription-${Utils.random()}`;
libraryDialog = myLibrariesPage.libraryDialog; libraryDialog = myLibrariesPage.libraryDialog;
const loginPage = new LoginPage(page); const loginPage = new LoginPage(page);
try { await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed');
await loginPage.loginUser( await myLibrariesPage.navigate();
{ username: username, password: username }, await myLibrariesPage.selectCreateLibrary();
{
withNavigation: true,
waitForLoading: true
}
);
await myLibrariesPage.navigate();
await myLibrariesPage.selectCreateLibrary();
} catch (error) {
console.error(`beforeEach failed : ${error}`);
}
}); });
test.afterAll(async () => { test.afterAll(async () => {
try { await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed', sitesApi, createdLibrariesIds);
await sitesApi.deleteSites(createdLibrariesIds);
const trashcanApi = await TrashcanApi.initialize(username, username);
await trashcanApi.emptyTrashcan();
} catch (error) {
console.error(`afterAll failed : ${error}`);
}
}); });
test('[C280024] Create Library dialog UI', async () => { test('[C280024] Create Library dialog UI', async () => {