diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 1b81df3c9d..5433bd68dc 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -123,18 +123,16 @@ jobs: id: 6 - name: "actionsAvailableLibraries,actionsAvailableNewMenu" id: 7 - - name: "actionsAvailableSpecialPermissions" - id: 8 - name: "copyMoveActions" - id: 9 + id: 8 - name: "deleteActions" - id: 10 + id: 9 - name: "editActions,favoriteActions" - id: 11 + id: 10 - name: "libraryActions" - id: 12 + id: 11 - name: "uploadDownloadActions" - id: 13 + id: 12 steps: - name: Checkout uses: actions/checkout@v3 diff --git a/e2e/protractor/suites/actions-available/special-permissions/favorites.ts b/e2e/protractor/suites/actions-available/special-permissions/favorites.ts deleted file mode 100755 index 0c757517fd..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/favorites.ts +++ /dev/null @@ -1,159 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import * as testUtil from '../test-util'; - -export function favoritesTests() { - const page = new BrowsingPage(); - - describe('available actions : ', () => { - beforeAll(async () => { - await page.clickFavoritesAndWait(); - }); - - beforeEach(async () => { - await Utils.pressEscape(); - }); - - afterEach(async () => { - await page.closeOpenDialogs(); - }); - - describe('on a file', () => { - it('File Office, favorite - [C286311]', async () => { - await testUtil.checkToolbarActions(testData.fileDocxFav.name, testData.fileDocxFav.toolbarPrimary, testData.fileDocxFav.favoritesToolbarMore); - await testUtil.checkContextMenu(testData.fileDocxFav.name, testData.fileDocxFav.favoritesContextMenu); - }); - - it('File favorite - [C306991]', async () => { - await testUtil.checkToolbarActions(testData.fileFav.name, testData.fileFav.toolbarPrimary, testData.fileFav.favoritesToolbarMore); - await testUtil.checkContextMenu(testData.fileFav.name, testData.fileFav.favoritesContextMenu); - }); - - it('File Office, shared, favorite - [C279187]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.toolbarPrimary, - testData.fileDocxSharedFav.favoritesToolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxSharedFav.name, testData.fileDocxSharedFav.favoritesContextMenu); - }); - - it('File shared, favorite - [C280053]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFav.name, - testData.fileSharedFav.toolbarPrimary, - testData.fileSharedFav.favoritesToolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFav.name, testData.fileSharedFav.favoritesContextMenu); - }); - - it('File favorite, locked - [C280050]', async () => { - await testUtil.checkToolbarActions( - testData.fileFavLocked.name, - testData.fileFavLocked.toolbarPrimary, - testData.fileFavLocked.favoritesToolbarMore - ); - await testUtil.checkContextMenu(testData.fileFavLocked.name, testData.fileFavLocked.favoritesContextMenu); - }); - - it('File shared, favorite, locked - [C325011]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.toolbarPrimary, - testData.fileSharedFavLocked.favoritesToolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFavLocked.name, testData.fileSharedFavLocked.favoritesContextMenu); - }); - }); - - describe('on a folder', () => { - it('Folder favorite - [C325012]', async () => { - await testUtil.checkToolbarActions(testData.folderFav.name, testData.folderFav.toolbarPrimary, testData.folderFav.favoritesToolbarMore); - await testUtil.checkContextMenu(testData.folderFav.name, testData.folderFav.favoritesContextMenu); - }); - }); - - describe('on multiple selection', () => { - it('multiple files - [C325046]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileDocxFav.name, testData.fileDocxSharedFav.name], - testData.multipleSelAllFav.favoritesContextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocxFav.name, testData.fileDocxSharedFav.name], - testData.multipleSelAllFav.toolbarPrimary, - testData.multipleSelAllFav.favoritesToolbarMore - ); - }); - - it('multiple locked files - [C217145]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileFavLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSelAllFav.favoritesContextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileFavLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSelAllFav.toolbarPrimary, - testData.multipleSelAllFav.favoritesToolbarMore - ); - }); - - it('multiple folders - [C213196]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.folderFav.name, testData.folderFav2.name], - testData.multipleSelAllFav.favoritesContextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.folderFav.name, testData.folderFav2.name], - testData.multipleSelAllFav.toolbarPrimary, - testData.multipleSelAllFav.favoritesToolbarMore - ); - }); - - it('both files and folders - [C217146]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.fileFav.name, testData.folderFav.name], testData.multipleSelAllFav.favoritesContextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileFav.name, testData.folderFav.name], - testData.multipleSelAllFav.toolbarPrimary, - testData.multipleSelAllFav.favoritesToolbarMore - ); - }); - - it('multiple files with different granular permissions - [C213193]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileFav.name, testData.fileGranularPermission], - testData.multipleSelAllFav.favoritesContextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileFav.name, testData.fileGranularPermission], - testData.multipleSelAllFav.toolbarPrimary, - testData.multipleSelAllFav.favoritesToolbarMore - ); - }); - }); - }); -} diff --git a/e2e/protractor/suites/actions-available/special-permissions/my-libraries.ts b/e2e/protractor/suites/actions-available/special-permissions/my-libraries.ts deleted file mode 100755 index 892911a0ef..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/my-libraries.ts +++ /dev/null @@ -1,196 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import * as testUtil from '../test-util'; - -export function librariesTests(siteName?: string) { - const page = new BrowsingPage(); - const { dataTable } = page; - - describe('available actions : ', () => { - beforeAll(async () => { - await page.goToMyLibrariesAndWait(); - await dataTable.doubleClickOnRowByName(siteName); - await dataTable.waitForHeader(); - }); - - beforeEach(async () => { - await Utils.pressEscape(); - }); - - afterEach(async () => { - await page.closeOpenDialogs(); - }); - - describe('on a file', () => { - it('File Office - [C280476]', async () => { - await testUtil.checkToolbarActions(testData.fileDocx.name, testData.fileDocx.toolbarPrimary, testData.fileDocx.toolbarMore); - await testUtil.checkContextMenu(testData.fileDocx.name, testData.fileDocx.contextMenu); - }); - - it('File Office, favorite - [C280455]', async () => { - await testUtil.checkToolbarActions(testData.fileDocxFav.name, testData.fileDocxFav.toolbarPrimary, testData.fileDocxFav.toolbarMore); - await testUtil.checkContextMenu(testData.fileDocxFav.name, testData.fileDocxFav.contextMenu); - }); - - it('File simple - [C280444]', async () => { - await testUtil.checkToolbarActions(testData.file.name, testData.file.toolbarPrimary, testData.file.toolbarMore); - await testUtil.checkContextMenu(testData.file.name, testData.file.contextMenu); - }); - - it('File favorite - [C280464]', async () => { - await testUtil.checkToolbarActions(testData.fileFav.name, testData.fileFav.toolbarPrimary, testData.fileFav.toolbarMore); - await testUtil.checkContextMenu(testData.fileFav.name, testData.fileFav.contextMenu); - }); - - it('File Office, shared - [C280465]', async () => { - await testUtil.checkToolbarActions(testData.fileDocxShared.name, testData.fileDocxShared.toolbarPrimary, testData.fileDocxShared.toolbarMore); - await testUtil.checkContextMenu(testData.fileDocxShared.name, testData.fileDocxShared.contextMenu); - }); - - it('File Office, shared, favorite - [C280466]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.toolbarPrimary, - testData.fileDocxSharedFav.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxSharedFav.name, testData.fileDocxSharedFav.contextMenu); - }); - - it('File shared - [C280599]', async () => { - await testUtil.checkToolbarActions(testData.fileShared.name, testData.fileShared.toolbarPrimary, testData.fileShared.toolbarMore); - await testUtil.checkContextMenu(testData.fileShared.name, testData.fileShared.contextMenu); - }); - - it('File shared, favorite - [C280600]', async () => { - await testUtil.checkToolbarActions(testData.fileSharedFav.name, testData.fileSharedFav.toolbarPrimary, testData.fileSharedFav.toolbarMore); - await testUtil.checkContextMenu(testData.fileSharedFav.name, testData.fileSharedFav.contextMenu); - }); - - it('File locked - [C280647]', async () => { - await testUtil.checkToolbarActions(testData.fileLocked.name, testData.fileLocked.toolbarPrimary, testData.fileLocked.toolbarMore); - await testUtil.checkContextMenu(testData.fileLocked.name, testData.fileLocked.contextMenu); - }); - - it('File favorite, locked - [C280477]', async () => { - await testUtil.checkToolbarActions(testData.fileFavLocked.name, testData.fileFavLocked.toolbarPrimary, testData.fileFavLocked.toolbarMore); - await testUtil.checkContextMenu(testData.fileFavLocked.name, testData.fileFavLocked.contextMenu); - }); - - it('File shared, locked - [C280666]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.toolbarPrimary, - testData.fileSharedLocked.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedLocked.name, testData.fileSharedLocked.contextMenu); - }); - - it('File shared, favorite, locked - [C280669]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.toolbarPrimary, - testData.fileSharedFavLocked.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFavLocked.name, testData.fileSharedFavLocked.contextMenu); - }); - }); - - describe('on a folder', () => { - it('Folder not favorite - [C280456]', async () => { - await testUtil.checkToolbarActions(testData.folder.name, testData.folder.toolbarPrimary, testData.folder.toolbarMore); - await testUtil.checkContextMenu(testData.folder.name, testData.folder.contextMenu); - }); - - it('Folder favorite - [C286284]', async () => { - await testUtil.checkToolbarActions(testData.folderFav.name, testData.folderFav.toolbarPrimary, testData.folderFav.toolbarMore); - await testUtil.checkContextMenu(testData.folderFav.name, testData.folderFav.contextMenu); - }); - }); - - describe('on multiple selection', () => { - it('multiple files - [C286264]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.fileDocx.name, testData.fileDocxSharedFav.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocx.name, testData.fileDocxSharedFav.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files - all favorite - [C286283]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileDocxFav.name, testData.fileDocxSharedFav.name], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocxFav.name, testData.fileDocxSharedFav.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - - it('multiple locked files - [C280478]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.fileLocked.name, testData.fileSharedFavLocked.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple folders - [C213121]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.folderFav.name, testData.folder.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.folderFav.name, testData.folder.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('both files and folders - [C286266]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.file.name, testData.folder.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.file.name, testData.folder.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files with different granular permissions - [C286285]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileDocxFav.name, testData.fileGranularPermission], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocxFav.name, testData.fileGranularPermission], - testData.multipleSel.toolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - }); - }); -} diff --git a/e2e/protractor/suites/actions-available/special-permissions/search-results.ts b/e2e/protractor/suites/actions-available/special-permissions/search-results.ts deleted file mode 100755 index 0e98142199..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/search-results.ts +++ /dev/null @@ -1,243 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import * as testUtil from '../test-util'; - -export function searchResultsTests() { - const page = new BrowsingPage(); - const searchResultsPage = new SearchResultsPage(); - const { searchInput, toolbar } = page.pageLayoutHeader; - - describe('available actions : ', () => { - beforeEach(async () => { - await Utils.pressEscape(); - }); - - afterEach(async () => { - await page.closeOpenDialogs(); - }); - - describe('on a file', () => { - beforeEach(async () => { - await page.clickPersonalFiles(); - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.checkOnlyFiles(); - await searchInput.searchFor(`*${testData.random}`); - await searchResultsPage.waitForResults(); - }); - - it('File Office - [C286286]', async () => { - await testUtil.checkToolbarActions(testData.fileDocx.name, testData.fileDocx.searchToolbarPrimary, testData.fileDocx.toolbarMore); - await testUtil.checkContextMenu(testData.fileDocx.name, testData.fileDocx.contextMenu); - }); - - it('File Office, favorite - [C286287]', async () => { - await testUtil.checkToolbarActions(testData.fileDocxFav.name, testData.fileDocxFav.searchToolbarPrimary, testData.fileDocxFav.toolbarMore); - await testUtil.checkContextMenu(testData.fileDocxFav.name, testData.fileDocxFav.contextMenu); - }); - - it('File simple - [C286262]', async () => { - await testUtil.checkToolbarActions(testData.file.name, testData.file.searchToolbarPrimary, testData.file.toolbarMore); - await testUtil.checkContextMenu(testData.file.name, testData.file.contextMenu); - }); - - it('File favorite - [C286263]', async () => { - await testUtil.checkToolbarActions(testData.fileFav.name, testData.fileFav.searchToolbarPrimary, testData.fileFav.toolbarMore); - await testUtil.checkContextMenu(testData.fileFav.name, testData.fileFav.contextMenu); - }); - - it('File Office, shared - [C286280]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxShared.name, - testData.fileDocxShared.searchToolbarPrimary, - testData.fileDocxShared.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxShared.name, testData.fileDocxShared.contextMenu); - }); - - it('File Office, shared, favorite - [C286281]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.searchToolbarPrimary, - testData.fileDocxSharedFav.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxSharedFav.name, testData.fileDocxSharedFav.contextMenu); - }); - - it('File shared - [C286282]', async () => { - await testUtil.checkToolbarActions(testData.fileShared.name, testData.fileShared.searchToolbarPrimary, testData.fileShared.toolbarMore); - await testUtil.checkContextMenu(testData.fileShared.name, testData.fileShared.contextMenu); - }); - - it('File shared, favorite - [C291823]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFav.name, - testData.fileSharedFav.searchToolbarPrimary, - testData.fileSharedFav.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFav.name, testData.fileSharedFav.contextMenu); - }); - - it('File locked - [C291818]', async () => { - await testUtil.checkToolbarActions(testData.fileLocked.name, testData.fileLocked.searchToolbarPrimary, testData.fileLocked.toolbarMore); - await testUtil.checkContextMenu(testData.fileLocked.name, testData.fileLocked.contextMenu); - }); - - it('File favorite, locked - [C291819]', async () => { - await testUtil.checkToolbarActions( - testData.fileFavLocked.name, - testData.fileFavLocked.searchToolbarPrimary, - testData.fileFavLocked.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileFavLocked.name, testData.fileFavLocked.contextMenu); - }); - - it('File shared, locked - [C291824]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.searchToolbarPrimary, - testData.fileSharedLocked.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedLocked.name, testData.fileSharedLocked.contextMenu); - }); - - it('File shared, favorite, locked - [C291825]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.searchToolbarPrimary, - testData.fileSharedFavLocked.toolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFavLocked.name, testData.fileSharedFavLocked.contextMenu); - }); - }); - - describe('on a folder', () => { - beforeAll(async () => { - await page.clickPersonalFiles(); - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.checkOnlyFolders(); - await searchInput.searchFor(`*${testData.random}`); - await searchResultsPage.waitForResults(); - }); - - it('Folder not favorite - [C291826]', async () => { - await testUtil.checkToolbarActions(testData.folder.name, testData.folder.searchToolbarPrimary, testData.folder.toolbarMore); - await testUtil.checkContextMenu(testData.folder.name, testData.folder.contextMenu); - }); - - it('Folder favorite - [C291829]', async () => { - await testUtil.checkToolbarActions(testData.folderFav.name, testData.folderFav.searchToolbarPrimary, testData.folderFav.toolbarMore); - await testUtil.checkContextMenu(testData.folderFav.name, testData.folderFav.contextMenu); - }); - }); - - describe('on multiple selection', () => { - describe('of files', () => { - beforeAll(async () => { - await page.clickPersonalFiles(); - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.checkOnlyFiles(); - await searchInput.searchFor(`*${testData.random}`); - await searchResultsPage.waitForResults(); - }); - - it('multiple files - [C291830]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.file.name, testData.fileDocxShared.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.file.name, testData.fileDocxShared.name], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files - all favorite - [C291834]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileDocxFav.name, testData.fileSharedFav.name], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocxFav.name, testData.fileSharedFav.name], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - - it('multiple locked files - [C291835]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.fileLocked.name, testData.fileSharedFavLocked.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files with different granular permissions - [C286310]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileDocxFav.name, testData.fileGranularPermission], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileDocxFav.name, testData.fileGranularPermission], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - }); - - it('multiple folders - [C291836]', async () => { - await page.clickPersonalFiles(); - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.checkOnlyFolders(); - await searchInput.searchFor(`*${testData.random}`); - - await testUtil.checkMultipleSelContextMenu([testData.folder.name, testData.folderFav.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.folder.name, testData.folderFav.name], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('both files and folders - [C268128]', async () => { - await page.clickPersonalFiles(); - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.searchFor(`${testData.file.name} or ${testData.folderFav.name}`); - - await testUtil.checkMultipleSelContextMenu([testData.file.name, testData.folderFav.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.file.name, testData.folderFav.name], - testData.multipleSel.searchToolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - }); - }); -} diff --git a/e2e/protractor/suites/actions-available/special-permissions/shared-files.ts b/e2e/protractor/suites/actions-available/special-permissions/shared-files.ts deleted file mode 100755 index 2475115509..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/shared-files.ts +++ /dev/null @@ -1,144 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { BrowsingPage, Utils } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import * as testUtil from '../test-util'; - -export function sharedFilesTests() { - const page = new BrowsingPage(); - - describe('available actions : ', () => { - beforeAll(async () => { - await page.clickSharedFilesAndWait(); - }); - - beforeEach(async () => { - await Utils.pressEscape(); - }); - - afterEach(async () => { - await page.closeOpenDialogs(); - }); - - describe('single selection', () => { - it('File Office, shared - [C326626]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxShared.name, - testData.fileDocxShared.toolbarPrimary, - testData.fileDocxShared.sharedToolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxShared.name, testData.fileDocxShared.sharedContextMenu); - }); - - it('File Office, shared, favorite - [C326627]', async () => { - await testUtil.checkToolbarActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.toolbarPrimary, - testData.fileDocxSharedFav.sharedToolbarMore - ); - await testUtil.checkContextMenu(testData.fileDocxSharedFav.name, testData.fileDocxSharedFav.sharedContextMenu); - }); - - it('File shared - [C326628]', async () => { - await testUtil.checkToolbarActions(testData.fileShared.name, testData.fileShared.toolbarPrimary, testData.fileShared.sharedToolbarMore); - await testUtil.checkContextMenu(testData.fileShared.name, testData.fileShared.sharedContextMenu); - }); - - it('File shared, favorite - [C326629]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFav.name, - testData.fileSharedFav.toolbarPrimary, - testData.fileSharedFav.sharedToolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFav.name, testData.fileSharedFav.sharedContextMenu); - }); - - it('File shared, locked - [C326631]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.toolbarPrimary, - testData.fileSharedLocked.sharedToolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedLocked.name, testData.fileSharedLocked.sharedContextMenu); - }); - - it('File shared, favorite, locked - [C326632]', async () => { - await testUtil.checkToolbarActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.toolbarPrimary, - testData.fileSharedFavLocked.sharedToolbarMore - ); - await testUtil.checkContextMenu(testData.fileSharedFavLocked.name, testData.fileSharedFavLocked.sharedContextMenu); - }); - }); - - describe('multiple selection', () => { - it('multiple files - [C326634]', async () => { - await testUtil.checkMultipleSelContextMenu([testData.fileShared.name, testData.fileSharedFav.name], testData.multipleSel.contextMenu); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileShared.name, testData.fileSharedFav.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files - all favorite - [C326635]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileSharedFav.name, testData.fileSharedFavLocked.name], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileSharedFav.name, testData.fileSharedFavLocked.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - - it('multiple locked files - [C326636]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileSharedLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSel.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileSharedLocked.name, testData.fileSharedFavLocked.name], - testData.multipleSel.toolbarPrimary, - testData.multipleSel.toolbarMore - ); - }); - - it('multiple files with different granular permissions - [C326639]', async () => { - await testUtil.checkMultipleSelContextMenu( - [testData.fileSharedFav.name, testData.fileGranularPermission], - testData.multipleSelAllFav.contextMenu - ); - await testUtil.checkMultipleSelToolbarActions( - [testData.fileSharedFav.name, testData.fileGranularPermission], - testData.multipleSel.toolbarPrimary, - testData.multipleSelAllFav.toolbarMore - ); - }); - }); - }); -} diff --git a/e2e/protractor/suites/actions-available/special-permissions/special-permissions-actions.test.ts b/e2e/protractor/suites/actions-available/special-permissions/special-permissions-actions.test.ts deleted file mode 100644 index 269ec5dbe9..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/special-permissions-actions.test.ts +++ /dev/null @@ -1,178 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { LoginPage, RepoClient, Utils, AdminActions, FILES, SITE_ROLES, SITE_VISIBILITY, UserActions } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import { librariesTests } from './my-libraries'; -import { favoritesTests } from './favorites'; -import { searchResultsTests } from './search-results'; -import { sharedFilesTests } from './shared-files'; - -describe('Special permissions : ', () => { - const random = testData.random; - - const sitePrivate = `site-private-${random}`; - - const userManager = `manager-${random}`; - const userConsumer = `consumer-${random}`; - const userDemoted = `demoted-${random}`; - - let fileDocxFavId: string; - let fileFavId: string; - let fileDocxSharedId: string; - let fileDocxSharedFavId: string; - let fileSharedId: string; - let fileSharedFavId: string; - let fileLockedId: string; - let fileFavLockedId: string; - let fileSharedLockedId: string; - let fileSharedFavLockedId: string; - let fileGranularPermissionId: string; - let fileLockedByUserId: string; - let folderFavId: string; - let folderFav2Id: string; - - const adminApiActions = new AdminActions(); - const managerActions = new UserActions(); - const demotedUserActions = new UserActions(); - - const userManagerApi = new RepoClient(userManager, userManager); - const userConsumerApi = new RepoClient(userConsumer, userConsumer); - const userDemotedApi = new RepoClient(userDemoted, userDemoted); - - const loginPage = new LoginPage(); - - beforeAll(async () => { - await adminApiActions.createUser({ username: userManager }); - await adminApiActions.createUser({ username: userConsumer }); - await adminApiActions.createUser({ username: userDemoted }); - - await managerActions.login(userManager, userManager); - await demotedUserActions.login(userDemoted, userDemoted); - - const consumerFavoritesTotalItems = await userConsumerApi.favorites.getFavoritesTotalItems(); - const managerSearchTotalItems = await userManagerApi.search.getTotalItems(userManager); - - await userManagerApi.sites.createSite(sitePrivate, SITE_VISIBILITY.PRIVATE); - const docLibId = await userManagerApi.sites.getDocLibId(sitePrivate); - await userManagerApi.sites.addSiteConsumer(sitePrivate, userConsumer); - await userManagerApi.sites.addSiteManager(sitePrivate, userDemoted); - - await userManagerApi.upload.uploadFileWithRename(FILES.docxFile, docLibId, testData.fileDocx.name); - fileDocxFavId = (await userManagerApi.upload.uploadFileWithRename(FILES.docxFile, docLibId, testData.fileDocxFav.name)).entry.id; - await userManagerApi.createFile(testData.file.name, docLibId); - fileFavId = await userManagerApi.createFile(testData.fileFav.name, docLibId); - fileDocxSharedId = (await userManagerApi.upload.uploadFileWithRename(FILES.docxFile, docLibId, testData.fileDocxShared.name)).entry.id; - fileDocxSharedFavId = (await userManagerApi.upload.uploadFileWithRename(FILES.docxFile, docLibId, testData.fileDocxSharedFav.name)).entry.id; - fileSharedId = await userManagerApi.createFile(testData.fileShared.name, docLibId); - fileSharedFavId = await userManagerApi.createFile(testData.fileSharedFav.name, docLibId); - fileLockedId = await userManagerApi.createFile(testData.fileLocked.name, docLibId); - fileFavLockedId = await userManagerApi.createFile(testData.fileFavLocked.name, docLibId); - fileSharedLockedId = await userManagerApi.createFile(testData.fileSharedLocked.name, docLibId); - fileSharedFavLockedId = await userManagerApi.createFile(testData.fileSharedFavLocked.name, docLibId); - fileGranularPermissionId = await userManagerApi.createFile(testData.fileGranularPermission, docLibId); - - fileLockedByUserId = await userManagerApi.createFile(testData.fileLockedByUser, docLibId); - await demotedUserActions.lockNodes([fileLockedByUserId]); - await userDemotedApi.favorites.addFavoriteById('file', fileLockedByUserId); - await userDemotedApi.shared.shareFilesByIds([fileLockedByUserId]); - await userManagerApi.sites.updateSiteMember(sitePrivate, userDemoted, SITE_ROLES.SITE_CONSUMER.ROLE); - - await userManagerApi.nodes.createFolder(testData.folder.name, docLibId); - folderFavId = await userManagerApi.createFolder(testData.folderFav.name, docLibId); - folderFav2Id = await userManagerApi.createFolder(testData.folderFav2.name, docLibId); - await userConsumerApi.favorites.addFavoritesByIds('folder', [folderFavId, folderFav2Id]); - - await userConsumerApi.favorites.addFavoritesByIds('file', [ - fileDocxFavId, - fileFavId, - fileDocxSharedFavId, - fileSharedFavId, - fileFavLockedId, - fileSharedFavLockedId, - fileGranularPermissionId - ]); - - await userConsumerApi.shared.shareFilesByIds([ - fileDocxSharedId, - fileDocxSharedFavId, - fileSharedId, - fileSharedFavId, - fileSharedLockedId, - fileSharedFavLockedId, - fileGranularPermissionId - ]); - - await managerActions.lockNodes([fileLockedId, fileFavLockedId, fileSharedLockedId, fileSharedFavLockedId]); - - await userManagerApi.nodes.setGranularPermission(fileGranularPermissionId, false, userConsumer, SITE_ROLES.SITE_MANAGER.ROLE); - - await userManagerApi.favorites.addFavoriteById('file', fileLockedByUserId); - - await Promise.all([ - userConsumerApi.favorites.waitForApi({ expect: consumerFavoritesTotalItems + 9 }), - userManagerApi.shared.waitForFilesToBeShared([ - fileDocxSharedId, - fileDocxSharedFavId, - fileSharedId, - fileSharedFavId, - fileSharedLockedId, - fileSharedFavLockedId, - fileGranularPermissionId, - fileLockedByUserId - ]), - userManagerApi.search.waitForApi(userManager, { expect: managerSearchTotalItems + 14 }) - ]); - }); - - afterAll(async () => { - await userManagerApi.sites.deleteSite(sitePrivate); - }); - - beforeEach(async () => { - await Utils.pressEscape(); - }); - - describe('Consumer', () => { - beforeAll(async () => { - await loginPage.loginWith(userConsumer); - }); - - describe('on File Libraries', () => { - librariesTests(sitePrivate); - }); - - describe('on Favorites', () => { - favoritesTests(); - }); - - describe('on Search Results', () => { - searchResultsTests(); - }); - - describe('on Shared Files', () => { - sharedFilesTests(); - }); - }); -}); diff --git a/e2e/protractor/suites/actions-available/special-permissions/test-data-permissions.ts b/e2e/protractor/suites/actions-available/special-permissions/test-data-permissions.ts deleted file mode 100644 index a38809c049..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/test-data-permissions.ts +++ /dev/null @@ -1,404 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { Utils } from '@alfresco/aca-testing-shared'; - -export const random = Utils.random(); - -// ----- files ----- - -const consumerContextMenu = ['Share', 'Download', 'View', 'Favorite', 'Copy', 'Manage Versions']; -const consumerFavContextMenu = ['Share', 'Download', 'View', 'Remove Favorite', 'Copy', 'Manage Versions']; -const consumerSharedContextMenu = ['Shared Link Settings', 'Download', 'View', 'Favorite', 'Copy', 'Manage Versions']; -const consumerSharedFavContextMenu = ['Shared Link Settings', 'Download', 'View', 'Remove Favorite', 'Copy', 'Manage Versions']; - -const consumerToolbarPrimary = ['Share', 'Download', 'View', 'View Details', 'More Actions']; -const consumerSharedToolbarPrimary = ['Shared Link Settings', 'Download', 'View', 'View Details', 'More Actions']; - -const searchConsumerToolbarPrimary = ['Share', 'Download', 'View', 'View Details', 'More Actions']; -const searchConsumerSharedToolbarPrimary = ['Shared Link Settings', 'Download', 'View', 'View Details', 'More Actions']; - -const consumerToolbarMore = ['Favorite', 'Copy', 'Manage Versions']; -const consumerFavToolbarMore = ['Remove Favorite', 'Copy', 'Manage Versions']; - -// ---- VIEWER ---- - -const consumerViewerSharedToolbarPrimary = ['Activate full-screen mode', 'Shared Link Settings', 'Download', 'Print', 'View Details', 'More Actions']; -const consumerViewerToolbarPrimary = ['Activate full-screen mode', 'Share', 'Download', 'Print', 'View Details', 'More Actions']; -const consumerViewerFavToolbarMore = ['Remove Favorite', 'Copy', 'Manage Versions']; -const consumerViewerToolbarMore = ['Favorite', 'Copy', 'Manage Versions']; - -// ---- FAVORITES workarounds ---- - -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -// TODO: investigate why 'Upload New Version' appears and raise issue -const favoritesConsumerToolbarMore = ['Upload New Version', 'Remove Favorite', 'Move', 'Copy', 'Delete', 'Manage Versions']; -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -// TODO: investigate why 'Upload New Version' appears and raise issue -const favoritesConsumerContextMenu = [ - 'Share', - 'Download', - 'View', - 'Upload New Version', - 'Remove Favorite', - 'Move', - 'Copy', - 'Delete', - 'Manage Versions' -]; -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -// TODO: investigate why 'Upload New Version' appears and raise issue -const favoritesConsumerSharedContextMenu = [ - 'Shared Link Settings', - 'Download', - 'View', - 'Upload New Version', - 'Remove Favorite', - 'Move', - 'Copy', - 'Delete', - 'Manage Versions' -]; - -// ---- SHARED FILES workaround ---- - -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerToolbarMore = ['Upload New Version', 'Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Cancel Editing' appears and raise issue -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerLockedToolbarMore = ['Cancel Editing', 'Upload New Version', 'Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerFavToolbarMore = ['Upload New Version', 'Remove Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Cancel Editing' appears and raise issue -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerFavLockedToolbarMore = ['Cancel Editing', 'Upload New Version', 'Remove Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerContextMenu = ['Shared Link Settings', 'Download', 'View', 'Upload New Version', 'Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Cancel Editing' appears and raise issue -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerLockedContextMenu = [ - 'Shared Link Settings', - 'Download', - 'View', - 'Cancel Editing', - 'Upload New Version', - 'Favorite', - 'Copy', - 'Manage Versions' -]; -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerFavContextMenu = ['Shared Link Settings', 'Download', 'View', 'Upload New Version', 'Remove Favorite', 'Copy', 'Manage Versions']; -// TODO: investigate why 'Cancel Editing' appears and raise issue -// TODO: investigate why 'Upload New Version' appears and raise issue -const sharedConsumerFavLockedContextMenu = [ - 'Shared Link Settings', - 'Download', - 'View', - 'Cancel Editing', - 'Upload New Version', - 'Remove Favorite', - 'Copy', - 'Manage Versions' -]; - -export const fileDocx = { - name: `file-${random}-docx.docx`, - description: 'file not shared, not fav, office, not locked', - - contextMenu: consumerContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const fileDocxFav = { - name: `file-${random}-docx-fav.docx`, - description: 'file not shared, fav, office, not locked', - - contextMenu: consumerFavContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerContextMenu, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const file = { - name: `file-${random}.txt`, - description: 'file not shared, not fav, not office, not locked', - - contextMenu: consumerContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const fileFav = { - name: `file-${random}-fav.txt`, - description: 'file not shared, fav, not office, not locked', - - contextMenu: consumerFavContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerContextMenu, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const fileDocxShared = { - name: `file-${random}-docx-shared.docx`, - description: 'file shared, not fav, office, not locked', - - contextMenu: consumerSharedContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - sharedToolbarMore: sharedConsumerToolbarMore, - sharedContextMenu: sharedConsumerContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileDocxSharedFav = { - name: `file-${random}-docx-shared-fav.docx`, - description: 'file shared, fav, office, not locked', - - contextMenu: consumerSharedFavContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerSharedContextMenu, - - sharedToolbarMore: sharedConsumerFavToolbarMore, - sharedContextMenu: sharedConsumerFavContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileShared = { - name: `file-${random}-shared.txt`, - description: 'file shared, not fav, not office, not locked', - - contextMenu: consumerSharedContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - sharedToolbarMore: sharedConsumerToolbarMore, - sharedContextMenu: sharedConsumerContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileSharedFav = { - name: `file-${random}-shared-fav.txt`, - description: 'file shared, fav, not office, not locked', - - contextMenu: consumerSharedFavContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerSharedContextMenu, - - sharedToolbarMore: sharedConsumerFavToolbarMore, - sharedContextMenu: sharedConsumerFavContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileLocked = { - name: `file-${random}-locked.txt`, - description: 'file not shared, not fav, not office, locked', - - contextMenu: consumerContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const fileFavLocked = { - name: `file-${random}-fav-locked.txt`, - description: 'file not shared, fav, not office, locked', - - contextMenu: consumerFavContextMenu, - toolbarPrimary: consumerToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerContextMenu, - - searchToolbarPrimary: searchConsumerToolbarPrimary -}; - -export const fileSharedLocked = { - name: `file-${random}-shared-locked.txt`, - description: 'file shared, not fav, not office, locked', - - contextMenu: consumerSharedContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerToolbarMore, - - sharedToolbarMore: sharedConsumerLockedToolbarMore, - sharedContextMenu: sharedConsumerLockedContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileSharedFavLocked = { - name: `file-${random}-shared-fav-locked.txt`, - description: 'file shared, fav, not office, locked', - - contextMenu: consumerSharedFavContextMenu, - toolbarPrimary: consumerSharedToolbarPrimary, - toolbarMore: consumerFavToolbarMore, - viewerToolbarPrimary: consumerViewerSharedToolbarPrimary, - viewerToolbarMore: consumerViewerFavToolbarMore, - - favoritesToolbarMore: favoritesConsumerToolbarMore, - favoritesContextMenu: favoritesConsumerSharedContextMenu, - - sharedToolbarMore: sharedConsumerFavLockedToolbarMore, - sharedContextMenu: sharedConsumerFavLockedContextMenu, - - searchToolbarPrimary: searchConsumerSharedToolbarPrimary -}; - -export const fileGranularPermission = `file-${random}-granular.txt`; -export const fileLockedByUser = `file-${random}-my-locked.txt`; - -// ---- folders --- - -const consumerFolderContextMenu = ['Download', 'Favorite', 'Copy']; -const consumerFolderToolbarPrimary = ['Download', 'View Details', 'More Actions']; -const consumerFolderToolbarMore = ['Favorite', 'Copy']; -const searchConsumerFolderToolbarPrimary = ['Download', 'View Details', 'More Actions']; -const consumerFolderFavContextMenu = ['Download', 'Remove Favorite', 'Copy']; -const consumerFolderFavToolbarMore = ['Remove Favorite', 'Copy']; - -// ---- FAVORITES workarounds ---- - -// TODO: remove 'Edit', 'Move' and 'Delete' when ACA-1737 is done -const favoritesConsumerFolderContextMenu = ['Download', 'Edit', 'Remove Favorite', 'Move', 'Copy', 'Delete']; -// TODO: remove 'Edit', 'Move' and 'Delete' when ACA-1737 is done -const favoritesConsumerFolderToolbarMore = ['Edit', 'Remove Favorite', 'Move', 'Copy', 'Delete']; - -export const folder = { - name: `folder-${random}`, - description: 'folder not favorite', - contextMenu: consumerFolderContextMenu, - toolbarPrimary: consumerFolderToolbarPrimary, - toolbarMore: consumerFolderToolbarMore, - - searchToolbarPrimary: searchConsumerFolderToolbarPrimary -}; - -export const folderFav = { - name: `folder-fav-${random}`, - description: 'folder favorite', - contextMenu: consumerFolderFavContextMenu, - toolbarPrimary: consumerFolderToolbarPrimary, - toolbarMore: consumerFolderFavToolbarMore, - - favoritesContextMenu: favoritesConsumerFolderContextMenu, - favoritesToolbarMore: favoritesConsumerFolderToolbarMore, - - searchToolbarPrimary: searchConsumerFolderToolbarPrimary -}; - -export const folderFav2 = { - name: `folder-fav-2-${random}`, - description: 'folder 2 favorite' -}; - -// ---- multiple selection --- - -const multipleSelContextMenu = ['Download', 'Favorite', 'Copy']; -const multipleSelAllFavContextMenu = ['Download', 'Remove Favorite', 'Copy']; -const multipleSelToolbarPrimary = ['Download', 'View Details', 'More Actions']; -const multipleSelToolbarMore = ['Favorite', 'Copy']; -const multipleSelAllFavToolbarMore = ['Remove Favorite', 'Copy']; -const searchMultipleSelToolbarPrimary = ['Download', 'View Details', 'More Actions']; - -// ---- FAVORITES workarounds ---- - -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -const favoritesMultipleSelContextMenu = ['Download', 'Favorite', 'Move', 'Copy', 'Delete']; -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -const favoritesMultipleSelToolbarMore = ['Favorite', 'Move', 'Copy', 'Delete']; -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -const favoritesMultipleSelAllFavContextMenu = ['Download', 'Remove Favorite', 'Move', 'Copy', 'Delete']; -// TODO: remove 'Move' and 'Delete' when ACA-1737 is done -const favoritesMultipleSelAllFavToolbarMore = ['Remove Favorite', 'Move', 'Copy', 'Delete']; - -export const multipleSel = { - contextMenu: multipleSelContextMenu, - toolbarPrimary: multipleSelToolbarPrimary, - toolbarMore: multipleSelToolbarMore, - - favoritesContextMenu: favoritesMultipleSelContextMenu, - favoritesToolbarMore: favoritesMultipleSelToolbarMore, - - searchToolbarPrimary: searchMultipleSelToolbarPrimary -}; - -export const multipleSelAllFav = { - contextMenu: multipleSelAllFavContextMenu, - toolbarPrimary: multipleSelToolbarPrimary, - toolbarMore: multipleSelAllFavToolbarMore, - - favoritesContextMenu: favoritesMultipleSelAllFavContextMenu, - favoritesToolbarMore: favoritesMultipleSelAllFavToolbarMore, - - searchToolbarPrimary: searchMultipleSelToolbarPrimary -}; diff --git a/e2e/protractor/suites/actions-available/special-permissions/viewer.ts b/e2e/protractor/suites/actions-available/special-permissions/viewer.ts deleted file mode 100755 index 4786467b68..0000000000 --- a/e2e/protractor/suites/actions-available/special-permissions/viewer.ts +++ /dev/null @@ -1,314 +0,0 @@ -/*! - * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved. - * - * Alfresco Example Content Application - * - * This file is part of the Alfresco Example Content Application. - * If the software was purchased under a paid Alfresco license, the terms of - * the paid license agreement will prevail. Otherwise, the software is - * provided under the following open source license terms: - * - * The Alfresco Example Content Application is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * The Alfresco Example Content Application is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * from Hyland Software. If not, see . - */ - -import { BrowsingPage, SearchResultsPage, Utils } from '@alfresco/aca-testing-shared'; -import * as testData from './test-data-permissions'; -import * as testUtil from '../test-util'; - -export function viewerTests(siteName?: string) { - const page = new BrowsingPage(); - const searchResultsPage = new SearchResultsPage(); - const { dataTable, toolbar } = page; - const { searchInput } = page.pageLayoutHeader; - - describe('available actions : ', () => { - beforeEach(async () => { - await Utils.pressEscape(); - }); - - afterEach(async () => { - await page.closeOpenDialogs(); - }); - - describe('file opened from File Libraries', () => { - beforeAll(async () => { - await page.goToMyLibrariesAndWait(); - await dataTable.doubleClickOnRowByName(siteName); - await dataTable.waitForHeader(); - }); - - it('File Office - [C326622]', async () => { - await testUtil.checkViewerActions(testData.fileDocx.name, testData.fileDocx.viewerToolbarPrimary, testData.fileDocx.viewerToolbarMore); - }); - - it('File Office, favorite - [C326623]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxFav.name, - testData.fileDocxFav.viewerToolbarPrimary, - testData.fileDocxFav.viewerToolbarMore - ); - }); - - it('File simple - [C326624]', async () => { - await testUtil.checkViewerActions(testData.file.name, testData.file.viewerToolbarPrimary, testData.file.viewerToolbarMore); - }); - - it('File favorite - [C326625]', async () => { - await testUtil.checkViewerActions(testData.fileFav.name, testData.fileFav.viewerToolbarPrimary, testData.fileFav.viewerToolbarMore); - }); - - it('File Office, shared - [C326637]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxShared.name, - testData.fileDocxShared.viewerToolbarPrimary, - testData.fileDocxShared.viewerToolbarMore - ); - }); - - it('File Office, shared, favorite - [C326638]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.viewerToolbarPrimary, - testData.fileDocxSharedFav.viewerToolbarMore - ); - }); - - it('File shared - [C326648]', async () => { - await testUtil.checkViewerActions(testData.fileShared.name, testData.fileShared.viewerToolbarPrimary, testData.fileShared.viewerToolbarMore); - }); - - it('File shared, favorite - [C326649]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFav.name, - testData.fileSharedFav.viewerToolbarPrimary, - testData.fileSharedFav.viewerToolbarMore - ); - }); - - it('File locked - [C326630]', async () => { - await testUtil.checkViewerActions(testData.fileLocked.name, testData.fileLocked.viewerToolbarPrimary, testData.fileLocked.viewerToolbarMore); - }); - - it('File favorite, locked - [C326633]', async () => { - await testUtil.checkViewerActions( - testData.fileFavLocked.name, - testData.fileFavLocked.viewerToolbarPrimary, - testData.fileFavLocked.viewerToolbarMore - ); - }); - - it('File shared, locked - [C326650]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.viewerToolbarPrimary, - testData.fileSharedLocked.viewerToolbarMore - ); - }); - - it('File shared, favorite, locked - [C326651]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.viewerToolbarPrimary, - testData.fileSharedFavLocked.viewerToolbarMore - ); - }); - }); - - describe('file opened from Favorites', () => { - beforeAll(async () => { - await page.clickFavoritesAndWait(); - }); - - it('File Office, favorite - [C326652]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxFav.name, - testData.fileDocxFav.viewerToolbarPrimary, - testData.fileDocxFav.viewerToolbarMore - ); - }); - - it('File favorite - [C326653]', async () => { - await testUtil.checkViewerActions(testData.fileFav.name, testData.fileFav.viewerToolbarPrimary, testData.fileFav.viewerToolbarMore); - }); - - it('File Office, shared, favorite - [C326655]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.viewerToolbarPrimary, - testData.fileDocxSharedFav.viewerToolbarMore - ); - }); - - it('File shared, favorite - [C326656]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFav.name, - testData.fileSharedFav.viewerToolbarPrimary, - testData.fileSharedFav.viewerToolbarMore - ); - }); - - it('File favorite, locked - [C326654]', async () => { - await testUtil.checkViewerActions( - testData.fileFavLocked.name, - testData.fileFavLocked.viewerToolbarPrimary, - testData.fileFavLocked.viewerToolbarMore - ); - }); - - it('File shared, favorite, locked - [C326657]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.viewerToolbarPrimary, - testData.fileSharedFavLocked.viewerToolbarMore - ); - }); - }); - - describe('file opened from Shared Files', () => { - beforeAll(async () => { - await page.clickSharedFilesAndWait(); - }); - - it('File Office, shared - [C326658]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxShared.name, - testData.fileDocxShared.viewerToolbarPrimary, - testData.fileDocxShared.viewerToolbarMore - ); - }); - - it('File Office, shared, favorite - [C326659]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.viewerToolbarPrimary, - testData.fileDocxSharedFav.viewerToolbarMore - ); - }); - - it('File shared - [C326660]', async () => { - await testUtil.checkViewerActions(testData.fileShared.name, testData.fileShared.viewerToolbarPrimary, testData.fileShared.viewerToolbarMore); - }); - - it('File shared, favorite - [C326661]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFav.name, - testData.fileSharedFav.viewerToolbarPrimary, - testData.fileSharedFav.viewerToolbarMore - ); - }); - - it('File shared, locked - [C326662]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.viewerToolbarPrimary, - testData.fileSharedLocked.viewerToolbarMore - ); - }); - - it('File shared, favorite, locked - [C326663]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.viewerToolbarPrimary, - testData.fileSharedFavLocked.viewerToolbarMore - ); - }); - }); - - describe('file opened from Search Results', () => { - beforeAll(async () => { - await toolbar.clickSearchIconButton(); - await searchInput.clickSearchButton(); - await searchInput.checkOnlyFiles(); - await searchInput.searchFor(`*${testData.random}`); - await searchResultsPage.waitForResults(); - }); - - it('File Office - [C326664]', async () => { - await testUtil.checkViewerActions(testData.fileDocx.name, testData.fileDocx.viewerToolbarPrimary, testData.fileDocx.viewerToolbarMore); - }); - - it('File Office, favorite - [C326665]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxFav.name, - testData.fileDocxFav.viewerToolbarPrimary, - testData.fileDocxFav.viewerToolbarMore - ); - }); - - it('File simple - [C326666]', async () => { - await testUtil.checkViewerActions(testData.file.name, testData.file.viewerToolbarPrimary, testData.file.viewerToolbarMore); - }); - - it('File favorite - [C326667]', async () => { - await testUtil.checkViewerActions(testData.fileFav.name, testData.fileFav.viewerToolbarPrimary, testData.fileFav.viewerToolbarMore); - }); - - it('File Office, shared - [C326670]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxShared.name, - testData.fileDocxShared.viewerToolbarPrimary, - testData.fileDocxShared.viewerToolbarMore - ); - }); - - it('File Office, shared, favorite - [C326671]', async () => { - await testUtil.checkViewerActions( - testData.fileDocxSharedFav.name, - testData.fileDocxSharedFav.viewerToolbarPrimary, - testData.fileDocxSharedFav.viewerToolbarMore - ); - }); - - it('File shared - [C326672]', async () => { - await testUtil.checkViewerActions(testData.fileShared.name, testData.fileShared.viewerToolbarPrimary, testData.fileShared.viewerToolbarMore); - }); - - it('File shared, favorite - [C326673]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFav.name, - testData.fileSharedFav.viewerToolbarPrimary, - testData.fileSharedFav.viewerToolbarMore - ); - }); - - it('File locked - [C326668]', async () => { - await testUtil.checkViewerActions(testData.fileLocked.name, testData.fileLocked.viewerToolbarPrimary, testData.fileLocked.viewerToolbarMore); - }); - - it('File favorite, locked - [C326669]', async () => { - await testUtil.checkViewerActions( - testData.fileFavLocked.name, - testData.fileFavLocked.viewerToolbarPrimary, - testData.fileFavLocked.viewerToolbarMore - ); - }); - - it('File shared, locked - [C326674]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedLocked.name, - testData.fileSharedLocked.viewerToolbarPrimary, - testData.fileSharedLocked.viewerToolbarMore - ); - }); - - it('File shared, favorite, locked - [C326675]', async () => { - await testUtil.checkViewerActions( - testData.fileSharedFavLocked.name, - testData.fileSharedFavLocked.viewerToolbarPrimary, - testData.fileSharedFavLocked.viewerToolbarMore - ); - }); - }); - }); -} diff --git a/protractor.conf.js b/protractor.conf.js index 31e28b1a23..d4f591c8b1 100755 --- a/protractor.conf.js +++ b/protractor.conf.js @@ -75,7 +75,6 @@ exports.config = { actionsAvailableFilesFolders: './e2e/protractor/suites/actions-available/files-folders/**/**/*test.ts', actionsAvailableLibraries: './e2e/protractor/suites/actions-available/libraries/**/**/*test.ts', - actionsAvailableSpecialPermissions: './e2e/protractor/suites/actions-available/special-permissions/**/**/*test.ts', actionsAvailableNewMenu: './e2e/protractor/suites/actions-available/new-menu/**/**/*test.ts', application: './e2e/protractor/suites/application/**/*test.ts',