From 2046630f58a3cedfd77916898dea2c6f2d47eb50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20=C5=9Awiderski?= Date: Mon, 25 Mar 2024 16:07:01 +0100 Subject: [PATCH] [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 --- .../copy-move-actions/src/tests/move.test.ts | 9 +++--- .../tests/create-file-from-template.spec.ts | 21 +++++-------- .../tests/create-folder-from-template.spec.ts | 27 ++++++---------- .../src/tests/create-folder.spec.ts | 27 +++++----------- .../src/tests/create-library.spec.ts | 31 ++++++------------- 5 files changed, 39 insertions(+), 76 deletions(-) diff --git a/e2e/playwright/copy-move-actions/src/tests/move.test.ts b/e2e/playwright/copy-move-actions/src/tests/move.test.ts index 7a040bd0f..eb93ee1e2 100644 --- a/e2e/playwright/copy-move-actions/src/tests/move.test.ts +++ b/e2e/playwright/copy-move-actions/src/tests/move.test.ts @@ -39,16 +39,13 @@ test.describe('Move actions', () => { let sourceFolder: string; let destinationFolder: string; - test.afterAll(async ({ nodesApiAction }) => { - await Utils.deleteNodesSitesEmptyTrashcan(nodesApiAction, trashcanApi, 'afterAll failed'); - }); - test.beforeAll(async () => { try { const apiClientFactory = new ApiClientFactory(); await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.createUser({ username }); nodesApi = await NodesApi.initialize(username, username); + trashcanApi = await TrashcanApi.initialize(username, username); } catch {} }); @@ -68,6 +65,10 @@ test.describe('Move actions', () => { await personalFiles.navigate(); }); + test.afterAll(async () => { + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed'); + }); + const moveContentInPersonalFiles = async (personalFilesPage: PersonalFilesPage, sourceFileList: string[], destinationName: string) => { await personalFilesPage.copyOrMoveContentInDatatable(sourceFileList, destinationName, 'Move'); await personalFilesPage.spinner.waitForReload(); diff --git a/e2e/playwright/create-actions/src/tests/create-file-from-template.spec.ts b/e2e/playwright/create-actions/src/tests/create-file-from-template.spec.ts index 90ed1f111..387c86caa 100644 --- a/e2e/playwright/create-actions/src/tests/create-file-from-template.spec.ts +++ b/e2e/playwright/create-actions/src/tests/create-file-from-template.spec.ts @@ -34,11 +34,13 @@ import { SitesApi, Utils, errorStrings, - test + test, + TrashcanApi } from '@alfresco/playwright-shared'; test.describe('Create file from template', () => { let nodesApi: NodesApi; + let trashcanApi: TrashcanApi; let selectFileTemplateDialog: ContentNodeSelectorDialog; let createFileFromTemplateDialog: CreateFromTemplateDialogComponent; let dataTable: DataTableComponent; @@ -109,26 +111,17 @@ test.describe('Create file from template', () => { await nodesApiAction.removeUserAccessOnNodeTemplate(restrictedTemplateFolder); fileLink = (await nodesApiAction.createLinkToFileName(template2InRoot, await nodesApiAction.getNodeTemplatesFolderId())).entry.name; nodesApi = await NodesApi.initialize(username, username); + trashcanApi = await TrashcanApi.initialize(username, username); }); test.beforeEach(async ({ loginPage, personalFiles }) => { - try { - await loginPage.loginUser( - { username: username, password: username }, - { - withNavigation: true, - waitForLoading: true - } - ); - await personalFiles.navigate(); - } catch (error) { - console.error(`Main beforeEach failed: ${error}`); - } + await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed'); + await personalFiles.navigate(); }); test.afterAll(async ({ nodesApiAction }) => { await nodesApiAction.cleanupNodeTemplatesItems([templatesFolder1, templatesFolder2, restrictedTemplateFolder, template1InRoot, template2InRoot]); - await nodesApi.deleteCurrentUserNodes(); + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed'); }); test.describe('Personal Files page', () => { diff --git a/e2e/playwright/create-actions/src/tests/create-folder-from-template.spec.ts b/e2e/playwright/create-actions/src/tests/create-folder-from-template.spec.ts index ee0f23e9c..d686e91a2 100644 --- a/e2e/playwright/create-actions/src/tests/create-folder-from-template.spec.ts +++ b/e2e/playwright/create-actions/src/tests/create-folder-from-template.spec.ts @@ -34,12 +34,14 @@ import { SitesApi, Utils, errorStrings, - test + test, + TrashcanApi } from '@alfresco/playwright-shared'; test.describe('Create folder from template', () => { const apiClientFactory = new ApiClientFactory(); let nodesApi: NodesApi; + let trashcanApi: TrashcanApi; let selectFolderTemplateDialog: ContentNodeSelectorDialog; let createFolderFromTemplateDialog: CreateFromTemplateDialogComponent; let dataTable: DataTableComponent; @@ -109,6 +111,8 @@ test.describe('Create folder from template', () => { await apiClientFactory.createUser({ username: username }); await nodesApiAction.createContent(templates, `Data Dictionary/Space Templates`); 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; } catch (error) { console.error(`Main beforeAll failed : ${error}`); @@ -116,18 +120,8 @@ test.describe('Create folder from template', () => { }); test.beforeEach(async ({ loginPage, personalFiles }) => { - try { - await loginPage.loginUser( - { username: username, password: username }, - { - withNavigation: true, - waitForLoading: true - } - ); - await personalFiles.navigate(); - } catch (error) { - console.error(`Main beforeEach failed : ${error}`); - } + await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed'); + await personalFiles.navigate(); }); test.afterAll(async ({ nodesApiAction }) => { @@ -139,6 +133,7 @@ test.describe('Create folder from template', () => { restrictedTemplateFolder, fileInRootFolder ]); + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed'); } catch (error) { console.error(`Main afterAll failed : ${error}`); } @@ -166,11 +161,7 @@ test.describe('Create folder from template', () => { }); test.afterAll(async () => { - try { - await nodesApi.deleteCurrentUserNodes(); - } catch (error) { - console.error(`Personal Files page, afterAll failed : ${error}`); - } + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'Personal Files page, afterAll failed : '); }); test.describe('Select Template dialog', () => { diff --git a/e2e/playwright/create-actions/src/tests/create-folder.spec.ts b/e2e/playwright/create-actions/src/tests/create-folder.spec.ts index 649118cc3..a25646ba1 100644 --- a/e2e/playwright/create-actions/src/tests/create-folder.spec.ts +++ b/e2e/playwright/create-actions/src/tests/create-folder.spec.ts @@ -31,12 +31,14 @@ import { NodesApi, Utils, errorStrings, - test + test, + TrashcanApi } from '@alfresco/playwright-shared'; test.describe('Create folders', () => { const apiClientFactory = new ApiClientFactory(); let nodesApi: NodesApi; + let trashcanApi: TrashcanApi; let folderDialog: AdfFolderDialogComponent; let folderTable: DataTableComponent; let randomFolderName: string; @@ -53,6 +55,7 @@ test.describe('Create folders', () => { await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.createUser({ username }); nodesApi = await NodesApi.initialize(username, username); + trashcanApi = await TrashcanApi.initialize(username, username); await nodesApi.createFolder(commonFolderName); } catch (error) { console.error(`beforeAll failed : ${error}`); @@ -65,27 +68,13 @@ test.describe('Create folders', () => { randomFolderDescription = `folder-description-${Utils.random()}`; folderDialog = personalFiles.folderDialog; const loginPage = new LoginPage(page); - try { - await loginPage.loginUser( - { username, password: username }, - { - withNavigation: true, - waitForLoading: true - } - ); - await personalFiles.navigate(); - await personalFiles.selectCreateFolder(); - } catch (error) { - console.error(`beforeEach failed : ${error}`); - } + await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed'); + await personalFiles.navigate(); + await personalFiles.selectCreateFolder(); }); test.afterAll(async () => { - try { - await nodesApi.deleteCurrentUserNodes(); - } catch (error) { - console.error(`afterAll failed : ${error}`); - } + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed'); }); test('[C216345] Create new folder dialog check', async () => { diff --git a/e2e/playwright/create-actions/src/tests/create-library.spec.ts b/e2e/playwright/create-actions/src/tests/create-library.spec.ts index 75b0fae39..3d1c0dc76 100644 --- a/e2e/playwright/create-actions/src/tests/create-library.spec.ts +++ b/e2e/playwright/create-actions/src/tests/create-library.spec.ts @@ -33,12 +33,15 @@ import { AdfLibraryDialogComponent, DataTableComponent, Breadcrumb, - TrashcanApi + TrashcanApi, + NodesApi } from '@alfresco/playwright-shared'; test.describe('Create Libraries ', () => { const apiClientFactory = new ApiClientFactory(); let sitesApi: SitesApi; + let nodesApi: NodesApi; + let trashcanApi: TrashcanApi; let libraryDialog: AdfLibraryDialogComponent; let libraryTable: DataTableComponent; let libraryBreadcrumb: Breadcrumb; @@ -64,6 +67,8 @@ test.describe('Create Libraries ', () => { await apiClientFactory.setUpAcaBackend('admin'); await apiClientFactory.createUser({ username }); sitesApi = await SitesApi.initialize(username, username); + nodesApi = await NodesApi.initialize(username, username); + trashcanApi = await TrashcanApi.initialize(username, username); await sitesApi.createSite(commonLibraryName); createdLibrariesIds.push(commonLibraryName); await sitesApi.createSite(commonTrashLibraryName); @@ -79,29 +84,13 @@ test.describe('Create Libraries ', () => { randomLibraryDescription = `libraryDescription-${Utils.random()}`; libraryDialog = myLibrariesPage.libraryDialog; const loginPage = new LoginPage(page); - try { - await loginPage.loginUser( - { username: username, password: username }, - { - withNavigation: true, - waitForLoading: true - } - ); - await myLibrariesPage.navigate(); - await myLibrariesPage.selectCreateLibrary(); - } catch (error) { - console.error(`beforeEach failed : ${error}`); - } + await Utils.tryLoginUser(loginPage, username, username, 'Main beforeEach failed'); + await myLibrariesPage.navigate(); + await myLibrariesPage.selectCreateLibrary(); }); test.afterAll(async () => { - try { - await sitesApi.deleteSites(createdLibrariesIds); - const trashcanApi = await TrashcanApi.initialize(username, username); - await trashcanApi.emptyTrashcan(); - } catch (error) { - console.error(`afterAll failed : ${error}`); - } + await Utils.deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, 'afterAll failed', sitesApi, createdLibrariesIds); }); test('[C280024] Create Library dialog UI', async () => {