[ACA-1928] e2e improvements - part1 (#883)

* refactor Mark as favourite tests
rename method to be more clear
create separate methods for some checks and actions

* forgot some changes

* refactor delete-undo tests

* some more refactoring

* fix
This commit is contained in:
Adina Parpalita
2018-12-20 11:27:54 +02:00
committed by Suzana Dirla
parent 0882686172
commit b8ce533759
54 changed files with 2310 additions and 2069 deletions
@@ -109,15 +109,17 @@ describe('Context menu actions - multiple selection : ', () => {
it('Context menu appears on right click on a multiple selection of items - [C286268]', async () => {
await dataTable.selectMultipleItems([ file1, file2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
});
it('Context menu appears when right clicking on a single item while having multiple items selected - [C286269]', async () => {
await dataTable.selectMultipleItems([ file2, folder1 ]);
await dataTable.rightClickOnItem(file1);
expect(await dataTable.hasContextMenu()).toBe(true, `Context menu is not displayed for ${file1}`);
expect(await dataTable.countSelectedRows()).toEqual(1, 'incorrect number of selected rows');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
expect(await dataTable.hasCheckMarkIcon(file1)).toBe(true, `${file1} is not selected`);
expect(await dataTable.hasCheckMarkIcon(file2)).toBe(false, `${file2} is selected`);
expect(await dataTable.hasCheckMarkIcon(folder1)).toBe(false, `${folder1} is selected`);
@@ -135,39 +137,42 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280661]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when multiple folders are selected - [C280632]', async () => {
await dataTable.selectMultipleItems([folder1, folder2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when both files and folders are selected - [C280631]', async () => {
await dataTable.selectMultipleItems([file1, file2, folder1, folder2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
});
@@ -184,40 +189,43 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280641]', async () => {
await dataTable.selectMultipleItems([ file1Site, file2Site ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when multiple folders are selected - [C280574]', async () => {
await dataTable.selectMultipleItems([ folder1Site, folder2Site ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when both files and folders are selected - [C280642]', async () => {
await dataTable.selectMultipleItems([ file1Site, file2Site, folder1Site, folder2Site ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
});
@@ -232,14 +240,15 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280648]', async () => {
await dataTable.selectMultipleItems([ file1, file2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
});
@@ -254,14 +263,15 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280652]', async () => {
await dataTable.selectMultipleItems([ file1, file2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
});
@@ -276,43 +286,46 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280656]', async () => {
await dataTable.selectMultipleItems([ file1, file2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when multiple folders are selected - [C280664]', async () => {
await dataTable.selectMultipleItems([ folder1, folder2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
it('correct actions appear when both files and folders are selected - [C280657]', async () => {
await dataTable.selectMultipleItems([ file1, file2, folder1, folder2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed`);
});
});
@@ -327,43 +340,46 @@ describe('Context menu actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C286273]', async () => {
await dataTable.selectMultipleItems([ fileInTrash1, fileInTrash2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('Permanently delete')).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isMenuItemPresent('Restore')).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(false, 'Download is displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(false, `Copy is displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(false, `Favorite is displayed`);
expect(await contextMenu.isPermanentDeletePresent()).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isRestorePresent()).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(false, 'Download is displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(false, `Copy is displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(false, `Favorite is displayed`);
});
it('correct actions appear when multiple folders are selected - [C286274]', async () => {
await dataTable.selectMultipleItems([ folderInTrash1, folderInTrash2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('Permanently delete')).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isMenuItemPresent('Restore')).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(false, 'Download is displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(false, `Copy is displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(false, `Favorite is displayed`);
expect(await contextMenu.isPermanentDeletePresent()).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isRestorePresent()).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(false, 'Download is displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(false, `Copy is displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(false, `Favorite is displayed`);
});
it('correct actions appear when both files and folders are selected - [C286275]', async () => {
await dataTable.selectMultipleItems([ fileInTrash1, fileInTrash2, folderInTrash1, folderInTrash2 ]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('Permanently delete')).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isMenuItemPresent('Restore')).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(false, 'Download is displayed');
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(false, `Copy is displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(false, `Favorite is displayed`);
expect(await contextMenu.isPermanentDeletePresent()).toBe(true, 'Permanently delete is not displayed');
expect(await contextMenu.isRestorePresent()).toBe(true, 'Restore is not displayed');
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(false, 'Download is displayed');
expect(await contextMenu.isEditPresent()).toBe(false, 'Edit is displayed');
expect(await contextMenu.isCopyPresent()).toBe(false, `Copy is displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(false, `Favorite is displayed`);
});
});
});
@@ -107,31 +107,36 @@ describe('Context menu actions - single selection : ', () => {
it('Row is marked with a check circle icon on direct right click - [C286252]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await dataTable.hasCheckMarkIcon(fileUser)).toBe(true, 'check mark missing');
});
it('Context menu appears on direct right click on an item - [C286253]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
});
it('Context menu appears when selecting an item and then right clicking on it - [C286254]', async () => {
await dataTable.selectItem(fileUser);
await dataTable.rightClickOnItem(fileUser);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
});
it('Context menu appears correctly when right clicking on another item - [C284666]', async () => {
await dataTable.selectItem(fileUser);
await dataTable.rightClickOnItem(folderUser);
expect(await dataTable.hasContextMenu()).toBe(true, `Context menu is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await contextMenu.isEditPresent()).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await dataTable.hasCheckMarkIcon(folderUser)).toBe(true, `${folderUser} is not selected`);
expect(await dataTable.hasCheckMarkIcon(fileUser)).toBe(false, `${fileUser} is not selected`);
});
it('Context menu closes when clicking away from it - [C280619]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
await page.sidenav.getActiveLink().click();
expect(await dataTable.hasContextMenu()).toBe(false, 'Context menu is displayed');
@@ -148,31 +153,33 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C280615]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions is not displayed for ${fileUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileUser}`);
});
it('Context menu has the correct actions for a folder - [C280616]', async () => {
await dataTable.rightClickOnItem(folderUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(false, `Manage Versions is displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is displayed for ${folderUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${folderUser}`);
expect(await contextMenu.isEditPresent()).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${folderUser}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(false, `Manage Versions is displayed for ${folderUser}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is displayed for ${folderUser}`);
});
});
@@ -187,31 +194,33 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C280594]', async () => {
await dataTable.rightClickOnItem(fileSiteUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileSiteUser}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileSiteUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions not displayed for ${fileSiteUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${fileSiteUser}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileSiteUser}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileSiteUser}`);
});
it('Context menu has the correct actions for a folder - [C280595]', async () => {
await dataTable.rightClickOnItem(folderSiteUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not enabled for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(true, `Edit is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(false, `Manage Versions displayed for ${folderSiteUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is displayed for ${folderSiteUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isEditPresent()).toBe(true, `Edit is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${folderSiteUser}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is displayed for ${folderSiteUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(false, `Manage Versions displayed for ${folderSiteUser}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is displayed for ${folderSiteUser}`);
});
});
@@ -225,37 +234,41 @@ describe('Context menu actions - single selection : ', () => {
it('Available actions when a library is selected - My Libraries - [C290080]', async () => {
await page.goToMyLibraries();
await dataTable.rightClickOnItem(siteName);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
expect(await contextMenu.isMenuItemPresent('Leave library')).toBe(true, `Leave is not displayed for ${siteName}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${siteName}`);
expect(await contextMenu.isLeaveLibraryPresent()).toBe(true, `Leave is not displayed for ${siteName}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${siteName}`);
});
it('Available actions when a library is selected - Favorite Libraries - user is a member - [C290081]', async () => {
await page.goToFavoriteLibraries();
await dataTable.rightClickOnItem(siteName);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
expect(await contextMenu.isMenuItemPresent('Leave library')).toBe(true, `Leave is not displayed for ${siteName}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${siteName}`);
expect(await contextMenu.isLeaveLibraryPresent()).toBe(true, `Leave is not displayed for ${siteName}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${siteName}`);
});
it('Available actions when a library is selected - Favorite Libraries - user is not a member - [C290082]', async () => {
await page.goToFavoriteLibraries();
await dataTable.rightClickOnItem(adminPublic);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
expect(await contextMenu.isMenuItemPresent('Join')).toBe(true, `Join is not displayed for ${adminPublic}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${adminPublic}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${adminPublic}`);
expect(await contextMenu.isJoinLibraryPresent()).toBe(true, `Join is not displayed for ${adminPublic}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${adminPublic}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${adminPublic}`);
});
it('Available actions when a library is selected - Favorite Libraries - user requested to join - [C290089]', async () => {
await page.goToFavoriteLibraries();
await dataTable.rightClickOnItem(adminModerated);
expect(await dataTable.hasContextMenu()).toBe(true, 'Context menu is not displayed');
expect(await contextMenu.isMenuItemPresent('Cancel join')).toBe(true, `Cancel join is not displayed for ${adminModerated}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${adminModerated}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${adminModerated}`);
expect(await contextMenu.isCancelJoinPresent()).toBe(true, `Cancel join is not displayed for ${adminModerated}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${adminModerated}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${adminModerated}`);
});
});
@@ -268,17 +281,18 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C280601]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Shared link settings')).toBe(true, `Shared link settings is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isSharedLinkSettingsPresent()).toBe(true, `Shared link settings is not displayed for ${fileUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions not displayed for ${fileUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileUser}`);
});
});
@@ -291,17 +305,18 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C280622]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions not displayed for ${fileUser}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileUser}`);
});
});
@@ -314,33 +329,35 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C280608]', async () => {
await dataTable.rightClickOnItem(fileUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions is not displayed for ${fileUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${fileUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions is not displayed for ${fileUser}`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileUser}`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${fileUser}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileUser}`);
});
it('Context menu has the correct actions for a folder - [C280609]', async () => {
await dataTable.rightClickOnItem(folderUser);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${folderUser}`);
expect(await contextMenu.isEditPresent()).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await contextMenu.isMovePresent()).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await contextMenu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderUser}`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(false, `Manage Versions is displayed for ${folderUser}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is displayed for ${folderUser}`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${folderUser}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(false, `Manage Versions is displayed for ${folderUser}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is displayed for ${folderUser}`);
});
});
@@ -353,38 +370,40 @@ describe('Context menu actions - single selection : ', () => {
it('Context menu has the correct actions for a file - [C286258]', async () => {
await dataTable.rightClickOnItem(fileInTrash);
expect(await contextMenu.isMenuItemPresent('Permanently delete'))
expect(await contextMenu.isPermanentDeletePresent())
.toBe(true, `Permanently delete is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Restore')).toBe(true, `Restore is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(false, `Download is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(false, `Favorite is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(false, `Copy is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions'))
expect(await contextMenu.isRestorePresent()).toBe(true, `Restore is not displayed for ${fileInTrash}`);
expect(await contextMenu.isDownloadPresent()).toBe(false, `Download is not displayed for ${fileInTrash}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is not displayed for ${fileInTrash}`);
expect(await contextMenu.isFavoritePresent()).toBe(false, `Favorite is not displayed for ${fileInTrash}`);
expect(await contextMenu.isCopyPresent()).toBe(false, `Copy is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is not displayed for ${fileInTrash}`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is not displayed for ${fileInTrash}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is not displayed for ${fileInTrash}`);
expect(await contextMenu.isManageVersionsPresent())
.toBe(false, `Manage Versions is not displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${fileInTrash}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${fileInTrash}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${fileInTrash}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${fileInTrash}`);
});
it('Context menu has the correct actions for a folder - [C286259]', async () => {
await dataTable.rightClickOnItem(folderInTrash);
expect(await contextMenu.isMenuItemPresent('Permanently delete'))
expect(await contextMenu.isPermanentDeletePresent())
.toBe(true, `Permanently delete is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Restore')).toBe(true, `Restore is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(false, `Download is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(false, `Favorite is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(false, `Copy is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions'))
expect(await contextMenu.isRestorePresent()).toBe(true, `Restore is not displayed for ${folderInTrash}`);
expect(await contextMenu.isDownloadPresent()).toBe(false, `Download is not displayed for ${folderInTrash}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is not displayed for ${folderInTrash}`);
expect(await contextMenu.isFavoritePresent()).toBe(false, `Favorite is not displayed for ${folderInTrash}`);
expect(await contextMenu.isCopyPresent()).toBe(false, `Copy is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is not displayed for ${folderInTrash}`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is not displayed for ${folderInTrash}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is not displayed for ${folderInTrash}`);
expect(await contextMenu.isManageVersionsPresent())
.toBe(false, `Manage Versions is not displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${folderInTrash}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${folderInTrash}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${folderInTrash}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${folderInTrash}`);
});
});
});
+26 -33
View File
@@ -101,8 +101,8 @@ describe('Create folder', () => {
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
await dataTable.waitForHeader();
const isPresent = await dataTable.getRowByName(folderName1).isPresent();
expect(isPresent).toBe(true, 'Folder not displayed in list view');
expect(await dataTable.isItemPresent(folderName1)).toBe(true, 'Folder not displayed in list view');
});
it('creates new folder with name and description - [C216340]', async (done) => {
@@ -114,7 +114,8 @@ describe('Create folder', () => {
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
await dataTable.waitForHeader();
expect(await dataTable.getRowByName(folderName2).isPresent()).toBe(true, 'Folder not displayed');
expect(await dataTable.isItemPresent(folderName2)).toBe(true, 'Folder not displayed');
const desc = await apis.user.nodes.getNodeDescription(folderName2, parentId);
expect(desc).toEqual(folderDescription);
done();
@@ -124,17 +125,12 @@ describe('Create folder', () => {
await page.dataTable.doubleClickOnRowByName(parent);
await page.sidenav.openCreateFolderDialog();
await createDialog.waitForDialogToOpen();
const dialogTitle = await createDialog.getTitle();
const isFolderNameDisplayed = await createDialog.nameInput.isDisplayed();
const isDescriptionDisplayed = await createDialog.descriptionTextArea.isDisplayed();
const isCreateEnabled = await createDialog.createButton.isEnabled();
const isCancelEnabled = await createDialog.cancelButton.isEnabled();
expect(dialogTitle).toMatch('Create new folder');
expect(isFolderNameDisplayed).toBe(true, 'Name input is not displayed');
expect(isDescriptionDisplayed).toBe(true, 'Description field is not displayed');
expect(isCreateEnabled).toBe(false, 'Create button is not disabled');
expect(isCancelEnabled).toBe(true, 'Cancel button is not enabled');
expect(await createDialog.getTitle()).toMatch('Create new folder');
expect(await createDialog.isNameDisplayed()).toBe(true, 'Name input is not displayed');
expect(await createDialog.isDescriptionDisplayed()).toBe(true, 'Description field is not displayed');
expect(await createDialog.isCreateButtonEnabled()).toBe(false, 'Create button is not disabled');
expect(await createDialog.isCancelButtonEnabled()).toBe(true, 'Cancel button is not enabled');
});
it('with empty folder name - [C216346]', async () => {
@@ -142,11 +138,9 @@ describe('Create folder', () => {
await page.sidenav.openCreateFolderDialog();
await createDialog.waitForDialogToOpen();
await createDialog.deleteNameWithBackspace();
const isCreateEnabled = await createDialog.createButton.isEnabled();
const validationMessage = await createDialog.getValidationMessage();
expect(isCreateEnabled).toBe(false, 'Create button is enabled');
expect(validationMessage).toMatch('Folder name is required');
expect(await createDialog.isCreateButtonEnabled()).toBe(false, 'Create button is enabled');
expect(await createDialog.getValidationMessage()).toMatch('Folder name is required');
});
it('with folder name ending with a dot "." - [C216348]', async () => {
@@ -154,11 +148,9 @@ describe('Create folder', () => {
await page.sidenav.openCreateFolderDialog();
await createDialog.waitForDialogToOpen();
await createDialog.enterName('folder-name.');
const isCreateEnabled = await createDialog.createButton.isEnabled();
const validationMessage = await createDialog.getValidationMessage();
expect(isCreateEnabled).toBe(false, 'Create button is not disabled');
expect(validationMessage).toMatch(`Folder name can't end with a period .`);
expect(await createDialog.isCreateButtonEnabled()).toBe(false, 'Create button is not disabled');
expect(await createDialog.getValidationMessage()).toMatch(`Folder name can't end with a period .`);
});
it('with folder name containing special characters - [C216347]', async () => {
@@ -170,7 +162,7 @@ describe('Create folder', () => {
for (const name of namesWithSpecialChars) {
await createDialog.enterName(name);
expect(await createDialog.createButton.isEnabled()).toBe(false, 'Create button is not disabled');
expect(await createDialog.isCreateButtonEnabled()).toBe(false, 'Create button is not disabled');
expect(await createDialog.getValidationMessage()).toContain(`Folder name can't contain these characters`);
}
});
@@ -180,11 +172,9 @@ describe('Create folder', () => {
await page.sidenav.openCreateFolderDialog();
await createDialog.waitForDialogToOpen();
await createDialog.enterName(' ');
const isCreateEnabled = await createDialog.createButton.isEnabled();
const validationMessage = await createDialog.getValidationMessage();
expect(isCreateEnabled).toBe(false, 'Create button is not disabled');
expect(validationMessage).toMatch(`Folder name can't contain only spaces`);
expect(await createDialog.isCreateButtonEnabled()).toBe(false, 'Create button is not disabled');
expect(await createDialog.getValidationMessage()).toMatch(`Folder name can't contain only spaces`);
});
it('cancel folder creation - [C216349]', async () => {
@@ -194,6 +184,7 @@ describe('Create folder', () => {
await createDialog.enterName('test');
await createDialog.enterDescription('test description');
await createDialog.clickCancel();
expect(await createDialog.isDialogOpen()).not.toBe(true, 'dialog is not closed');
});
@@ -203,8 +194,8 @@ describe('Create folder', () => {
await createDialog.waitForDialogToOpen();
await createDialog.enterName(duplicateFolderName);
await createDialog.clickCreate();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await page.getSnackBarMessage()).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await createDialog.isDialogOpen()).toBe(true, 'dialog is not present');
});
@@ -216,8 +207,8 @@ describe('Create folder', () => {
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
await dataTable.waitForHeader();
const isPresent = await dataTable.getRowByName(nameWithSpaces.trim()).isPresent();
expect(isPresent).toBe(true, 'Folder not displayed in list view');
expect(await dataTable.isItemPresent(nameWithSpaces.trim())).toBe(true, 'Folder not displayed in list view');
});
});
@@ -243,7 +234,8 @@ describe('Create folder', () => {
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
await dataTable.waitForHeader();
expect(await dataTable.getRowByName(folderSite).isPresent()).toBe(true, 'Folder not displayed');
expect(await dataTable.isItemPresent(folderSite)).toBe(true, 'Folder not displayed');
const desc = await apis.user.nodes.getNodeDescription(folderSite, docLibUserSite);
expect(desc).toEqual(folderDescription);
});
@@ -255,6 +247,7 @@ describe('Create folder', () => {
await createDialog.enterName('test');
await createDialog.enterDescription('test description');
await createDialog.clickCancel();
expect(await createDialog.isDialogOpen()).not.toBe(true, 'dialog is not closed');
});
@@ -264,8 +257,8 @@ describe('Create folder', () => {
await createDialog.waitForDialogToOpen();
await createDialog.enterName(duplicateFolderSite);
await createDialog.clickCreate();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await page.getSnackBarMessage()).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await createDialog.isDialogOpen()).toBe(true, 'dialog is not present');
});
});
+21 -19
View File
@@ -85,6 +85,7 @@ describe('Create library', () => {
it('Create Library dialog UI - [C280024]', async () => {
await page.sidenav.openCreateLibraryDialog();
await createDialog.waitForDialogToOpen();
expect(await createDialog.getTitle()).toMatch('Create Library');
expect(await createDialog.isNameDisplayed()).toBe(true, 'Name input is not displayed');
expect(await createDialog.isLibraryIdDisplayed()).toBe(true, 'Library ID input is not displayed');
@@ -103,10 +104,10 @@ describe('Create library', () => {
await createDialog.enterName(site1Name);
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
const current = await page.breadcrumb.getCurrentItemName();
expect(current).toEqual(site1Name, `Not navigated into ${site1Name}`);
expect(await page.breadcrumb.getCurrentItemName()).toEqual(site1Name, `Not navigated into ${site1Name}`);
await page.clickFileLibrariesAndWait();
expect(await dataTable.getRowByName(site1Name).isPresent()).toBe(true, `${site1Name} not in the list`);
expect(await dataTable.isItemPresent(site1Name)).toBe(true, `${site1Name} not in the list`);
expect(await apis.user.sites.getVisibility(site1Name)).toEqual(SITE_VISIBILITY.PUBLIC);
});
@@ -117,10 +118,10 @@ describe('Create library', () => {
await createDialog.selectModerated();
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
const current = await page.breadcrumb.getCurrentItemName();
expect(current).toEqual(site2Name, `Not navigated into ${site2Name}`);
expect(await page.breadcrumb.getCurrentItemName()).toEqual(site2Name, `Not navigated into ${site2Name}`);
await page.clickFileLibrariesAndWait();
expect(await dataTable.getRowByName(site2Name).isPresent()).toBe(true, `${site2Name} not in the list`);
expect(await dataTable.isItemPresent(site2Name)).toBe(true, `${site2Name} not in the list`);
expect(await apis.user.sites.getVisibility(site2Name)).toEqual(SITE_VISIBILITY.MODERATED);
});
@@ -131,10 +132,10 @@ describe('Create library', () => {
await createDialog.selectPrivate();
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
const current = await page.breadcrumb.getCurrentItemName();
expect(current).toEqual(site3Name, `Not navigated into ${site3Name}`);
expect(await page.breadcrumb.getCurrentItemName()).toEqual(site3Name, `Not navigated into ${site3Name}`);
await page.clickFileLibrariesAndWait();
expect(await dataTable.getRowByName(site3Name).isPresent()).toBe(true, `${site3Name} not in the list`);
expect(await dataTable.isItemPresent(site3Name)).toBe(true, `${site3Name} not in the list`);
expect(await apis.user.sites.getVisibility(site3Name)).toEqual(SITE_VISIBILITY.PRIVATE);
});
@@ -147,10 +148,10 @@ describe('Create library', () => {
await createDialog.selectPublic();
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
const current = await page.breadcrumb.getCurrentItemName();
expect(current).toEqual(site4.name, `Not navigated into ${site4.name}`);
expect(await page.breadcrumb.getCurrentItemName()).toEqual(site4.name, `Not navigated into ${site4.name}`);
await page.clickFileLibrariesAndWait();
expect(await dataTable.getRowByName(site4.name).isPresent()).toBe(true, `${site4.name} not in the list`);
expect(await dataTable.isItemPresent(site4.name)).toBe(true, `${site4.name} not in the list`);
expect(await apis.user.sites.getVisibility(site4.id)).toEqual(SITE_VISIBILITY.PUBLIC);
expect(await apis.user.sites.getDescription(site4.id)).toEqual(site4.description);
});
@@ -160,9 +161,9 @@ describe('Create library', () => {
await createDialog.waitForDialogToOpen();
await createDialog.enterName(duplicateSite.name);
await createDialog.enterLibraryId(duplicateSite.id);
expect(await createDialog.isCreateEnabled()).toBe(false, 'Create button not disabled');
const err = await createDialog.getErrorMessage();
expect(err).toEqual(`This Library ID isn't available. Try a different Library ID.`);
expect(await createDialog.getErrorMessage()).toEqual(`This Library ID isn't available. Try a different Library ID.`);
});
it('Create library using the ID of a library from the Trashcan - [C280028]', async () => {
@@ -171,8 +172,8 @@ describe('Create library', () => {
await createDialog.enterName(siteInTrash.name);
await createDialog.enterLibraryId(siteInTrash.id);
await createDialog.clickCreate();
const err = await createDialog.getErrorMessage();
expect(err).toEqual(`This Library ID is already used. Check the trashcan.`);
expect(await createDialog.getErrorMessage()).toEqual(`This Library ID is already used. Check the trashcan.`);
});
it('Cancel button - [C280029]', async () => {
@@ -181,6 +182,7 @@ describe('Create library', () => {
await createDialog.enterName('test site');
await createDialog.enterDescription('test description');
await createDialog.clickCancel();
expect(await createDialog.isDialogOpen()).not.toBe(true, 'dialog is not closed');
});
@@ -205,10 +207,10 @@ describe('Create library', () => {
await createDialog.enterLibraryId(`${duplicateSite.id}-2`);
await createDialog.clickCreate();
await createDialog.waitForDialogToClose();
const current = await page.breadcrumb.getCurrentItemName();
expect(current).toEqual(duplicateSite.name, `Not navigated into ${duplicateSite.name}`);
expect(await page.breadcrumb.getCurrentItemName()).toEqual(duplicateSite.name, `Not navigated into ${duplicateSite.name}`);
await page.clickFileLibrariesAndWait();
expect(await dataTable.getRowByName(`${duplicateSite.name} (${duplicateSite.id}-2)`).isPresent()).toBe(true, `${duplicateSite.name} not in the list`);
expect(await dataTable.isItemPresent(`${duplicateSite.name} (${duplicateSite.id}-2)`)).toBe(true, `${duplicateSite.name} not in the list`);
expect(await apis.user.sites.getTitle(`${duplicateSite.id}-2`)).toEqual(duplicateSite.name);
});
+271 -327
View File
@@ -23,7 +23,6 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { browser } from 'protractor';
import { LoginPage, BrowsingPage } from '../../pages/pages';
import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
@@ -53,192 +52,181 @@ describe('Delete and undo delete', () => {
xit('');
describe('on Personal Files', () => {
const file1 = `file1-${Utils.random()}.txt`; let file1Id;
const file2 = `file2-${Utils.random()}.txt`; let file2Id;
const file1 = `file1-${Utils.random()}.txt`;
const file2 = `file2-${Utils.random()}.txt`;
const file3 = `file3-${Utils.random()}.txt`;
const file4 = `file4-${Utils.random()}.txt`; let file4Id;
const file4 = `file4-${Utils.random()}.txt`;
const file5 = `file5-${Utils.random()}.txt`;
const file6 = `file6-${Utils.random()}.txt`;
const file7 = `file7-${Utils.random()}.txt`;
const folder1 = `folder1-${Utils.random()}`; let folder1Id;
const folder2 = `folder2-${Utils.random()}`; let folder2Id;
const folder3 = `folder3-${Utils.random()}`; let folder3Id;
const folder4 = `folder4-${Utils.random()}`; let folder4Id;
const folder5 = `folder5-${Utils.random()}`; let folder5Id;
const folder6 = `folder6-${Utils.random()}`; let folder6Id;
const file1InFolder = `file1InFolder-${Utils.random()}.txt`;
const file2InFolder = `file2InFolder-${Utils.random()}.txt`;
const fileLocked1 = `fileLocked1-${Utils.random()}.txt`; let fileLocked1Id;
const fileLocked2 = `fileLocked2-${Utils.random()}.txt`; let fileLocked2Id;
const fileLocked3 = `fileLocked3-${Utils.random()}.txt`; let fileLocked3Id;
const fileLocked4 = `fileLocked4-${Utils.random()}.txt`; let fileLocked4Id;
const parent = `parentPF-${Utils.random()}`; let parentId;
beforeAll(async (done) => {
file1Id = (await apis.user.nodes.createFile(file1)).entry.id;
file2Id = (await apis.user.nodes.createFile(file2)).entry.id;
folder1Id = (await apis.user.nodes.createFolder(folder1)).entry.id;
parentId = (await apis.user.nodes.createFolder(parent)).entry.id;
folder2Id = (await apis.user.nodes.createFolder(folder2)).entry.id;
await apis.user.nodes.createFile(file3, folder1Id);
file4Id = (await apis.user.nodes.createFile(file4, folder2Id)).entry.id;
await apis.user.nodes.lockFile(file4Id);
await apis.user.nodes.createFile(file1, parentId);
await apis.user.nodes.createFile(file2, parentId);
await apis.user.nodes.createFile(file3, parentId);
await apis.user.nodes.createFile(file4, parentId);
await apis.user.nodes.createFile(file5, parentId);
await apis.user.nodes.createFile(file6, parentId);
await apis.user.nodes.createFile(file7, parentId);
folder3Id = (await apis.user.nodes.createFolder(folder3)).entry.id;
folder1Id = (await apis.user.nodes.createFolder(folder1, parentId)).entry.id;
folder2Id = (await apis.user.nodes.createFolder(folder2, parentId)).entry.id;
folder3Id = (await apis.user.nodes.createFolder(folder3, parentId)).entry.id;
folder4Id = (await apis.user.nodes.createFolder(folder4, parentId)).entry.id;
folder5Id = (await apis.user.nodes.createFolder(folder5, parentId)).entry.id;
folder6Id = (await apis.user.nodes.createFolder(folder6, parentId)).entry.id;
await apis.user.nodes.createFile(file1InFolder, folder1Id);
fileLocked1Id = (await apis.user.nodes.createFile(fileLocked1, folder2Id)).entry.id;
fileLocked2Id = (await apis.user.nodes.createFile(fileLocked2, folder3Id)).entry.id;
await apis.user.nodes.lockFile(fileLocked2Id);
fileLocked3Id = (await apis.user.nodes.createFile(fileLocked3, folder4Id)).entry.id;
fileLocked4Id = (await apis.user.nodes.createFile(fileLocked4, folder5Id)).entry.id;
await apis.user.nodes.createFile(file2InFolder, folder6Id);
fileLocked1Id = (await apis.user.nodes.createFile(fileLocked1)).entry.id;
await apis.user.nodes.lockFile(fileLocked1Id);
await apis.user.nodes.lockFile(fileLocked2Id);
await apis.user.nodes.lockFile(fileLocked3Id);
await apis.user.nodes.lockFile(fileLocked4Id);
await loginPage.loginWith(username);
done();
});
beforeEach(async (done) => {
await page.clickPersonalFilesAndWait();
done();
});
afterEach(async (done) => {
await page.refresh();
await page.dataTable.doubleClickOnRowByName(parent);
done();
});
afterAll(async (done) => {
await apis.user.nodes.unlockFile(file4Id);
await apis.user.nodes.unlockFile(fileLocked1Id);
await apis.user.nodes.unlockFile(fileLocked2Id);
await apis.user.nodes.deleteNodesById([file1Id, file2Id, folder1Id, folder2Id, folder3Id, fileLocked1Id]);
await apis.user.search.waitForApi(username, {expect: 0});
await apis.user.nodes.unlockFile(fileLocked3Id);
await apis.user.nodes.unlockFile(fileLocked4Id);
await apis.user.nodes.deleteNodeById(parentId);
await apis.user.trashcan.emptyTrash();
done();
});
xit('delete a file and check notification - [C217125]', async () => {
it('delete a file and check notification - [C217125]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectItem(file1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${file1} deleted`);
expect(await dataTable.getRowByName(file1).isPresent()).toBe(false, 'Item was not removed from list');
expect(message).toContain(`Undo`);
expect(await dataTable.isItemPresent(file1)).toBe(false, 'Item was not removed from list');
items--;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(file1).isPresent()).toBe(true, 'Item is not in trash');
await apis.user.trashcan.restore(file1Id);
expect(await dataTable.isItemPresent(file1)).toBe(true, 'Item is not in trash');
});
xit('delete multiple files and check notification - [C280502]', async () => {
it('delete multiple files and check notification - [C280502]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectMultipleItems([file1, file2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([file2, file3]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 2 items`);
expect(await dataTable.getRowByName(file1).isPresent()).toBe(false, `${file1} was not removed from list`);
expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} was not removed from list`);
expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} was not removed from list`);
expect(await dataTable.isItemPresent(file3)).toBe(false, `${file3} was not removed from list`);
items = items - 2;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(file1).isPresent()).toBe(true, `${file1} is not in trash`);
expect(await dataTable.getRowByName(file2).isPresent()).toBe(true, `${file2} is not in trash`);
await apis.user.trashcan.restore(file1Id);
await apis.user.trashcan.restore(file2Id);
expect(await dataTable.isItemPresent(file2)).toBe(true, `${file2} is not in trash`);
expect(await dataTable.isItemPresent(file3)).toBe(true, `${file3} is not in trash`);
});
it('delete a folder with content - [C217126]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectItem(folder1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
expect(await dataTable.getRowByName(folder1).isPresent()).toBe(false, 'Item was not removed from list');
await toolbar.clickMoreActionsDelete();
expect(await dataTable.isItemPresent(folder1)).toBe(false, 'Item was not removed from list');
items--;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(folder1).isPresent()).toBe(true, 'Item is not in trash');
expect(await dataTable.getRowByName(file3).isPresent()).toBe(false, 'Item is in trash');
await apis.user.trashcan.restore(folder1Id);
expect(await dataTable.isItemPresent(folder1)).toBe(true, 'Item is not in trash');
expect(await dataTable.isItemPresent(file1InFolder)).toBe(false, 'Item is in trash');
});
it('delete a folder containing locked files - [C217127]', async () => {
await dataTable.selectItem(folder2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${folder2} couldn't be deleted`);
expect(await dataTable.getRowByName(folder2).isPresent()).toBe(true, 'Item was removed from list');
expect(message).not.toContain(`Undo`);
expect(await dataTable.isItemPresent(folder2)).toBe(true, 'Item was removed from list');
await page.clickTrash();
expect(await dataTable.getRowByName(folder2).isPresent()).toBe(false, 'Item is in trash');
expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, 'Item is in trash');
expect(await dataTable.isItemPresent(folder2)).toBe(false, 'Item is in trash');
expect(await dataTable.isItemPresent(fileLocked1)).toBe(false, 'Item is in trash');
});
it('notification on multiple items deletion - some items fail to delete - [C217129]', async () => {
await dataTable.selectMultipleItems([file1, folder2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([file4, folder3]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 1 item, 1 couldn't be deleted`);
await apis.user.trashcan.restore(file1Id);
expect(message).toContain(`Undo`);
});
it('notification on multiple items deletion - all items fail to delete - [C217130]', async () => {
await dataTable.selectMultipleItems([folder3, folder2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([folder4, folder5]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`2 items couldn't be deleted`);
});
it('successful delete notification shows Undo action - [C217131]', async () => {
await dataTable.selectItem(file1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).toContain(`Undo`);
await apis.user.trashcan.restore(file1Id);
});
it('unsuccessful delete notification does not show Undo action - [C217134]', async () => {
await dataTable.selectItem(folder2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).not.toContain(`Undo`);
});
it('undo delete of file - [C217132]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectItem(file1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(file5);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(file1).isPresent()).toBe(true, 'Item was not restored');
expect(await dataTable.isItemPresent(file5)).toBe(true, 'Item was not restored');
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
});
it('undo delete of folder with content - [C280503]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectItem(folder1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(folder6);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(folder1).isPresent()).toBe(true, 'Item was not restored');
expect(await dataTable.isItemPresent(folder6)).toBe(true, 'Item was not restored');
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await dataTable.doubleClickOnRowByName(folder1);
expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, 'file from folder not restored');
await dataTable.doubleClickOnRowByName(folder6);
expect(await dataTable.isItemPresent(file2InFolder)).toBe(true, 'file from folder not restored');
});
xit('undo delete of multiple files - [C280504]', async () => {
it('undo delete of multiple files - [C280504]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectMultipleItems([file1, file2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([file6, file7]);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(file1).isPresent()).toBe(true, `${file1} was not removed from list`);
expect(await dataTable.getRowByName(file2).isPresent()).toBe(true, `${file2} was not removed from list`);
expect(await dataTable.isItemPresent(file6)).toBe(true, `${file6} was not removed from list`);
expect(await dataTable.isItemPresent(file7)).toBe(true, `${file7} was not removed from list`);
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
});
});
@@ -248,14 +236,28 @@ describe('Delete and undo delete', () => {
const sharedFile2 = `sharedFile2-${Utils.random()}.txt`; let sharedFile2Id;
const sharedFile3 = `sharedFile3-${Utils.random()}.txt`; let sharedFile3Id;
const sharedFile4 = `sharedFile4-${Utils.random()}.txt`; let sharedFile4Id;
const sharedFile5 = `sharedFile5-${Utils.random()}.txt`; let sharedFile5Id;
const sharedFile6 = `sharedFile6-${Utils.random()}.txt`; let sharedFile6Id;
const parent = `parentSF-${Utils.random()}`; let parentId;
beforeAll(async (done) => {
sharedFile1Id = (await apis.user.nodes.createFile(sharedFile1)).entry.id;
sharedFile2Id = (await apis.user.nodes.createFile(sharedFile2)).entry.id;
sharedFile3Id = (await apis.user.nodes.createFile(sharedFile3)).entry.id;
sharedFile4Id = (await apis.user.nodes.createFile(sharedFile4)).entry.id;
await apis.user.shared.shareFilesByIds([sharedFile1Id, sharedFile2Id, sharedFile3Id, sharedFile4Id]);
await apis.user.shared.waitForApi({ expect: 4 });
parentId = (await apis.user.nodes.createFolder(parent)).entry.id;
sharedFile1Id = (await apis.user.nodes.createFile(sharedFile1, parentId)).entry.id;
sharedFile2Id = (await apis.user.nodes.createFile(sharedFile2, parentId)).entry.id;
sharedFile3Id = (await apis.user.nodes.createFile(sharedFile3, parentId)).entry.id;
sharedFile4Id = (await apis.user.nodes.createFile(sharedFile4, parentId)).entry.id;
sharedFile5Id = (await apis.user.nodes.createFile(sharedFile5, parentId)).entry.id;
sharedFile6Id = (await apis.user.nodes.createFile(sharedFile6, parentId)).entry.id;
await apis.user.shared.shareFilesByIds([
sharedFile1Id,
sharedFile2Id,
sharedFile3Id,
sharedFile4Id,
sharedFile5Id,
sharedFile6Id]);
await apis.user.shared.waitForApi({ expect: 6 });
await loginPage.loginWith(username);
done();
@@ -266,109 +268,112 @@ describe('Delete and undo delete', () => {
done();
});
afterEach(async (done) => {
await page.refresh();
done();
});
afterAll(async (done) => {
await apis.user.nodes.deleteNodesById([sharedFile1Id, sharedFile2Id, sharedFile3Id, sharedFile4Id]);
await apis.user.search.waitForApi(username, {expect: 0});
await apis.user.nodes.deleteNodeById(parentId);
await apis.user.trashcan.emptyTrash();
done();
});
xit('delete a file and check notification - [C280316]', async () => {
it('delete a file and check notification - [C280316]', async () => {
await dataTable.selectItem(sharedFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${sharedFile1} deleted`);
expect(await dataTable.getRowByName(sharedFile1).isPresent()).toBe(false, 'Item was not removed from list');
expect(message).toContain(`Undo`);
expect(await dataTable.isItemPresent(sharedFile1)).toBe(false, 'Item was not removed from list');
await page.clickTrash();
expect(await dataTable.getRowByName(sharedFile1).isPresent()).toBe(true, 'Item is not in trash');
await apis.user.trashcan.restore(sharedFile1Id);
await apis.user.shared.shareFilesByIds([ sharedFile1Id ]);
await apis.user.shared.waitForApi({ expect: 4 });
expect(await dataTable.isItemPresent(sharedFile1)).toBe(true, 'Item is not in trash');
});
xit('delete multiple files and check notification - [C280513]', async () => {
it('delete multiple files and check notification - [C280513]', async () => {
await dataTable.selectMultipleItems([sharedFile2, sharedFile3]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 2 items`);
expect(await dataTable.getRowByName(sharedFile2).isPresent()).toBe(false, `${sharedFile2} was not removed from list`);
expect(await dataTable.getRowByName(sharedFile3).isPresent()).toBe(false, `${sharedFile3} was not removed from list`);
await page.clickTrash();
expect(await dataTable.getRowByName(sharedFile2).isPresent()).toBe(true, `${sharedFile2} is not in trash`);
expect(await dataTable.getRowByName(sharedFile3).isPresent()).toBe(true, `${sharedFile3} is not in trash`);
await apis.user.trashcan.restore(sharedFile2Id);
await apis.user.trashcan.restore(sharedFile3Id);
await apis.user.shared.shareFilesByIds([ sharedFile2Id, sharedFile3Id ]);
await apis.user.shared.waitForApi({ expect: 4 });
});
xit('successful delete notification shows Undo action - [C280323]', async () => {
await dataTable.selectItem(sharedFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).toContain(`Undo`);
await apis.user.trashcan.restore(sharedFile1Id);
expect(await dataTable.isItemPresent(sharedFile2)).toBe(false, `${sharedFile2} was not removed from list`);
expect(await dataTable.isItemPresent(sharedFile3)).toBe(false, `${sharedFile3} was not removed from list`);
await page.clickTrash();
expect(await dataTable.isItemPresent(sharedFile2)).toBe(true, `${sharedFile2} is not in trash`);
expect(await dataTable.isItemPresent(sharedFile3)).toBe(true, `${sharedFile3} is not in trash`);
});
xit('undo delete of file - [C280324]', async () => {
await dataTable.selectItem(sharedFile2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
it('undo delete of file - [C280324]', async () => {
await dataTable.selectItem(sharedFile4);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
await page.clickTrash();
expect(await dataTable.getRowByName(sharedFile2).isPresent()).toBe(false, 'Item was not restored');
expect(await dataTable.isItemPresent(sharedFile4)).toBe(false, 'Item was not restored');
});
xit('undo delete of multiple files - [C280514]', async () => {
await dataTable.selectMultipleItems([sharedFile3, sharedFile4]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
it('undo delete of multiple files - [C280514]', async () => {
await dataTable.selectMultipleItems([sharedFile5, sharedFile6]);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
await page.clickTrash();
expect(await dataTable.getRowByName(sharedFile3).isPresent()).toBe(false, `${sharedFile3} was not restored`);
expect(await dataTable.getRowByName(sharedFile4).isPresent()).toBe(false, `${sharedFile4} was not restored`);
expect(await dataTable.isItemPresent(sharedFile5)).toBe(false, `${sharedFile5} was not restored`);
expect(await dataTable.isItemPresent(sharedFile6)).toBe(false, `${sharedFile6} was not restored`);
});
});
describe('on Favorites', () => {
const favoriteFile1 = `favFile1-${Utils.random()}.txt`; let favoriteFile1Id;
const favoriteFile2 = `favFile2-${Utils.random()}.txt`; let favoriteFile2Id;
const favoriteFile3 = `favFile3-${Utils.random()}.txt`;
const favoriteFile4 = `favFile4-${Utils.random()}.txt`; let favoriteFile4Id;
const favoriteFolder1 = `favFolder1-${Utils.random()}`; let favoriteFolder1Id;
const favoriteFolder2 = `favFolder2-${Utils.random()}`; let favoriteFolder2Id;
const favoriteFolder3 = `favFolder3-${Utils.random()}`; let favoriteFolder3Id;
const favoriteFileLocked1 = `favFileLocked1-${Utils.random()}.txt`; let favoriteFileLocked1Id;
const favoriteFileLocked2 = `favFileLocked2-${Utils.random()}.txt`; let favoriteFileLocked2Id;
const parent = `parentF-${Utils.random()}`; let parentId;
const favFile1 = `favFile1-${Utils.random()}.txt`; let favFile1Id;
const favFile2 = `favFile2-${Utils.random()}.txt`; let favFile2Id;
const favFile3 = `favFile3-${Utils.random()}.txt`; let favFile3Id;
const favFile4 = `favFile4-${Utils.random()}.txt`; let favFile4Id;
const favFile5 = `favFile5-${Utils.random()}.txt`; let favFile5Id;
const favFile6 = `favFile6-${Utils.random()}.txt`; let favFile6Id;
const favFile7 = `favFile7-${Utils.random()}.txt`; let favFile7Id;
const favFolder1 = `favFolder1-${Utils.random()}`; let favFolder1Id;
const favFolder2 = `favFolder2-${Utils.random()}`; let favFolder2Id;
const favFolder3 = `favFolder3-${Utils.random()}`; let favFolder3Id;
const favFolder4 = `favFolder4-${Utils.random()}`; let favFolder4Id;
const favFolder5 = `favFolder5-${Utils.random()}`; let favFolder5Id;
const favFolder6 = `favFolder6-${Utils.random()}`; let favFolder6Id;
const file1InFolder = `file1InFolder-${Utils.random()}.txt`;
const file2InFolder = `file2InFolder-${Utils.random()}.txt`;
const fileLocked1 = `fileLocked1-${Utils.random()}.txt`; let fileLocked1Id;
const fileLocked2 = `fileLocked2-${Utils.random()}.txt`; let fileLocked2Id;
const fileLocked3 = `fileLocked3-${Utils.random()}.txt`; let fileLocked3Id;
const fileLocked4 = `fileLocked4-${Utils.random()}.txt`; let fileLocked4Id;
beforeAll(async (done) => {
favoriteFile1Id = (await apis.user.nodes.createFile(favoriteFile1)).entry.id;
favoriteFile2Id = (await apis.user.nodes.createFile(favoriteFile2)).entry.id;
favoriteFolder1Id = (await apis.user.nodes.createFolder(favoriteFolder1)).entry.id;
favoriteFolder2Id = (await apis.user.nodes.createFolder(favoriteFolder2)).entry.id;
favoriteFolder3Id = (await apis.user.nodes.createFolder(favoriteFolder3)).entry.id;
await apis.user.nodes.createFile(favoriteFile3, favoriteFolder1Id);
favoriteFile4Id = (await apis.user.nodes.createFile(favoriteFile4, favoriteFolder2Id)).entry.id;
favoriteFileLocked2Id = (await apis.user.nodes.createFile(favoriteFileLocked2, favoriteFolder3Id)).entry.id;
await apis.user.nodes.lockFile(favoriteFile4Id);
await apis.user.nodes.lockFile(favoriteFileLocked2Id);
parentId = (await apis.user.nodes.createFolder(parent)).entry.id;
favoriteFileLocked1Id = (await apis.user.nodes.createFile(favoriteFileLocked1)).entry.id;
await apis.user.nodes.lockFile(favoriteFileLocked1Id);
favFile1Id = (await apis.user.nodes.createFile(favFile1, parentId)).entry.id;
favFile2Id = (await apis.user.nodes.createFile(favFile2, parentId)).entry.id;
favFile3Id = (await apis.user.nodes.createFile(favFile3, parentId)).entry.id;
favFile4Id = (await apis.user.nodes.createFile(favFile4, parentId)).entry.id;
favFile5Id = (await apis.user.nodes.createFile(favFile5, parentId)).entry.id;
favFile6Id = (await apis.user.nodes.createFile(favFile6, parentId)).entry.id;
favFile7Id = (await apis.user.nodes.createFile(favFile7, parentId)).entry.id;
await apis.user.favorites.addFavoritesByIds('file', [ favoriteFile1Id, favoriteFile2Id, favoriteFileLocked1Id ]);
await apis.user.favorites.addFavoritesByIds('folder', [ favoriteFolder1Id, favoriteFolder2Id, favoriteFolder3Id ]);
await apis.user.favorites.waitForApi({ expect: 6 });
favFolder1Id = (await apis.user.nodes.createFolder(favFolder1, parentId)).entry.id;
favFolder2Id = (await apis.user.nodes.createFolder(favFolder2, parentId)).entry.id;
favFolder3Id = (await apis.user.nodes.createFolder(favFolder3, parentId)).entry.id;
favFolder4Id = (await apis.user.nodes.createFolder(favFolder4, parentId)).entry.id;
favFolder5Id = (await apis.user.nodes.createFolder(favFolder5, parentId)).entry.id;
favFolder6Id = (await apis.user.nodes.createFolder(favFolder6, parentId)).entry.id;
await apis.user.nodes.createFile(file1InFolder, favFolder1Id);
fileLocked1Id = (await apis.user.nodes.createFile(fileLocked1, favFolder2Id)).entry.id;
fileLocked2Id = (await apis.user.nodes.createFile(fileLocked2, favFolder3Id)).entry.id;
fileLocked3Id = (await apis.user.nodes.createFile(fileLocked3, favFolder4Id)).entry.id;
fileLocked4Id = (await apis.user.nodes.createFile(fileLocked4, favFolder5Id)).entry.id;
await apis.user.nodes.createFile(file2InFolder, favFolder6Id);
await apis.user.nodes.lockFile(fileLocked1Id);
await apis.user.nodes.lockFile(fileLocked2Id);
await apis.user.nodes.lockFile(fileLocked3Id);
await apis.user.nodes.lockFile(fileLocked4Id);
await apis.user.favorites.addFavoritesByIds('file', [ favFile1Id, favFile2Id, favFile3Id, favFile4Id, favFile5Id, favFile6Id, favFile7Id ]);
await apis.user.favorites.addFavoritesByIds('folder', [ favFolder1Id, favFolder2Id, favFolder3Id, favFolder4Id, favFolder5Id, favFolder6Id ]);
await apis.user.favorites.waitForApi({ expect: 13 });
await loginPage.loginWith(username);
done();
@@ -379,182 +384,145 @@ describe('Delete and undo delete', () => {
done();
});
afterEach(async (done) => {
await page.refresh();
done();
});
afterAll(async (done) => {
await apis.user.nodes.unlockFile(favoriteFile4Id);
await apis.user.nodes.unlockFile(favoriteFileLocked1Id);
await apis.user.nodes.unlockFile(favoriteFileLocked2Id);
await apis.user.nodes.deleteNodesById([
favoriteFile1Id, favoriteFile2Id, favoriteFolder1Id, favoriteFolder2Id, favoriteFileLocked1Id, favoriteFolder3Id
]);
await apis.user.search.waitForApi(username, {expect: 0});
await apis.user.nodes.unlockFile(fileLocked1Id);
await apis.user.nodes.unlockFile(fileLocked2Id);
await apis.user.nodes.unlockFile(fileLocked3Id);
await apis.user.nodes.unlockFile(fileLocked4Id);
await apis.user.nodes.deleteNodeById(parentId);
await apis.user.trashcan.emptyTrash();
done();
});
xit('delete a file and check notification - [C280516]', async () => {
it('delete a file and check notification - [C280516]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectItem(favoriteFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(favFile1);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${favoriteFile1} deleted`);
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(false, 'Item was not removed from list');
expect(message).toContain(`${favFile1} deleted`);
expect(message).toContain(`Undo`);
expect(await dataTable.isItemPresent(favFile1)).toBe(false, 'Item was not removed from list');
items--;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(true, 'Item is not in trash');
await apis.user.trashcan.restore(favoriteFile1Id);
expect(await dataTable.isItemPresent(favFile1)).toBe(true, 'Item is not in trash');
});
xit('delete multiple files and check notification - [C280517]', async () => {
it('delete multiple files and check notification - [C280517]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectMultipleItems([favoriteFile1, favoriteFile2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([favFile2, favFile3]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 2 items`);
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(false, `${favoriteFile1} was not removed from list`);
expect(await dataTable.getRowByName(favoriteFile2).isPresent()).toBe(false, `${favoriteFile2} was not removed from list`);
expect(message).toContain(`Undo`);
expect(await dataTable.isItemPresent(favFile2)).toBe(false, `${favFile2} was not removed from list`);
expect(await dataTable.isItemPresent(favFile3)).toBe(false, `${favFile3} was not removed from list`);
items = items - 2;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(true, `${favoriteFile1} is not in trash`);
expect(await dataTable.getRowByName(favoriteFile2).isPresent()).toBe(true, `${favoriteFile2} is not in trash`);
await apis.user.trashcan.restore(favoriteFile1Id);
await apis.user.trashcan.restore(favoriteFile2Id);
expect(await dataTable.isItemPresent(favFile2)).toBe(true, `${favFile2} is not in trash`);
expect(await dataTable.isItemPresent(favFile3)).toBe(true, `${favFile3} is not in trash`);
});
it('delete a folder with content - [C280518]', async () => {
let items = await page.dataTable.countRows();
await dataTable.selectItem(favoriteFolder1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
expect(await dataTable.getRowByName(favoriteFolder1).isPresent()).toBe(false, 'Item was not removed from list');
await dataTable.selectItem(favFolder1);
await toolbar.clickMoreActionsDelete();
expect(await dataTable.isItemPresent(favFolder1)).toBe(false, 'Item was not removed from list');
items--;
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await page.clickTrash();
expect(await dataTable.getRowByName(favoriteFolder1).isPresent()).toBe(true, 'Item is not in trash');
expect(await dataTable.getRowByName(favoriteFile3).isPresent()).toBe(false, 'Item is in trash');
await apis.user.trashcan.restore(favoriteFolder1Id);
expect(await dataTable.isItemPresent(favFolder1)).toBe(true, 'Item is not in trash');
expect(await dataTable.isItemPresent(file1InFolder)).toBe(false, 'Item is in trash');
});
it('delete a folder containing locked files - [C280519]', async () => {
await dataTable.selectItem(favoriteFolder2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(favFolder2);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${favoriteFolder2} couldn't be deleted`);
expect(await dataTable.getRowByName(favoriteFolder2).isPresent()).toBe(true, 'Item was removed from list');
expect(message).toContain(`${favFolder2} couldn't be deleted`);
expect(await dataTable.isItemPresent(favFolder2)).toBe(true, 'Item was removed from list');
await page.clickTrash();
expect(await dataTable.getRowByName(favoriteFolder2).isPresent()).toBe(false, 'Item is in trash');
expect(await dataTable.getRowByName(favoriteFile4).isPresent()).toBe(false, 'Item is in trash');
expect(await dataTable.isItemPresent(favFolder2)).toBe(false, 'Item is in trash');
expect(await dataTable.isItemPresent(fileLocked1)).toBe(false, 'Item is in trash');
});
it('notification on multiple items deletion - some items fail to delete - [C280520]', async () => {
await dataTable.selectMultipleItems([favoriteFile1, favoriteFolder2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([favFile4, favFolder3]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 1 item, 1 couldn't be deleted`);
await apis.user.trashcan.restore(favoriteFile1Id);
expect(message).toContain(`Undo`);
});
it('notification on multiple items deletion - all items fail to delete - [C280521]', async () => {
await dataTable.selectMultipleItems([favoriteFolder3, favoriteFolder2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([favFolder4, favFolder5]);
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`2 items couldn't be deleted`);
});
it('successful delete notification shows Undo action - [C280522]', async () => {
await dataTable.selectItem(favoriteFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).toContain(`Undo`);
await apis.user.trashcan.restore(favoriteFile1Id);
});
it('unsuccessful delete notification does not show Undo action - [C280523]', async () => {
await dataTable.selectItem(favoriteFolder2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).not.toContain(`Undo`);
});
it('undo delete of file - [C280524]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectItem(favoriteFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(favFile5);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(true, 'Item was not restored');
expect(await dataTable.isItemPresent(favFile5)).toBe(true, 'Item was not restored');
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
});
it('undo delete of folder with content - [C280526]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectItem(favoriteFolder1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectItem(favFolder6);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(favoriteFolder1).isPresent()).toBe(true, 'Item was not restored');
expect(await dataTable.isItemPresent(favFolder6)).toBe(true, 'Item was not restored');
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
await dataTable.doubleClickOnRowByName(favoriteFolder1);
expect(await dataTable.getRowByName(favoriteFile3).isPresent()).toBe(true, 'file from folder not restored');
await dataTable.doubleClickOnRowByName(favFolder6);
expect(await dataTable.isItemPresent(file2InFolder)).toBe(true, 'file from folder not restored');
});
it('undo delete of multiple files - [C280525]', async () => {
const items = await page.dataTable.countRows();
await dataTable.selectMultipleItems([favoriteFile1, favoriteFile2]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await dataTable.selectMultipleItems([favFile6, favFile7]);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
expect(await dataTable.getRowByName(favoriteFile1).isPresent()).toBe(true, `${favoriteFile1} was not removed from list`);
expect(await dataTable.getRowByName(favoriteFile2).isPresent()).toBe(true, `${favoriteFile2} was not removed from list`);
expect(await dataTable.isItemPresent(favFile6)).toBe(true, `${favFile6} was not removed from list`);
expect(await dataTable.isItemPresent(favFile7)).toBe(true, `${favFile7} was not removed from list`);
expect(await page.pagination.range.getText()).toContain(`1-${items} of ${items}`);
});
});
// TODO: try to change search.waitForApi to wait for exact number of items
xdescribe('on Recent Files', () => {
const recentFile1 = `recentFile1-${Utils.random()}.txt`; let recentFile1Id;
const recentFile2 = `recentFile2-${Utils.random()}.txt`; let recentFile2Id;
const recentFile3 = `recentFile3-${Utils.random()}.txt`; let recentFile3Id;
const recentFile4 = `recentFile4-${Utils.random()}.txt`; let recentFile4Id;
describe('on Recent Files', () => {
const parent = `parentRF-${Utils.random()}`; let parentId;
const recentFile1 = `recentFile1-${Utils.random()}.txt`;
const recentFile2 = `recentFile2-${Utils.random()}.txt`;
const recentFile3 = `recentFile3-${Utils.random()}.txt`;
const recentFile4 = `recentFile4-${Utils.random()}.txt`;
const recentFile5 = `recentFile5-${Utils.random()}.txt`;
const recentFile6 = `recentFile6-${Utils.random()}.txt`;
beforeAll(async (done) => {
recentFile1Id = (await apis.user.nodes.createFile(recentFile1)).entry.id;
recentFile2Id = (await apis.user.nodes.createFile(recentFile2)).entry.id;
recentFile3Id = (await apis.user.nodes.createFile(recentFile3)).entry.id;
recentFile4Id = (await apis.user.nodes.createFile(recentFile4)).entry.id;
await apis.user.search.waitForApi(username, { expect: 4 });
parentId = (await apis.user.nodes.createFolder(parent)).entry.id;
await apis.user.nodes.createFile(recentFile1, parentId);
await apis.user.nodes.createFile(recentFile2, parentId);
await apis.user.nodes.createFile(recentFile3, parentId);
await apis.user.nodes.createFile(recentFile4, parentId);
await apis.user.nodes.createFile(recentFile5, parentId);
await apis.user.nodes.createFile(recentFile6, parentId);
await apis.user.search.waitForApi(username, { expect: 6 });
await loginPage.loginWith(username);
await page.clickRecentFiles();
const empty = await dataTable.isEmptyList();
if (empty) {
await browser.sleep(6000);
await browser.refresh();
await page.waitForApp();
}
done();
});
@@ -563,83 +531,59 @@ describe('Delete and undo delete', () => {
done();
});
afterEach(async (done) => {
await page.refresh();
done();
});
afterAll(async (done) => {
await apis.user.nodes.deleteNodesById([recentFile1Id, recentFile2Id, recentFile3Id, recentFile4Id]);
await apis.user.nodes.deleteNodeById(parentId);
await apis.user.trashcan.emptyTrash();
done();
});
xit('delete a file and check notification - [C280528]', async () => {
it('delete a file and check notification - [C280528]', async () => {
await dataTable.selectItem(recentFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`${recentFile1} deleted`);
expect(await dataTable.getRowByName(recentFile1).isPresent()).toBe(false, 'Item was not removed from list');
expect(message).toContain(`Undo`);
expect(await dataTable.isItemPresent(recentFile1)).toBe(false, 'Item was not removed from list');
await page.clickTrash();
expect(await dataTable.getRowByName(recentFile1).isPresent()).toBe(true, 'Item is not in trash');
await apis.user.trashcan.restore(recentFile1Id);
await apis.user.search.waitForApi(username, { expect: 4 });
expect(await dataTable.isItemPresent(recentFile1)).toBe(true, 'Item is not in trash');
});
xit('delete multiple files and check notification - [C280529]', async () => {
it('delete multiple files and check notification - [C280529]', async () => {
await dataTable.selectMultipleItems([recentFile2, recentFile3]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
await toolbar.clickMoreActionsDelete();
const message = await page.getSnackBarMessage();
expect(message).toContain(`Deleted 2 items`);
expect(await dataTable.getRowByName(recentFile2).isPresent()).toBe(false, `${recentFile2} was not removed from list`);
expect(await dataTable.getRowByName(recentFile3).isPresent()).toBe(false, `${recentFile3} was not removed from list`);
await page.clickTrash();
expect(await dataTable.getRowByName(recentFile2).isPresent()).toBe(true, `${recentFile2} is not in trash`);
expect(await dataTable.getRowByName(recentFile3).isPresent()).toBe(true, `${recentFile3} is not in trash`);
await apis.user.trashcan.restore(recentFile2Id);
await apis.user.trashcan.restore(recentFile3Id);
await apis.user.search.waitForApi(username, { expect: 4 });
});
xit('successful delete notification shows Undo action - [C280534]', async () => {
await dataTable.selectItem(recentFile1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
const message = await page.getSnackBarMessage();
expect(message).toContain(`Undo`);
await apis.user.trashcan.restore(recentFile1Id);
await apis.user.search.waitForApi(username, { expect: 4 });
expect(await dataTable.isItemPresent(recentFile2)).toBe(false, `${recentFile2} was not removed from list`);
expect(await dataTable.isItemPresent(recentFile3)).toBe(false, `${recentFile3} was not removed from list`);
await page.clickTrash();
expect(await dataTable.isItemPresent(recentFile2)).toBe(true, `${recentFile2} is not in trash`);
expect(await dataTable.isItemPresent(recentFile3)).toBe(true, `${recentFile3} is not in trash`);
});
// due to the fact that the search api is slow to update,
// we cannot test that the restored file is displayed in the Recent Files list
// without adding a very big browser.sleep followed by a page.refresh
// so for the moment we're testing that the restored file is not displayed in the Trash
xit('undo delete of file - [C280536]', async () => {
await dataTable.selectItem(recentFile2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
it('undo delete of file - [C280536]', async () => {
await dataTable.selectItem(recentFile4);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
await page.clickTrash();
expect(await dataTable.getRowByName(recentFile2).isPresent()).toBe(false, 'Item is in Trash');
expect(await dataTable.isItemPresent(recentFile4)).toBe(false, 'Item is in Trash');
});
// due to the fact that the search api is slow to update,
// we cannot test that the restored file is displayed in the Recent Files list
// without adding a very big browser.sleep followed by a page.refresh
// so for the moment we're testing that the restored file is not displayed in the Trash
xit('undo delete of multiple files - [C280537]', async () => {
await dataTable.selectMultipleItems([recentFile3, recentFile4]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Delete');
it('undo delete of multiple files - [C280537]', async () => {
await dataTable.selectMultipleItems([recentFile5, recentFile6]);
await toolbar.clickMoreActionsDelete();
await page.clickSnackBarAction();
await page.clickTrash();
expect(await dataTable.getRowByName(recentFile3).isPresent()).toBe(false, `${recentFile3} is in Trash`);
expect(await dataTable.getRowByName(recentFile4).isPresent()).toBe(false, `${recentFile4} is in Trash`);
expect(await dataTable.isItemPresent(recentFile5)).toBe(false, `${recentFile5} is in Trash`);
expect(await dataTable.isItemPresent(recentFile6)).toBe(false, `${recentFile6} is in Trash`);
});
});
});
+39 -32
View File
@@ -62,8 +62,7 @@ describe('Edit folder', () => {
const loginPage = new LoginPage();
const page = new BrowsingPage();
const editDialog = new CreateOrEditFolderDialog();
const { dataTable } = page;
const editButton = page.toolbar.getButtonByTitleAttribute('Edit');
const { dataTable, toolbar } = page;
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
@@ -112,12 +111,13 @@ describe('Edit folder', () => {
it('dialog UI defaults - [C216331]', async () => {
await dataTable.doubleClickOnRowByName(parent);
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
expect(await editDialog.getTitle()).toEqual('Edit folder');
expect(await editDialog.nameInput.getAttribute('value')).toBe(folderName);
expect(await editDialog.descriptionTextArea.getAttribute('value')).toBe(folderDescription);
expect(await editDialog.updateButton.isEnabled()).toBe(true, 'upload button is not enabled');
expect(await editDialog.cancelButton.isEnabled()).toBe(true, 'cancel button is not enabled');
expect(await editDialog.getName()).toBe(folderName);
expect(await editDialog.getDescription()).toBe(folderDescription);
expect(await editDialog.isUpdateButtonEnabled()).toBe(true, 'upload button is not enabled');
expect(await editDialog.isCancelButtonEnabled()).toBe(true, 'cancel button is not enabled');
});
describe('on Personal Files', () => {
@@ -130,14 +130,15 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C216335]', async (done) => {
await dataTable.selectItem(folderNameToEdit);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited);
await editDialog.clickUpdate();
await editDialog.waitForDialogToClose();
await dataTable.waitForHeader();
expect(await dataTable.getRowByName(folderNameEdited).isPresent()).toBe(true, 'Folder not displayed');
expect(await dataTable.isItemPresent(folderNameEdited)).toBe(true, 'Folder not displayed');
const desc = await apis.user.nodes.getNodeDescription(folderNameEdited, parentId);
expect(desc).toEqual(folderDescriptionEdited);
done();
@@ -145,9 +146,10 @@ describe('Edit folder', () => {
it('with empty folder name - [C216332]', async () => {
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
await editDialog.deleteNameWithBackspace();
expect(await editDialog.updateButton.isEnabled()).toBe(false, 'upload button is not enabled');
expect(await editDialog.isUpdateButtonEnabled()).toBe(false, 'upload button is not enabled');
expect(await editDialog.getValidationMessage()).toMatch('Folder name is required');
});
@@ -155,51 +157,54 @@ describe('Edit folder', () => {
const namesWithSpecialChars = [ 'a*a', 'a"a', 'a<a', 'a>a', `a\\a`, 'a/a', 'a?a', 'a:a', 'a|a' ];
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
for (const name of namesWithSpecialChars) {
await editDialog.enterName(name);
expect(await editDialog.updateButton.isEnabled()).toBe(false, 'upload button is not disabled');
expect(await editDialog.isUpdateButtonEnabled()).toBe(false, 'upload button is not disabled');
expect(await editDialog.getValidationMessage()).toContain(`Folder name can't contain these characters`);
}
});
it('with name ending with a dot - [C216334]', async () => {
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.nameInput.sendKeys('.');
expect(await editDialog.updateButton.isEnabled()).toBe(false, 'upload button is not enabled');
expect(await editDialog.isUpdateButtonEnabled()).toBe(false, 'upload button is not enabled');
expect(await editDialog.getValidationMessage()).toMatch(`Folder name can't end with a period .`);
});
it('Cancel button - [C216336]', async () => {
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.clickCancel();
expect(await editDialog.isDialogOpen()).not.toBe(true, 'dialog is not closed');
});
it('with duplicate folder name - [C216337]', async () => {
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterName(duplicateFolderName);
await editDialog.clickUpdate();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await page.getSnackBarMessage()).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await editDialog.isDialogOpen()).toBe(true, 'dialog is not present');
});
it('trim ending spaces - [C216338]', async () => {
await dataTable.selectItem(folderName);
await editButton.click();
await toolbar.clickEdit();
await editDialog.nameInput.sendKeys(' ');
await editDialog.clickUpdate();
await editDialog.waitForDialogToClose();
expect(await page.snackBar.isPresent()).not.toBe(true, 'notification appears');
expect(await dataTable.getRowByName(folderName).isPresent()).toBe(true, 'Folder not displayed in list view');
expect(await page.isSnackBarPresent()).not.toBe(true, 'notification appears');
expect(await dataTable.isItemPresent(folderName)).toBe(true, 'Folder not displayed in list view');
});
});
@@ -211,14 +216,15 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C280384]', async (done) => {
await dataTable.selectItem(folderFavoriteToEdit);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited);
await editDialog.clickUpdate();
await editDialog.waitForDialogToClose();
await dataTable.waitForHeader();
expect(await dataTable.getRowByName(folderNameEdited).isPresent()).toBe(true, 'Folder not displayed');
expect(await dataTable.isItemPresent(folderNameEdited)).toBe(true, 'Folder not displayed');
const desc = await apis.user.nodes.getNodeProperty(folderFavoriteToEditId, 'cm:description');
expect(desc).toEqual(folderDescriptionEdited);
done();
@@ -226,12 +232,12 @@ describe('Edit folder', () => {
it('with duplicate folder name - [C280386]', async () => {
await dataTable.selectItem(folderFavorite);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterName(folderFavoriteDuplicate);
await editDialog.clickUpdate();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await page.getSnackBarMessage()).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await editDialog.isDialogOpen()).toBe(true, 'dialog is not present');
});
});
@@ -245,14 +251,15 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C280509]', async (done) => {
await dataTable.selectItem(folderSiteToEdit);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited);
await editDialog.clickUpdate();
await editDialog.waitForDialogToClose();
await dataTable.waitForHeader();
expect(await dataTable.getRowByName(folderNameEdited).isPresent()).toBe(true, 'Folder not displayed');
expect(await dataTable.isItemPresent(folderNameEdited)).toBe(true, 'Folder not displayed');
const desc = await apis.user.nodes.getNodeProperty(folderSiteToEditId, 'cm:description');
expect(desc).toEqual(folderDescriptionEdited);
done();
@@ -260,12 +267,12 @@ describe('Edit folder', () => {
it('with duplicate folder name - [C280511]', async () => {
await dataTable.selectItem(folderSite);
await editButton.click();
await toolbar.clickEdit();
await editDialog.waitForDialogToOpen();
await editDialog.enterName(duplicateFolderSite);
await editDialog.clickUpdate();
const message = await page.getSnackBarMessage();
expect(message).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await page.getSnackBarMessage()).toEqual(`There's already a folder with this name. Try a different name.`);
expect(await editDialog.isDialogOpen()).toBe(true, 'dialog is not present');
});
});
+25 -29
View File
@@ -98,17 +98,17 @@ describe('Library actions', () => {
it('Join a public library - Favorite Libraries - [C290105]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(sitePublic1Admin);
await toolbar.clickButton('Join');
const role = await dataTable.getLibraryRole(sitePublic1Admin);
expect(role).toEqual('Consumer');
await toolbar.clickJoin();
expect(await dataTable.getLibraryRole(sitePublic1Admin)).toEqual('Consumer');
});
it('Join a moderated library - Favorite Libraries - [C290109]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(siteModerated1Admin);
await toolbar.clickButton('Join');
const role = await dataTable.getLibraryRole(siteModerated1Admin);
expect(role).toEqual('');
await toolbar.clickJoin();
expect(await dataTable.getLibraryRole(siteModerated1Admin)).toEqual('');
const hasJoinRequest = await apis.user.sites.hasMembershipRequest(siteModerated1Admin);
expect(hasJoinRequest).toBe(true, `Join request does not exist on ${siteModerated1Admin}`);
});
@@ -116,60 +116,57 @@ describe('Library actions', () => {
it('Leave a library - My Libraries - [C290106]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(sitePublic2Admin);
await toolbar.clickButton('Leave library');
await toolbar.clickLeave();
await page.waitForDialog();
await confirmDialog.clickButton('OK');
const text = await page.getSnackBarMessage();
await confirmDialog.clickOk();
expect(text).toEqual(`You have left the library`);
expect(await dataTable.getRowByName(sitePublic2Admin).isPresent()).toBe(false, `${sitePublic2Admin} is displayed`);
expect(await page.getSnackBarMessage()).toEqual(`You have left the library`);
expect(await dataTable.isItemPresent(sitePublic2Admin)).toBe(false, `${sitePublic2Admin} is displayed`);
});
it('Leave a library - Favorite Libraries - [C290110]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(sitePublic3Admin);
await toolbar.clickButton('Leave library');
await toolbar.clickLeave();
await page.waitForDialog();
await confirmDialog.clickButton('OK');
const text = await page.getSnackBarMessage();
await confirmDialog.clickOk();
expect(text).toEqual(`You have left the library`);
expect(await dataTable.getRowByName(sitePublic3Admin).isPresent()).toBe(true, `${sitePublic3Admin} is not displayed`);
expect(await page.getSnackBarMessage()).toEqual(`You have left the library`);
expect(await dataTable.isItemPresent(sitePublic3Admin)).toBe(true, `${sitePublic3Admin} is not displayed`);
});
it('Confirmation dialog UI - [C290136]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(sitePublic4Admin);
await toolbar.clickButton('Leave library');
await toolbar.clickLeave();
await page.waitForDialog();
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Confirm delete dialog not open');
expect(await confirmDialog.getTitle()).toContain('Leave this library?');
expect(await confirmDialog.getText()).toContain('Leaving will remove your access.');
expect(await confirmDialog.isButtonEnabled('OK')).toBe(true, 'OK button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'Cancel button is not enabled');
expect(await confirmDialog.isOkEnabled()).toBe(true, 'OK button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'Cancel button is not enabled');
});
it('Cancel Leave library - [C290111]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(sitePublic4Admin);
await toolbar.clickButton('Leave library');
await toolbar.clickLeave();
await page.waitForDialog();
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'Cancel button is not enabled');
await confirmDialog.clickButton('Cancel');
expect(await dataTable.getRowByName(sitePublic4Admin).isPresent()).toBe(true, `${sitePublic4Admin} was deleted`);
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'Cancel button is not enabled');
await confirmDialog.clickCancel();
expect(await dataTable.isItemPresent(sitePublic4Admin)).toBe(true, `${sitePublic4Admin} was deleted`);
});
it('Leave a library - failure notification - [C290107]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(sitePublicUser);
await toolbar.clickButton('Leave library');
await toolbar.clickLeave();
await page.waitForDialog();
await confirmDialog.clickButton('OK');
const text = await page.getSnackBarMessage();
await confirmDialog.clickOk();
expect(text).toEqual(`Cannot leave this library`);
expect(await page.getSnackBarMessage()).toEqual(`Cannot leave this library`);
});
it('Cancel join - Favorite Libraries - [C290108]', async () => {
@@ -177,8 +174,7 @@ describe('Library actions', () => {
await dataTable.selectItem(siteModerated2Admin);
await toolbar.clickButton('Cancel join request');
const text = await page.getSnackBarMessage();
expect(text).toEqual(`Canceled the request to join the library`);
expect(await page.getSnackBarMessage()).toEqual(`Canceled the request to join the library`);
const hasJoinRequest = await apis.user.sites.hasMembershipRequest(siteModerated2Admin);
expect(hasJoinRequest).toBe(false, `Join request exists on ${siteModerated2Admin}`);
+419 -488
View File
@@ -29,525 +29,456 @@ import { RepoClient } from '../../utilities/repo-client/repo-client';
import { Utils } from '../../utilities/utils';
describe('Mark items as favorites', () => {
const username = `user-${Utils.random()}`;
const username = `user-${Utils.random()}`;
const file1NotFav = `file1-${Utils.random()}.txt`;
const file2NotFav = `file2-${Utils.random()}.txt`;
const file3Fav = `file3-${Utils.random()}.txt`;
const file4Fav = `file4-${Utils.random()}.txt`;
const folder1 = `folder-${Utils.random()}`;
const parent = `parent-${Utils.random()}`;
const fileNotFavUI = `fileNotFavUI-${Utils.random()}.txt`;
const fileFavUI = `fileFavUI-${Utils.random()}.txt`;
const fileNotFav1 = `fileNotFav1-${Utils.random()}.txt`;
const fileNotFav2 = `fileNotFav2-${Utils.random()}.txt`;
const fileNotFav3 = `fileNotFav3-${Utils.random()}.txt`;
const fileNotFav4 = `fileNotFav4-${Utils.random()}.txt`;
const fileFav1 = `fileFav1-${Utils.random()}.txt`;
const fileFav2 = `fileFav2-${Utils.random()}.txt`;
const fileFav3 = `fileFav3-${Utils.random()}.txt`;
const fileFav4 = `fileFav4-${Utils.random()}.txt`;
const folder = `folder-${Utils.random()}`;
let fileNotFavUIId, fileFavUIId, fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id, fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id, folderId, parentId;
const apis = {
admin: new RepoClient(),
user: new RepoClient(username, username)
};
const loginPage = new LoginPage();
const page = new BrowsingPage();
const { dataTable, toolbar } = page;
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
parentId = (await apis.user.nodes.createFolder(parent)).entry.id;
fileNotFavUIId = (await apis.user.nodes.createFile(fileNotFavUI, parentId)).entry.id;
fileFavUIId = (await apis.user.nodes.createFile(fileFavUI, parentId)).entry.id;
fileNotFav1Id = (await apis.user.nodes.createFile(fileNotFav1, parentId)).entry.id;
fileNotFav2Id = (await apis.user.nodes.createFile(fileNotFav2, parentId)).entry.id;
fileNotFav3Id = (await apis.user.nodes.createFile(fileNotFav3, parentId)).entry.id;
fileNotFav4Id = (await apis.user.nodes.createFile(fileNotFav4, parentId)).entry.id;
fileFav1Id = (await apis.user.nodes.createFile(fileFav1, parentId)).entry.id;
fileFav2Id = (await apis.user.nodes.createFile(fileFav2, parentId)).entry.id;
fileFav3Id = (await apis.user.nodes.createFile(fileFav3, parentId)).entry.id;
fileFav4Id = (await apis.user.nodes.createFile(fileFav4, parentId)).entry.id;
folderId = (await apis.user.nodes.createFolder(folder, parentId)).entry.id;
await apis.user.favorites.addFavoritesByIds('file', [ fileFavUIId, fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.favorites.waitForApi({ expect: 5 });
await apis.user.shared.shareFilesByIds([ fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.shared.shareFilesByIds([ fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id ]);
await apis.user.shared.waitForApi({ expect: 8 });
await loginPage.loginWith(username);
done();
});
afterAll(async (done) => {
await apis.user.nodes.deleteNodeById(parentId);
done();
});
xit('');
describe('on Personal Files', () => {
afterAll(async (done) => {
await apis.user.favorites.addFavoritesByIds('file', [ fileFavUIId, fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.favorites.addFavoriteById('folder', folderId);
await apis.user.favorites.removeFavoritesByIds([ fileNotFavUIId , fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id ]);
await apis.user.favorites.waitForApi({ expect: 6 });
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickPersonalFilesAndWait();
await dataTable.doubleClickOnRowByName(parent);
done();
});
it('Favorite action has empty star icon for an item not marked as favorite - [C217186]', async () => {
await dataTable.selectItem(fileNotFavUI);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star_border');
});
it('Favorite action has empty star icon for multiple selection of items when some are not favorite - [C217187]', async () => {
await dataTable.selectMultipleItems([ fileNotFavUI, fileFavUI ]);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star_border');
});
it('Favorite action has full star icon for items marked as favorite - [C217188]', async () => {
await dataTable.selectItem(fileFavUI);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star');
});
it('favorite a file - [C217189]', async () => {
await dataTable.selectItem(fileNotFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav1Id, { expect: true })).toBe(true, `${fileNotFav1} not marked as favorite`);
});
it('favorite a folder - [C280390]', async () => {
await dataTable.selectItem(folder);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(folderId, { expect: true })).toBe(true, `${folder} not marked as favorite`);
});
it('unfavorite an item - [C217190]', async () => {
await dataTable.selectItem(fileFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav1Id, { expect: false })).toBe(false, `${fileFav1} is marked as favorite`);
});
it('favorite multiple items - all unfavorite - [C217192]', async () => {
await dataTable.selectMultipleItems([ fileNotFav2, fileNotFav3 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav2Id, { expect: true })).toBe(true, `${fileNotFav2} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav3Id, { expect: true })).toBe(true, `${fileNotFav3} not marked as favorite`);
});
it('favorite multiple items - some favorite and some unfavorite - [C217194]', async () => {
await dataTable.selectMultipleItems([ fileNotFav4, fileFav2 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav4Id, { expect: true })).toBe(true, `${fileNotFav4} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav2Id, { expect: true })).toBe(true, `${fileFav2} not marked as favorite`);
});
it('unfavorite multiple items - [C217193]', async () => {
await dataTable.selectMultipleItems([ fileFav3, fileFav4 ])
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav3Id, { expect: false })).toBe(false, `${fileFav3} marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav4Id, { expect: false })).toBe(false, `${fileFav4} marked as favorite`);
});
});
describe('on Recent Files', () => {
afterAll(async (done) => {
await apis.user.favorites.addFavoritesByIds('file', [ fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.favorites.removeFavoritesByIds([ fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id ]);
await apis.user.favorites.waitForApi({ expect: 6 });
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickRecentFilesAndWait();
done();
});
it('favorite a file - [C280352]', async () => {
await dataTable.selectItem(fileNotFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav1Id, { expect: true })).toBe(true, `${fileNotFav1} not marked as favorite`);
});
it('unfavorite an item - [C280353]', async () => {
await dataTable.selectItem(fileFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav1Id, { expect: false })).toBe(false, `${fileFav1} is marked as favorite`);
});
it('favorite multiple items - all unfavorite - [C280355]', async () => {
await dataTable.selectMultipleItems([ fileNotFav2, fileNotFav3 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav2Id, { expect: true })).toBe(true, `${fileNotFav2} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav3Id, { expect: true })).toBe(true, `${fileNotFav3} not marked as favorite`);
});
it('favorite multiple items - some favorite and some unfavorite - [C280357]', async () => {
await dataTable.selectMultipleItems([ fileNotFav4, fileFav2 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav4Id, { expect: true })).toBe(true, `${fileNotFav4} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav2Id, { expect: true })).toBe(true, `${fileFav2} not marked as favorite`);
});
it('unfavorite multiple items - [C280356]', async () => {
await dataTable.selectMultipleItems([ fileFav3, fileFav4 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav3Id, { expect: false })).toBe(false, `${fileFav3} marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav4Id, { expect: false })).toBe(false, `${fileFav4} marked as favorite`);
});
});
describe('on Shared Files', () => {
afterAll(async (done) => {
await apis.user.favorites.addFavoritesByIds('file', [ fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.favorites.removeFavoritesByIds([ fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id ]);
await apis.user.favorites.waitForApi({ expect: 6 });
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickSharedFilesAndWait();
done();
});
it('favorite a file - [C280362]', async () => {
await dataTable.selectItem(fileNotFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav1Id, { expect: true })).toBe(true, `${fileNotFav1} not marked as favorite`);
});
it('unfavorite an item - [C280363]', async () => {
await dataTable.selectItem(fileFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav1Id, { expect: false })).toBe(false, `${fileFav1} is marked as favorite`);
});
it('favorite multiple items - all unfavorite - [C280365]', async () => {
await dataTable.selectMultipleItems([ fileNotFav2, fileNotFav3 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav2Id, { expect: true })).toBe(true, `${fileNotFav2} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav3Id, { expect: true })).toBe(true, `${fileNotFav3} not marked as favorite`);
});
it('favorite multiple items - some favorite and some unfavorite - [C280367]', async () => {
await dataTable.selectMultipleItems([ fileNotFav4, fileFav2 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileNotFav4Id, { expect: true })).toBe(true, `${fileNotFav4} not marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav2Id, { expect: true })).toBe(true, `${fileFav2} not marked as favorite`);
});
it('unfavorite multiple items - [C280366]', async () => {
await dataTable.selectMultipleItems([ fileFav3, fileFav4 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav3Id, { expect: false })).toBe(false, `${fileFav3} marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav4Id, { expect: false })).toBe(false, `${fileFav4} marked as favorite`);
});
});
describe('on Favorites', () => {
afterAll(async (done) => {
await apis.user.favorites.addFavoritesByIds('file', [ fileFav1Id, fileFav2Id, fileFav3Id, fileFav4Id ]);
await apis.user.favorites.removeFavoritesByIds([ fileNotFav1Id, fileNotFav2Id, fileNotFav3Id, fileNotFav4Id ]);
await apis.user.favorites.waitForApi({ expect: 6 });
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
await page.refresh();
await page.clickFavoritesAndWait();
done();
});
it('unfavorite an item - [C280368]', async () => {
await dataTable.selectItem(fileFav1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav1Id, { expect: false })).toBe(false, `${fileFav1} is marked as favorite`);
expect(await dataTable.isItemPresent(fileFav1)).toBe(false, 'item still displayed');
});
it('unfavorite multiple items - [C280374]', async () => {
await dataTable.selectMultipleItems([ fileFav3, fileFav4 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav3Id, { expect: false })).toBe(false, `${fileFav3} marked as favorite`);
expect(await apis.user.favorites.isFavoriteWithRetry(fileFav4Id, { expect: false })).toBe(false, `${fileFav4} marked as favorite`);
expect(await dataTable.isItemPresent(fileFav3)).toBe(false, 'file3 still displayed');
expect(await dataTable.isItemPresent(fileFav4)).toBe(false, 'file4 still displayed');
});
it('Favorite action has full star icon for items marked as favorite - [C280371]', async () => {
await dataTable.selectItem(fileFav2);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star');
});
});
describe ('on File Libraries', () => {
const siteName = `site-public-${Utils.random()}`;
const fileSiteNotFav1 = `file1-site-${Utils.random()}.txt`;
const fileSiteNotFav2 = `file2-site-${Utils.random()}.txt`;
const folderSite = `folder-site-${Utils.random()}`;
const fileSiteFav1 = `file3-${Utils.random()}.txt`;
const fileSiteFav2 = `file4-${Utils.random()}.txt`;
let file1Id, file2Id, file3Id, file4Id, folder1Id, fileSiteNotFav1Id, fileSiteNotFav2Id, folderSiteId, fileSiteFav1Id, fileSiteFav2Id;
const folderSite = `folderSite-${Utils.random()}`;
const apis = {
admin: new RepoClient(),
user: new RepoClient(username, username)
};
const fileSiteNotFav1 = `fileSiteNotFav1-${Utils.random()}.txt`;
const fileSiteNotFav2 = `fileSiteNotFav2-${Utils.random()}.txt`;
const fileSiteNotFav3 = `fileSiteNotFav3-${Utils.random()}.txt`;
const fileSiteNotFav4 = `fileSiteNotFav4-${Utils.random()}.txt`;
const fileSiteFav1 = `fileSiteFav1-${Utils.random()}.txt`;
const fileSiteFav2 = `fileSiteFav2-${Utils.random()}.txt`;
const fileSiteFav3 = `fileSiteFav3-${Utils.random()}.txt`;
const fileSiteFav4 = `fileSiteFav4-${Utils.random()}.txt`;
const loginPage = new LoginPage();
const page = new BrowsingPage();
const { dataTable, toolbar } = page;
let folderSiteId, fileSiteNotFav1Id, fileSiteNotFav2Id, fileSiteNotFav3Id, fileSiteNotFav4Id;
let fileSiteFav1Id, fileSiteFav2Id, fileSiteFav3Id, fileSiteFav4Id;
beforeAll(async (done) => {
await apis.admin.people.createUser({ username });
file1Id = (await apis.user.nodes.createFile(file1NotFav)).entry.id;
file2Id = (await apis.user.nodes.createFile(file2NotFav)).entry.id;
file3Id = (await apis.user.nodes.createFile(file3Fav)).entry.id;
file4Id = (await apis.user.nodes.createFile(file4Fav)).entry.id;
folder1Id = (await apis.user.nodes.createFolder(folder1)).entry.id;
await apis.user.sites.createSite(siteName, SITE_VISIBILITY.PUBLIC);
const docLibId = await apis.user.sites.getDocLibId(siteName);
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.addFavoriteById('file', file4Id);
folderSiteId = (await apis.user.nodes.createFolder(folderSite, docLibId)).entry.id;
fileSiteNotFav1Id = (await apis.user.nodes.createFile(fileSiteNotFav1, folderSiteId)).entry.id;
fileSiteNotFav2Id = (await apis.user.nodes.createFile(fileSiteNotFav2, folderSiteId)).entry.id;
fileSiteNotFav3Id = (await apis.user.nodes.createFile(fileSiteNotFav3, folderSiteId)).entry.id;
fileSiteNotFav4Id = (await apis.user.nodes.createFile(fileSiteNotFav4, folderSiteId)).entry.id;
fileSiteFav1Id = (await apis.user.nodes.createFile(fileSiteFav1, folderSiteId)).entry.id;
fileSiteFav2Id = (await apis.user.nodes.createFile(fileSiteFav2, folderSiteId)).entry.id;
fileSiteFav3Id = (await apis.user.nodes.createFile(fileSiteFav3, folderSiteId)).entry.id;
fileSiteFav4Id = (await apis.user.nodes.createFile(fileSiteFav4, folderSiteId)).entry.id;
await apis.user.shared.shareFilesByIds([ file1Id, file2Id, file3Id, file4Id ]);
await apis.user.favorites.addFavoritesByIds('file', [ fileSiteFav1Id, fileSiteFav2Id, fileSiteFav3Id, fileSiteFav4Id ]);
await apis.user.sites.createSite(siteName, SITE_VISIBILITY.PUBLIC);
const docLibId = await apis.user.sites.getDocLibId(siteName);
folderSiteId = (await apis.user.nodes.createFolder(folderSite, docLibId)).entry.id;
fileSiteNotFav1Id = (await apis.user.nodes.createFile(fileSiteNotFav1, folderSiteId)).entry.id;
fileSiteFav1Id = (await apis.user.nodes.createFile(fileSiteFav1, folderSiteId)).entry.id;
fileSiteNotFav2Id = (await apis.user.nodes.createFile(fileSiteNotFav2, folderSiteId)).entry.id;
fileSiteFav2Id = (await apis.user.nodes.createFile(fileSiteFav2, folderSiteId)).entry.id;
await apis.user.favorites.addFavoriteById('file', fileSiteFav1Id);
await apis.user.favorites.addFavoriteById('file', fileSiteFav2Id);
await apis.user.favorites.isFavoriteWithRetry(fileSiteFav1Id, { expect: true });
await apis.user.favorites.isFavoriteWithRetry(fileSiteFav2Id, { expect: true });
await apis.user.favorites.isFavoriteWithRetry(fileSiteFav3Id, { expect: true });
await apis.user.favorites.isFavoriteWithRetry(fileSiteFav4Id, { expect: true });
await apis.user.favorites.waitForApi({ expect: 5 });
await apis.user.search.waitForApi(username, { expect: 8 });
await apis.user.shared.waitForApi({ expect: 4 });
await loginPage.loginWith(username);
done();
done();
});
afterAll(async (done) => {
await Promise.all([
apis.user.nodes.deleteNodesById([ file1Id, file2Id, file3Id, file4Id, folder1Id]),
apis.user.sites.deleteSite(siteName)
]);
done();
await apis.user.sites.deleteSite(siteName);
done();
});
xit('');
describe('on Personal Files', () => {
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickPersonalFilesAndWait();
done();
});
it('Favorite action has empty star icon for an item not marked as favorite - [C217186]', async () => {
await dataTable.selectItem(file1NotFav);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star_border');
});
it('Favorite action has empty star icon for multiple selection of items when some are not favorite - [C217187]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file3Fav ]);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star_border');
});
it('Favorite action has full star icon for items marked as favorite - [C217188]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star');
});
it('favorite a file - [C217189]', async () => {
await dataTable.selectItem(file1NotFav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(file1Id);
expect(isFavorite).toBe(true, `${file1NotFav} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite a folder - [C280390]', async () => {
await dataTable.selectItem(folder1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(folder1Id);
expect(isFavorite).toBe(true, `${folder1} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(folder1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite an item - [C217190]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 4 });
const isFavorite = await apis.user.favorites.isFavorite(file3Id);
expect(isFavorite).toBe(false, `${file3Fav} is marked as favorite`);
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - all unfavorite - [C217192]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file2NotFav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 7 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file2Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.removeFavoriteById(file2Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - some favorite and some unfavorite - [C217194]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file3Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file3Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite multiple items - [C217193]', async () => {
await dataTable.selectMultipleItems([ file3Fav, file4Fav ])
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 3 });
const isFile1Fav = await apis.user.favorites.isFavorite(file3Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file4Id);
expect(isFile1Fav).toBe(false, 'item marked as favorite');
expect(isFile2Fav).toBe(false, 'item marked as favorite');
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.addFavoriteById('file', file4Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickFileLibrariesAndWait();
await page.dataTable.doubleClickOnRowByName(siteName);
await page.dataTable.waitForHeader();
done();
});
describe('on Recent Files', () => {
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickRecentFilesAndWait();
done();
});
it('Favorite a folder - [C280391]', async () => {
await dataTable.selectItem(folderSite);
await toolbar.clickMoreActionsFavorite();
it('favorite a file - [C280352]', async () => {
await dataTable.selectItem(file1NotFav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(file1Id);
expect(isFavorite).toBe(true, `${file1NotFav} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite an item - [C280353]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 4 });
const isFavorite = await apis.user.favorites.isFavorite(file3Id);
expect(isFavorite).toBe(false, `${file3Fav} is marked as favorite`);
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - all unfavorite - [C280355]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file2NotFav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 7 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file2Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.removeFavoriteById(file2Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - some favorite and some unfavorite - [C280357]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file3Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file3Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite multiple items - [C280356]', async () => {
await dataTable.selectMultipleItems([ file3Fav, file4Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 3 });
const isFile1Fav = await apis.user.favorites.isFavorite(file3Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file4Id);
expect(isFile1Fav).toBe(false, 'item marked as favorite');
expect(isFile2Fav).toBe(false, 'item marked as favorite');
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.addFavoriteById('file', file4Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
expect(await apis.user.favorites.isFavoriteWithRetry(folderSiteId, { expect: true })).toBe(true, `${folderSite} not marked as favorite`);
});
describe('on Shared Files', () => {
beforeAll(async (done) => {
await page.refresh();
done();
});
it('Favorite a file - [C280342]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectItem(fileSiteNotFav1);
await toolbar.clickMoreActionsFavorite();
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickSharedFilesAndWait();
done();
});
it('favorite a file - [C280362]', async () => {
await dataTable.selectItem(file1NotFav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(file1Id);
expect(isFavorite).toBe(true, `${file1NotFav} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite an item - [C280363]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 4 });
const isFavorite = await apis.user.favorites.isFavorite(file3Id);
expect(isFavorite).toBe(false, `${file3Fav} is marked as favorite`);
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - all unfavorite - [C280365]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file2NotFav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 7 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file2Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.removeFavoriteById(file2Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('favorite multiple items - some favorite and some unfavorite - [C280367]', async () => {
await dataTable.selectMultipleItems([ file1NotFav, file3Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFile1Fav = await apis.user.favorites.isFavorite(file1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file3Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(file1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite multiple items - [C280366]', async () => {
await dataTable.selectMultipleItems([ file3Fav, file4Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 3 });
const isFile1Fav = await apis.user.favorites.isFavorite(file3Id);
const isFile2Fav = await apis.user.favorites.isFavorite(file4Id);
expect(isFile1Fav).toBe(false, 'item marked as favorite');
expect(isFile2Fav).toBe(false, 'item marked as favorite');
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.addFavoriteById('file', file4Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteNotFav1Id, { expect: true })).toBe(true, `${fileSiteNotFav1} not marked as favorite`);
});
describe('on Favorites', () => {
beforeEach(async (done) => {
await Utils.pressEscape();
await page.refresh();
await page.clickFavoritesAndWait();
done();
});
it('Unfavorite an item - [C280343]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectItem(fileSiteFav1);
await toolbar.clickMoreActionsFavorite();
it('unfavorite an item - [C280368]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 4 });
const isFavorite = await apis.user.favorites.isFavorite(file3Id);
expect(isFavorite).toBe(false, 'item is marked as favorite');
expect(await dataTable.getRowByName(file3Fav).isPresent()).toBe(false, 'item still displayed');
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('unfavorite multiple items - [C280374]', async () => {
await dataTable.selectMultipleItems([ file3Fav, file4Fav ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 3 });
const isFavorite3 = await apis.user.favorites.isFavorite(file3Id);
const isFavorite4 = await apis.user.favorites.isFavorite(file4Id);
expect(isFavorite3).toBe(false, 'file3 marked as favorite');
expect(isFavorite4).toBe(false, 'file4 marked as favorite');
expect(await dataTable.getRowByName(file3Fav).isPresent()).toBe(false, 'file3 still displayed');
expect(await dataTable.getRowByName(file4Fav).isPresent()).toBe(false, 'file4 still displayed');
await apis.user.favorites.addFavoriteById('file', file3Id);
await apis.user.favorites.addFavoriteById('file', file4Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Favorite action has full star icon for items marked as favorite - [C280371]', async () => {
await dataTable.selectItem(file3Fav);
await toolbar.openMoreMenu();
expect(await toolbar.menu.getItemIconText('Favorite')).toEqual('star');
});
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteFav1Id, { expect: false })).toBe(false, `${fileSiteFav1} is marked as favorite`);
});
describe ('on File Libraries', () => {
beforeEach(async (done) => {
await Utils.pressEscape();
await page.clickFileLibrariesAndWait();
await page.dataTable.doubleClickOnRowByName(siteName);
await page.dataTable.waitForHeader();
done();
});
it('Favorite multiple items - all unfavorite - [C280345]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteNotFav2, fileSiteNotFav3 ]);
await toolbar.clickMoreActionsFavorite();
it('Favorite a folder - [C280391]', async () => {
await dataTable.selectItem(folderSite);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(folderSiteId);
expect(isFavorite).toBe(true, `${folderSite} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(folderSiteId);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Favorite a file - [C280342]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectItem(fileSiteNotFav1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFavorite = await apis.user.favorites.isFavorite(fileSiteNotFav1Id);
expect(isFavorite).toBe(true, `${fileSiteNotFav1} not marked as favorite`);
await apis.user.favorites.removeFavoriteById(fileSiteNotFav1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Unfavorite an item - [C280343]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectItem(fileSiteFav1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 4 });
const isFavorite = await apis.user.favorites.isFavorite(fileSiteFav1Id);
expect(isFavorite).toBe(false, `${fileSiteFav1} is marked as favorite`);
await apis.user.favorites.addFavoriteById('file', fileSiteFav1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Favorite multiple items - all unfavorite - [C280345]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteNotFav1, fileSiteNotFav2 ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 7 });
const isFile1Fav = await apis.user.favorites.isFavorite(fileSiteNotFav1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(fileSiteNotFav2Id);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(fileSiteNotFav1Id);
await apis.user.favorites.removeFavoriteById(fileSiteNotFav2Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Unfavorite multiple items - [C280346]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteFav1, fileSiteFav2 ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 3 });
const isFile1Fav = await apis.user.favorites.isFavorite(fileSiteFav1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(fileSiteFav2Id);
expect(isFile1Fav).toBe(false, 'item marked as favorite');
expect(isFile2Fav).toBe(false, 'item marked as favorite');
await apis.user.favorites.addFavoriteById('file', fileSiteFav1Id);
await apis.user.favorites.addFavoriteById('file', fileSiteFav2Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
it('Favorite multiple items - some favorite and some unfavorite - [C280347]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteNotFav1, fileSiteFav1 ]);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
await apis.user.favorites.waitForApi({ expect: 6 });
const isFile1Fav = await apis.user.favorites.isFavorite(fileSiteNotFav1Id);
const isFile2Fav = await apis.user.favorites.isFavorite(fileSiteFav1);
expect(isFile1Fav).toBe(true, 'item not marked as favorite');
expect(isFile2Fav).toBe(true, 'item not marked as favorite');
await apis.user.favorites.removeFavoriteById(fileSiteNotFav1Id);
await apis.user.favorites.waitForApi({ expect: 5 });
});
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteNotFav2Id, { expect: true })).toBe(true, 'item not marked as favorite');
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteNotFav3Id, { expect: true })).toBe(true, 'item not marked as favorite');
});
describe('on a library', () => {
const adminSite1 = `adminSite1-${Utils.random()}`;
const adminSite2 = `adminSite2-${Utils.random()}`;
const adminSite3 = `adminSite3-${Utils.random()}`;
it('Unfavorite multiple items - [C280346]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteFav2, fileSiteFav3 ]);
await toolbar.clickMoreActionsFavorite();
beforeAll(async (done) => {
await apis.admin.sites.createSite(adminSite1);
await apis.admin.sites.createSite(adminSite2);
await apis.admin.sites.createSite(adminSite3);
await apis.admin.sites.addSiteMember(adminSite1, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.admin.sites.addSiteMember(adminSite2, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.admin.sites.addSiteMember(adminSite3, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.user.favorites.addFavoriteById('site', adminSite2);
await apis.user.favorites.addFavoriteById('site', adminSite3);
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
done();
});
afterAll(async (done) => {
await apis.admin.sites.deleteSite(adminSite1);
await apis.admin.sites.deleteSite(adminSite2);
await apis.admin.sites.deleteSite(adminSite3);
done();
});
it('Mark a library as favorite - [C289974]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(adminSite1);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite1, { expect: true })).toBe(true, `${adminSite1} not favorite`);
});
it('Remove a library from favorites - on My Libraries - [C289975]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(adminSite2);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite2, { expect: false })).toBe(false, `${adminSite2} still favorite`);
});
it('Remove a library from favorites - on Favorite Libraries - [C289976]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(adminSite3);
await toolbar.openMoreMenu();
await toolbar.menu.clickMenuItem('Favorite');
expect(await dataTable.getRowByName(adminSite3).isPresent()).toBe(false, `${adminSite3} is displayed`);
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite3, { expect: false })).toBe(false, `${adminSite3} still favorite`);
});
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteFav2Id, { expect: false })).toBe(false, 'item marked as favorite');
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteFav3Id, { expect: false })).toBe(false, 'item marked as favorite');
});
it('Favorite multiple items - some favorite and some unfavorite - [C280347]', async () => {
await page.dataTable.doubleClickOnRowByName(folderSite);
await dataTable.selectMultipleItems([ fileSiteNotFav4, fileSiteFav4 ]);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteNotFav4Id, { expect: true })).toBe(true, 'item not marked as favorite');
expect(await apis.user.favorites.isFavoriteWithRetry(fileSiteFav4Id, { expect: true })).toBe(true, 'item not marked as favorite');
});
});
describe('on a library', () => {
const adminSite1 = `adminSite1-${Utils.random()}`;
const adminSite2 = `adminSite2-${Utils.random()}`;
const adminSite3 = `adminSite3-${Utils.random()}`;
beforeAll(async (done) => {
await apis.admin.sites.createSite(adminSite1);
await apis.admin.sites.createSite(adminSite2);
await apis.admin.sites.createSite(adminSite3);
await apis.admin.sites.addSiteMember(adminSite1, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.admin.sites.addSiteMember(adminSite2, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.admin.sites.addSiteMember(adminSite3, username, SITE_ROLES.SITE_CONSUMER.ROLE);
await apis.user.favorites.addFavoriteById('site', adminSite2);
await apis.user.favorites.addFavoriteById('site', adminSite3);
done();
});
beforeEach(async (done) => {
await Utils.pressEscape();
done();
});
afterAll(async (done) => {
await apis.admin.sites.deleteSite(adminSite1);
await apis.admin.sites.deleteSite(adminSite2);
await apis.admin.sites.deleteSite(adminSite3);
done();
});
it('Mark a library as favorite - [C289974]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(adminSite1);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite1, { expect: true })).toBe(true, `${adminSite1} not favorite`);
});
it('Remove a library from favorites - on My Libraries - [C289975]', async () => {
await page.goToMyLibraries();
await dataTable.selectItem(adminSite2);
await toolbar.clickMoreActionsFavorite();
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite2, { expect: false })).toBe(false, `${adminSite2} still favorite`);
});
it('Remove a library from favorites - on Favorite Libraries - [C289976]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(adminSite3);
await toolbar.clickMoreActionsFavorite();
expect(await dataTable.isItemPresent(adminSite3)).toBe(false, `${adminSite3} is displayed`);
expect(await apis.user.favorites.isFavoriteWithRetry(adminSite3, { expect: false })).toBe(false, `${adminSite3} still favorite`);
});
});
});
+14 -23
View File
@@ -70,44 +70,40 @@ describe('New menu', () => {
await page.clickPersonalFiles();
await sidenav.openNewMenu();
expect(await sidenav.menu.isMenuItemPresent('Create folder')).toBe(true, 'Create Folder option not present');
expect(await sidenav.menu.isMenuItemPresent('Create Library')).toBe(true, 'Create Library option not present');
expect(await sidenav.menu.isMenuItemPresent('Upload file')).toBe(true, 'Upload File option not present');
expect(await sidenav.menu.isMenuItemPresent('Upload folder')).toBe(true, 'Upload Folder option not present');
expect(await sidenav.menu.isCreateFolderPresent()).toBe(true, 'Create Folder option not present');
expect(await sidenav.menu.isCreateLibraryPresent()).toBe(true, 'Create Library option not present');
expect(await sidenav.menu.isUploadFilePresent()).toBe(true, 'Upload File option not present');
expect(await sidenav.menu.isUploadFolderPresent()).toBe(true, 'Upload Folder option not present');
expect(await sidenav.menu.getItemByLabel('Create Library').isEnabled()).toBe(true, 'Create Library is not enabled');
expect(await sidenav.menu.isCreateLibraryEnabled()).toBe(true, 'Create Library is not enabled');
});
it('Create folder is enabled when having enough permissions - Personal Files - [C216339]', async () => {
await page.clickPersonalFiles();
await page.sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Create folder').isEnabled();
expect(isEnabled).toBe(true, 'Create folder is not enabled');
expect(await sidenav.menu.isCreateFolderEnabled()).toBe(true, 'Create folder is not enabled');
});
it('Create folder is enabled when having enough permissions - File Libraries - [C280393]', async () => {
await page.clickFileLibraries();
await page.dataTable.doubleClickOnRowByName(siteUser);
await page.sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Create folder').isEnabled();
expect(isEnabled).toBe(true, 'Create folder is not enabled');
expect(await sidenav.menu.isCreateFolderEnabled()).toBe(true, 'Create folder is not enabled');
});
it('Create folder is disabled when not enough permissions - [C280397]', async () => {
await page.clickFileLibraries();
await dataTable.doubleClickOnRowByName(siteAdmin);
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Create folder').isEnabled();
expect(isEnabled).toBe(false, 'Create folder is not disabled');
expect(await sidenav.menu.isCreateFolderEnabled()).toBe(false, 'Create folder is not disabled');
});
it('Upload File option is enabled when having enough permissions - on Personal Files - [C217145]', async () => {
await page.clickPersonalFiles();
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload file').isEnabled();
expect(isEnabled).toBe(true, 'Upload file is not enabled in Personal Files');
expect(await sidenav.menu.isUploadFileEnabled()).toBe(true, 'Upload file is not enabled in Personal Files');
});
it('Upload File option is enabled when having permissions - on File Libraries - [C290142]', async () => {
@@ -115,8 +111,7 @@ describe('New menu', () => {
await dataTable.doubleClickOnRowByName(siteUser);
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload file').isEnabled();
expect(isEnabled).toBe(true, 'Upload file is not enabled in File Libraries');
expect(await sidenav.menu.isUploadFileEnabled()).toBe(true, 'Upload file is not enabled in File Libraries');
});
it('Upload File option is disabled when user cannot create content in that location - [C217146]', async () => {
@@ -124,16 +119,14 @@ describe('New menu', () => {
await dataTable.doubleClickOnRowByName(siteAdmin);
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload file').isEnabled();
expect(isEnabled).toBe(false, 'Upload file is not disabled');
expect(await sidenav.menu.isUploadFileEnabled()).toBe(false, 'Upload file is not disabled');
});
it('Upload Folder option is enabled when having enough permissions - on Personal Files - [C213196]', async () => {
await page.clickPersonalFiles();
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload folder').isEnabled();
expect(isEnabled).toBe(true, 'Upload folder is not enabled in Personal Files');
expect(await sidenav.menu.isUploadFolderEnabled()).toBe(true, 'Upload folder is not enabled in Personal Files');
});
it('Upload Folder option is enabled when having permissions - on File Libraries - [C290146]', async () => {
@@ -141,8 +134,7 @@ describe('New menu', () => {
await dataTable.doubleClickOnRowByName(siteUser);
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload folder').isEnabled();
expect(isEnabled).toBe(true, 'Upload folder is not enabled in File Libraries');
expect(await sidenav.menu.isUploadFolderEnabled()).toBe(true, 'Upload folder is not enabled in File Libraries');
});
it('Upload Folder option is disabled when user cannot create content in that location - [C213193]', async () => {
@@ -150,8 +142,7 @@ describe('New menu', () => {
await dataTable.doubleClickOnRowByName(siteAdmin);
await sidenav.openNewMenu();
const isEnabled = await sidenav.menu.getItemByLabel('Upload folder').isEnabled();
expect(isEnabled).toBe(false, 'Upload folder is not disabled');
expect(await sidenav.menu.isUploadFolderEnabled()).toBe(false, 'Upload folder is not disabled');
});
it('Create folder enabled button tooltip - [C216342]', async () => {
+24 -28
View File
@@ -79,59 +79,55 @@ describe('Permanently delete from Trash', () => {
it('delete a file - [C217091]', async () => {
await dataTable.selectItem(file1);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
await confirmDialog.clickButton('Delete');
const text = await page.getSnackBarMessage();
await confirmDialog.clickDelete();
expect(text).toEqual(`${file1} deleted`);
expect(await dataTable.getRowByName(file1).isPresent()).toBe(false, 'Item was not deleted');
expect(await page.getSnackBarMessage()).toEqual(`${file1} deleted`);
expect(await dataTable.isItemPresent(file1)).toBe(false, 'Item was not deleted');
});
it('delete a folder - [C280416]', async () => {
await dataTable.selectItem(folder1);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
await confirmDialog.clickButton('Delete');
const text = await page.getSnackBarMessage();
await confirmDialog.clickDelete();
expect(text).toEqual(`${folder1} deleted`);
expect(await dataTable.getRowByName(folder1).isPresent()).toBe(false, 'Item was not deleted');
expect(await page.getSnackBarMessage()).toEqual(`${folder1} deleted`);
expect(await dataTable.isItemPresent(folder1)).toBe(false, 'Item was not deleted');
});
it('delete a library - [C290103]', async () => {
await dataTable.selectItem(site);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
await confirmDialog.clickButton('Delete');
const text = await page.getSnackBarMessage();
await confirmDialog.clickDelete();
expect(text).toEqual(`${site} deleted`);
expect(await dataTable.getRowByName(site).isPresent()).toBe(false, `${site} was not deleted`);
expect(await page.getSnackBarMessage()).toEqual(`${site} deleted`);
expect(await dataTable.isItemPresent(site)).toBe(false, `${site} was not deleted`);
});
it('delete multiple items - [C280417]', async () => {
await dataTable.selectMultipleItems([ file2, folder2 ]);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
await confirmDialog.clickButton('Delete');
const text = await page.getSnackBarMessage();
await confirmDialog.clickDelete();
expect(text).toEqual(`2 items deleted`);
expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, 'Item was not deleted');
expect(await dataTable.getRowByName(folder2).isPresent()).toBe(false, 'Item was not deleted');
expect(await page.getSnackBarMessage()).toEqual(`2 items deleted`);
expect(await dataTable.isItemPresent(file2)).toBe(false, 'Item was not deleted');
expect(await dataTable.isItemPresent(folder2)).toBe(false, 'Item was not deleted');
});
it('Confirmation dialog UI - [C269113]', async () => {
await dataTable.selectItem(file3);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Confirm delete dialog not open');
expect(await confirmDialog.getTitle()).toContain('Delete from trash');
expect(await confirmDialog.getText()).toContain('This will permanently remove the selected item(s)');
expect(await confirmDialog.isButtonEnabled('Delete')).toBe(true, 'DELETE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Keep')).toBe(true, 'KEEP button is not enabled');
expect(await confirmDialog.isDeleteEnabled()).toBe(true, 'DELETE button is not enabled');
expect(await confirmDialog.isKeepEnabled()).toBe(true, 'KEEP button is not enabled');
await Utils.pressEscape();
await dataTable.clearSelection();
@@ -139,11 +135,11 @@ describe('Permanently delete from Trash', () => {
it('Keep action cancels the deletion - [C269115]', async () => {
await dataTable.selectItem(file3);
await toolbar.getButtonByTitleAttribute('Permanently delete').click();
await toolbar.clickPermanentlyDelete();
await page.waitForDialog();
expect(await confirmDialog.isButtonEnabled('Keep')).toBe(true, 'KEEP button is not enabled');
await confirmDialog.clickButton('Keep');
expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, 'Item was deleted');
expect(await confirmDialog.isKeepEnabled()).toBe(true, 'KEEP button is not enabled');
await confirmDialog.clickKeep();
expect(await dataTable.isItemPresent(file3)).toBe(true, 'Item was deleted');
});
});
+23 -27
View File
@@ -81,59 +81,59 @@ describe('Restore from Trash', () => {
it('restore file - [C217177]', async () => {
await dataTable.selectItem(file);
await toolbar.getButtonByTitleAttribute('Restore').click();
await toolbar.clickRestore();
const text = await page.getSnackBarMessage();
expect(text).toContain(`${file} restored`);
expect(text).toContain(`View`);
expect(await dataTable.getRowByName(file).isPresent()).toBe(false, 'Item was not removed from list');
expect(await dataTable.isItemPresent(file)).toBe(false, 'Item was not removed from list');
await page.clickPersonalFilesAndWait();
expect(await page.dataTable.getRowByName(file).isPresent()).toBe(true, 'Item not displayed in list');
expect(await page.dataTable.isItemPresent(file)).toBe(true, 'Item not displayed in list');
await apis.user.nodes.deleteNodeById(fileId, false);
});
it('restore folder - [C280438]', async () => {
await dataTable.selectItem(folder);
await toolbar.getButtonByTitleAttribute('Restore').click();
await toolbar.clickRestore();
const text = await page.getSnackBarMessage();
expect(text).toContain(`${folder} restored`);
expect(text).toContain(`View`);
expect(await dataTable.getRowByName(folder).isPresent()).toBe(false, 'Item was not removed from list');
expect(await dataTable.isItemPresent(folder)).toBe(false, 'Item was not removed from list');
await page.clickPersonalFilesAndWait();
expect(await page.dataTable.getRowByName(folder).isPresent()).toBe(true, 'Item not displayed in list');
expect(await page.dataTable.isItemPresent(folder)).toBe(true, 'Item not displayed in list');
await apis.user.nodes.deleteNodeById(folderId, false);
});
it('restore library - [C290104]', async () => {
await dataTable.selectItem(site);
await toolbar.getButtonByTitleAttribute('Restore').click();
await toolbar.clickRestore();
const text = await page.getSnackBarMessage();
expect(text).toContain(`${site} restored`);
expect(text).toContain(`View`);
expect(await dataTable.getRowByName(site).isPresent()).toBe(false, `${site} was not removed from list`);
expect(await dataTable.isItemPresent(site)).toBe(false, `${site} was not removed from list`);
await page.clickFileLibrariesAndWait();
expect(await page.dataTable.getRowByName(site).isPresent()).toBe(true, `${site} not displayed in list`);
expect(await page.dataTable.isItemPresent(site)).toBe(true, `${site} not displayed in list`);
});
it('restore multiple items - [C217182]', async () => {
await dataTable.selectMultipleItems([file, folder]);
await toolbar.getButtonByTitleAttribute('Restore').click();
await toolbar.clickRestore();
const text = await page.getSnackBarMessage();
expect(text).toContain(`Restore successful`);
expect(text).not.toContain(`View`);
expect(await dataTable.getRowByName(file).isPresent()).toBe(false, 'Item was not removed from list');
expect(await dataTable.getRowByName(folder).isPresent()).toBe(false, 'Item was not removed from list');
expect(await dataTable.isItemPresent(file)).toBe(false, 'Item was not removed from list');
expect(await dataTable.isItemPresent(folder)).toBe(false, 'Item was not removed from list');
await page.clickPersonalFilesAndWait();
expect(await page.dataTable.getRowByName(file).isPresent()).toBe(true, 'Item not displayed in list');
expect(await page.dataTable.getRowByName(folder).isPresent()).toBe(true, 'Item not displayed in list');
expect(await page.dataTable.isItemPresent(file)).toBe(true, 'Item not displayed in list');
expect(await page.dataTable.isItemPresent(folder)).toBe(true, 'Item not displayed in list');
await apis.user.nodes.deleteNodesById([fileId, folderId], false);
});
it('View from notification - [C217181]', async () => {
await dataTable.selectItem(file);
await toolbar.getButtonByTitleAttribute('Restore').click();
await toolbar.clickRestore();
await page.clickSnackBarAction();
await page.dataTable.waitForHeader();
expect(await page.sidenav.isActive('Personal Files')).toBe(true, 'Personal Files sidebar link not active');
@@ -184,17 +184,15 @@ describe('Restore from Trash', () => {
it('Restore a file when another file with same name exists on the restore location - [C217178]', async () => {
await page.clickTrashAndWait();
await dataTable.selectItem(file1);
await toolbar.getButtonByTitleAttribute('Restore').click();
const text = await page.getSnackBarMessage();
expect(text).toEqual(`Can't restore, ${file1} already exists`);
await toolbar.clickRestore();
expect(await page.getSnackBarMessage()).toEqual(`Can't restore, ${file1} already exists`);
});
it('Restore a file when original location no longer exists - [C217179]', async () => {
await page.clickTrashAndWait();
await dataTable.selectItem(file2);
await toolbar.getButtonByTitleAttribute('Restore').click();
const text = await page.getSnackBarMessage();
expect(text).toEqual(`Can't restore ${file2}, the original location no longer exists`);
await toolbar.clickRestore();
expect(await page.getSnackBarMessage()).toEqual(`Can't restore ${file2}, the original location no longer exists`);
});
});
@@ -254,16 +252,14 @@ describe('Restore from Trash', () => {
it('one failure - [C217183]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
await toolbar.getButtonByTitleAttribute('Restore').click();
const text = await page.getSnackBarMessage();
expect(text).toEqual(`Can't restore ${file1}, the original location no longer exists`);
await toolbar.clickRestore();
expect(await page.getSnackBarMessage()).toEqual(`Can't restore ${file1}, the original location no longer exists`);
});
it('multiple failures - [C217184]', async () => {
await dataTable.selectMultipleItems([file3, file4, file5]);
await toolbar.getButtonByTitleAttribute('Restore').click();
const text = await page.getSnackBarMessage();
expect(text).toEqual('2 items not restored because of issues with the restore location');
await toolbar.clickRestore();
expect(await page.getSnackBarMessage()).toEqual('2 items not restored because of issues with the restore location');
});
});
});
+89 -90
View File
@@ -120,7 +120,7 @@ describe('Share a file', () => {
it('Share dialog default values - [C286327]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file1}`);
@@ -131,38 +131,38 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
it('Close dialog - [C286328]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
await shareDialog.clickClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog is open');
});
it('Share a file - [C286329]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file3Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file3Id);
expect(await apis.user.nodes.isFileShared(file3Id)).toBe(true, `${file3} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, `${file3} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file3)).toBe(true, `${file3} is not in the Shared files list`);
});
it('Copy shared file URL - [C286330]', async () => {
await dataTable.selectItem(file4);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
expect(url).toContain('/preview/s/');
@@ -179,7 +179,7 @@ describe('Share a file', () => {
it('Share a file with expiration date - [C286332]', async () => {
await dataTable.selectItem(file5);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
await shareDialog.clickExpirationToggle();
@@ -193,17 +193,17 @@ describe('Share a file', () => {
expect(new Date(inputDate)).toEqual(new Date(setDate));
const expireDateProperty = await apis.user.nodes.getNodeProperty(file5Id, 'qshare:expiryDate');
const expireDateProperty = await apis.user.nodes.getSharedExpiryDate(file5Id);
expect(Utils.formatDate(expireDateProperty)).toEqual(Utils.formatDate(inputDate));
});
it('Expire date is displayed correctly - [C286337]', async () => {
await dataTable.selectItem(file6);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const expireProperty = await apis.user.nodes.getNodeProperty(file6Id, 'qshare:expiryDate');
const expireProperty = await apis.user.nodes.getSharedExpiryDate(file6Id);
expect(expireProperty).toEqual(expiryDate);
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
expect(Utils.formatDate(await shareDialog.getExpireDate())).toEqual(Utils.formatDate(expiryDate));
@@ -211,7 +211,7 @@ describe('Share a file', () => {
it('Disable the share link expiration - [C286333]', async () => {
await dataTable.selectItem(file7);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
@@ -222,12 +222,12 @@ describe('Share a file', () => {
expect(await shareDialog.getExpireDate()).toBe('', 'Expire date input is not empty');
await shareDialog.clickClose();
expect(await apis.user.nodes.getNodeProperty(file7Id, 'qshare:expiryDate')).toBe(undefined, `${file7} link still has expiration`);
expect(await apis.user.nodes.getSharedExpiryDate(file7Id)).toBe(undefined, `${file7} link still has expiration`);
});
it('Shared file URL is not changed when Share dialog is closed and opened again - [C286335]', async () => {
await dataTable.selectItem(file8);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url1 = await shareDialog.getLinkUrl();
await shareDialog.clickClose();
@@ -235,7 +235,7 @@ describe('Share a file', () => {
await page.dataTable.clearSelection();
await dataTable.selectItem(file8);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url2 = await shareDialog.getLinkUrl();
@@ -244,18 +244,18 @@ describe('Share a file', () => {
it('Share a file from the context menu - [C286345]', async () => {
await dataTable.rightClickOnItem(file9);
await contextMenu.clickShareAction();
await contextMenu.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file9Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file9Id);
expect(await apis.user.nodes.isFileShared(file9Id)).toBe(true, `${file9} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file9).isPresent()).toBe(true, `${file9} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file9)).toBe(true, `${file9} is not in the Shared files list`);
});
});
@@ -316,7 +316,7 @@ describe('Share a file', () => {
it('Share dialog default values - [C286639]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file1}`);
@@ -327,38 +327,38 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
it('Close dialog - [C286640]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
await shareDialog.clickClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog is open');
});
it('Share a file - [C286641]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file3Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file3Id);
expect(await apis.user.nodes.isFileShared(file3Id)).toBe(true, `${file3} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, `${file3} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file3)).toBe(true, `${file3} is not in the Shared files list`);
});
it('Copy shared file URL - [C286642]', async () => {
await dataTable.selectItem(file4);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
expect(url).toContain('/preview/s/');
@@ -375,7 +375,7 @@ describe('Share a file', () => {
it('Share a file with expiration date - [C286643]', async () => {
await dataTable.selectItem(file5);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
await shareDialog.clickExpirationToggle();
@@ -389,17 +389,17 @@ describe('Share a file', () => {
expect(new Date(inputDate)).toEqual(new Date(setDate));
const expireDateProperty = await apis.user.nodes.getNodeProperty(file5Id, 'qshare:expiryDate');
const expireDateProperty = await apis.user.nodes.getSharedExpiryDate(file5Id);
expect(Utils.formatDate(expireDateProperty)).toEqual(Utils.formatDate(inputDate));
});
it('Expire date is displayed correctly - [C286644]', async () => {
await dataTable.selectItem(file6);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const expireProperty = await apis.user.nodes.getNodeProperty(file6Id, 'qshare:expiryDate');
const expireProperty = await apis.user.nodes.getSharedExpiryDate(file6Id);
expect(expireProperty).toEqual(expiryDate);
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
expect(Utils.formatDate(await shareDialog.getExpireDate())).toEqual(Utils.formatDate(expiryDate));
@@ -407,7 +407,7 @@ describe('Share a file', () => {
it('Disable the share link expiration - [C286645]', async () => {
await dataTable.selectItem(file7);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
@@ -418,12 +418,12 @@ describe('Share a file', () => {
expect(await shareDialog.getExpireDate()).toBe('', 'Expire date input is not empty');
await shareDialog.clickClose();
expect(await apis.user.nodes.getNodeProperty(file7Id, 'qshare:expiryDate')).toBe(undefined, `${file7} link still has expiration`);
expect(await apis.user.nodes.getSharedExpiryDate(file7Id)).toBe(undefined, `${file7} link still has expiration`);
});
it('Shared file URL is not changed when Share dialog is closed and opened again - [C286646]', async () => {
await dataTable.selectItem(file8);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url1 = await shareDialog.getLinkUrl();
await shareDialog.clickClose();
@@ -431,7 +431,7 @@ describe('Share a file', () => {
await page.dataTable.clearSelection();
await dataTable.selectItem(file8);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url2 = await shareDialog.getLinkUrl();
@@ -440,18 +440,18 @@ describe('Share a file', () => {
it('Share a file from the context menu - [C286647]', async () => {
await dataTable.rightClickOnItem(file9);
await contextMenu.clickShareAction();
await contextMenu.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file9Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file9Id);
expect(await apis.user.nodes.isFileShared(file9Id)).toBe(true, `${file9} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file9).isPresent()).toBe(true, `${file9} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file9)).toBe(true, `${file9} is not in the Shared files list`);
});
});
@@ -510,7 +510,7 @@ describe('Share a file', () => {
it('Share dialog default values - [C286657]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file1}`);
@@ -521,38 +521,38 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
it('Close dialog - [C286658]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
await shareDialog.clickClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog is open');
});
it('Share a file - [C286659]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file3Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file3Id);
expect(await apis.user.nodes.isFileShared(file3Id)).toBe(true, `${file3} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, `${file3} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file3)).toBe(true, `${file3} is not in the Shared files list`);
});
it('Copy shared file URL - [C286660]', async () => {
await dataTable.selectItem(file4);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
expect(url).toContain('/preview/s/');
@@ -569,7 +569,7 @@ describe('Share a file', () => {
it('Share a file with expiration date - [C286661]', async () => {
await dataTable.selectItem(file5);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
await shareDialog.clickExpirationToggle();
@@ -583,17 +583,17 @@ describe('Share a file', () => {
expect(new Date(inputDate)).toEqual(new Date(setDate));
const expireDateProperty = await apis.user.nodes.getNodeProperty(file5Id, 'qshare:expiryDate');
const expireDateProperty = await apis.user.nodes.getSharedExpiryDate(file5Id);
expect(Utils.formatDate(expireDateProperty)).toEqual(Utils.formatDate(inputDate));
});
it('Expire date is displayed correctly - [C286662]', async () => {
await dataTable.selectItem(file6);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const expireProperty = await apis.user.nodes.getNodeProperty(file6Id, 'qshare:expiryDate');
const expireProperty = await apis.user.nodes.getSharedExpiryDate(file6Id);
expect(expireProperty).toEqual(expiryDate);
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
expect(Utils.formatDate(await shareDialog.getExpireDate())).toEqual(Utils.formatDate(expiryDate));
@@ -601,7 +601,7 @@ describe('Share a file', () => {
it('Disable the share link expiration - [C286663]', async () => {
await dataTable.selectItem(file7);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
@@ -612,12 +612,12 @@ describe('Share a file', () => {
expect(await shareDialog.getExpireDate()).toBe('', 'Expire date input is not empty');
await shareDialog.clickClose();
expect(await apis.user.nodes.getNodeProperty(file7Id, 'qshare:expiryDate')).toBe(undefined, `${file7} link still has expiration`);
expect(await apis.user.nodes.getSharedExpiryDate(file7Id)).toBe(undefined, `${file7} link still has expiration`);
});
it('Shared file URL is not changed when Share dialog is closed and opened again - [C286664]', async () => {
await dataTable.selectItem(file8);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url1 = await shareDialog.getLinkUrl();
await shareDialog.clickClose();
@@ -625,7 +625,7 @@ describe('Share a file', () => {
await page.dataTable.clearSelection();
await dataTable.selectItem(file8);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url2 = await shareDialog.getLinkUrl();
@@ -634,18 +634,18 @@ describe('Share a file', () => {
it('Share a file from the context menu - [C286665]', async () => {
await dataTable.rightClickOnItem(file9);
await contextMenu.clickShareAction();
await contextMenu.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file9Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file9Id);
expect(await apis.user.nodes.isFileShared(file9Id)).toBe(true, `${file9} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file9).isPresent()).toBe(true, `${file9} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file9)).toBe(true, `${file9} is not in the Shared files list`);
});
});
@@ -704,7 +704,7 @@ describe('Share a file', () => {
it('Share dialog default values - [C286648]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file1}`);
@@ -715,22 +715,22 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
it('Close dialog - [C286649]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
await shareDialog.clickClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog is open');
});
it('Copy shared file URL - [C286651]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
expect(url).toContain('/preview/s/');
@@ -747,10 +747,10 @@ describe('Share a file', () => {
it('Expire date is displayed correctly - [C286653]', async () => {
await dataTable.selectItem(file4);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const expireProperty = await apis.user.nodes.getNodeProperty(file4Id, 'qshare:expiryDate');
const expireProperty = await apis.user.nodes.getSharedExpiryDate(file4Id);
expect(expireProperty).toEqual(expiryDate);
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
expect(Utils.formatDate(await shareDialog.getExpireDate())).toEqual(Utils.formatDate(expiryDate));
@@ -758,7 +758,7 @@ describe('Share a file', () => {
it('Disable the share link expiration - [C286654]', async () => {
await dataTable.selectItem(file5);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
@@ -769,12 +769,12 @@ describe('Share a file', () => {
expect(await shareDialog.getExpireDate()).toBe('', 'Expire date input is not empty');
await shareDialog.clickClose();
expect(await apis.user.nodes.getNodeProperty(file5Id, 'qshare:expiryDate')).toBe(undefined, `${file5} link still has expiration`);
expect(await apis.user.nodes.getSharedExpiryDate(file5Id)).toBe(undefined, `${file5} link still has expiration`);
});
it('Shared file URL is not changed when Share dialog is closed and opened again - [C286655]', async () => {
await dataTable.selectItem(file6);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url1 = await shareDialog.getLinkUrl();
await shareDialog.clickClose();
@@ -782,7 +782,7 @@ describe('Share a file', () => {
await page.dataTable.clearSelection();
await dataTable.selectItem(file6);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url2 = await shareDialog.getLinkUrl();
@@ -791,7 +791,7 @@ describe('Share a file', () => {
it('Open Share dialog from context menu - [C286656]', async () => {
await dataTable.rightClickOnItem(file7);
await contextMenu.clickShareEditAction();
await contextMenu.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file7}`);
@@ -802,11 +802,10 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
});
// TODO: enable when ACA-1886 is done
describe('from Favorites', () => {
const file1 = `file1-${Utils.random()}.txt`; let file1Id;
@@ -873,7 +872,7 @@ describe('Share a file', () => {
it('Share dialog default values - [C286666]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.getTitle()).toEqual(`Share ${file1}`);
@@ -884,38 +883,38 @@ describe('Share a file', () => {
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
expect(await shareDialog.getLabels().get(1).getText()).toEqual('Expires on');
expect(await shareDialog.isExpireToggleEnabled()).toBe(false, 'Expire toggle is checked');
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
});
it('Close dialog - [C286667]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.closeButton.isEnabled()).toBe(true, 'Close button is not enabled');
expect(await shareDialog.isCloseEnabled()).toBe(true, 'Close button is not enabled');
await shareDialog.clickClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog is open');
});
it('Share a file - [C286668]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file3Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file3Id);
expect(await apis.user.nodes.isFileShared(file3Id)).toBe(true, `${file3} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file3).isPresent()).toBe(true, `${file3} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file3)).toBe(true, `${file3} is not in the Shared files list`);
});
it('Copy shared file URL - [C286669]', async () => {
await dataTable.selectItem(file4);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
expect(url).toContain('/preview/s/');
@@ -932,7 +931,7 @@ describe('Share a file', () => {
it('Share a file with expiration date - [C286670]', async () => {
await dataTable.selectItem(file5);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
await shareDialog.clickExpirationToggle();
@@ -946,17 +945,17 @@ describe('Share a file', () => {
expect(new Date(inputDate)).toEqual(new Date(setDate));
const expireDateProperty = await apis.user.nodes.getNodeProperty(file5Id, 'qshare:expiryDate');
const expireDateProperty = await apis.user.nodes.getSharedExpiryDate(file5Id);
expect(Utils.formatDate(expireDateProperty)).toEqual(Utils.formatDate(inputDate));
});
it('Expire date is displayed correctly - [C286671]', async () => {
await dataTable.selectItem(file6);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const expireProperty = await apis.user.nodes.getNodeProperty(file6Id, 'qshare:expiryDate');
const expireProperty = await apis.user.nodes.getSharedExpiryDate(file6Id);
expect(expireProperty).toEqual(expiryDate);
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
expect(Utils.formatDate(await shareDialog.getExpireDate())).toEqual(Utils.formatDate(expiryDate));
@@ -964,7 +963,7 @@ describe('Share a file', () => {
it('Disable the share link expiration - [C286672]', async () => {
await dataTable.selectItem(file7);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isExpireToggleEnabled()).toBe(true, 'Expiration is not checked');
@@ -975,12 +974,12 @@ describe('Share a file', () => {
expect(await shareDialog.getExpireDate()).toBe('', 'Expire date input is not empty');
await shareDialog.clickClose();
expect(await apis.user.nodes.getNodeProperty(file7Id, 'qshare:expiryDate')).toBe(undefined, `${file7} link still has expiration`);
expect(await apis.user.nodes.getSharedExpiryDate(file7Id)).toBe(undefined, `${file7} link still has expiration`);
});
it('Shared file URL is not changed when Share dialog is closed and opened again - [C286673]', async () => {
await dataTable.selectItem(file8);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url1 = await shareDialog.getLinkUrl();
await shareDialog.clickClose();
@@ -988,7 +987,7 @@ describe('Share a file', () => {
await page.dataTable.clearSelection();
await dataTable.selectItem(file8);
await toolbar.clickShareButton();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url2 = await shareDialog.getLinkUrl();
@@ -997,18 +996,18 @@ describe('Share a file', () => {
it('Share a file from the context menu - [C286674]', async () => {
await dataTable.rightClickOnItem(file9);
await contextMenu.clickMenuItem('Share');
await contextMenu.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await Utils.pressEscape();
const sharedId = await apis.user.nodes.getNodeProperty(file9Id, 'qshare:sharedId');
const sharedId = await apis.user.nodes.getSharedId(file9Id);
expect(await apis.user.nodes.isFileShared(file9Id)).toBe(true, `${file9} is not shared`);
expect(url).toContain(sharedId);
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file9).isPresent()).toBe(true, `${file9} is not in the Shared files list`);
// expect(await dataTable.isItemPresent(file9)).toBe(true, `${file9} is not in the Shared files list`);
});
});
+1 -1
View File
@@ -129,7 +129,7 @@ describe('Single click on item name', () => {
await dataTable.clickNameLink(siteName);
expect(await breadcrumb.getCurrentItemName()).toBe(siteName);
expect(await dataTable.getRowByName(fileSite).isPresent()).toBe(true, `${fileSite} not displayed`);
expect(await dataTable.isItemPresent(fileSite)).toBe(true, `${fileSite} not displayed`);
});
});
@@ -114,43 +114,43 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
it('on Shared Files - [C280477]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C280478]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
});
@@ -166,48 +166,48 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectItem(file1);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
await toolbar.closeMoreMenu();
});
it('on Shared Files - [C280456]', async () => {
await page.clickSharedFilesAndWait();
await page.dataTable.selectItem(file1);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C213121]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectItem(file1);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${file1}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
await toolbar.closeMoreMenu();
});
});
@@ -223,33 +223,33 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectItem(folder1);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for ${folder1}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${folder1}`);
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${folder1}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${folder1}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folder1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${folder1}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${folder1}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folder1}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${folder1}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${folder1}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folder1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for ${folder1}`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for ${folder1}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folder1}`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C286266]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectItem(folder1);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is not displayed for ${folder1}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${folder1}`);
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${folder1}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is not displayed for ${folder1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${folder1}`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${folder1}`);
// expect(await toolbar.isEditButtonPresent()).toBe(false, `Edit is displayed for ${folder1}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folder1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${folder1}`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${folder1}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folder1}`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for ${folder1}`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for ${folder1}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folder1}`);
await toolbar.closeMoreMenu();
});
});
@@ -266,43 +266,43 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
await toolbar.closeMoreMenu();
});
it('on Shared Files - [C286284]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C286285]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
});
@@ -319,29 +319,29 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C286286]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
});
@@ -358,29 +358,29 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([file1, folder1]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
await toolbar.closeMoreMenu();
});
it('on Favorites - [C286287]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([file1, folder1]);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for selected files`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for selected files`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for selected files`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for selected files`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
// TODO: enable when ACA-1737 is done
// expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
// expect(await toolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed for selected files`);
// expect(await toolbar.menu.isMovePresent()).toBe(false, `Move is displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
});
@@ -396,52 +396,52 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.rightClickOnItem(file1);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${file1}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions not displayed for ${file1}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed for ${file1}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${file1}`);
});
it('on Shared Files - [C286264]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.rightClickOnItem(file1);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
// TODO: enable this when the action is properly implemented: ACA-92
// expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${file1}`);
// expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions not displayed for ${file1}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed for ${file1}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${file1}`);
});
it('on Favorites - [C286262]', async () => {
await page.clickFavoritesAndWait();
await dataTable.rightClickOnItem(file1);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${file1}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${file1}`);
expect(await contextMenu.isViewPresent()).toBe(true, `View is not displayed for ${file1}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${file1}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${file1}`);
// TODO: enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${file1}`);
// expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage Versions is not displayed for ${file1}`);
// expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed for ${file1}`);
// expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed for ${file1}`);
expect(await contextMenu.isSharePresent()).toBe(true, `Share is not displayed for ${file1}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(true, `Manage Versions is not displayed for ${file1}`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isMenuItemPresent('View details')).toBe(false, `View details is displayed for ${file1}`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${file1}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${file1}`);
expect(await contextMenu.isViewDetailsPresent()).toBe(false, `View details is displayed for ${file1}`);
});
});
@@ -456,34 +456,34 @@ describe('Granular permissions available actions : ', () => {
await dataTable.doubleClickOnRowByName(siteName);
await dataTable.waitForHeader();
await dataTable.rightClickOnItem(folder1);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not enabled for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(false, `Manage Versions displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is displayed for ${folder1}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`);
expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${folder1}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folder1}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed for ${folder1}`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed for ${folder1}`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed for ${folder1}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is displayed for ${folder1}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(false, `Manage Versions displayed for ${folder1}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is displayed for ${folder1}`);
});
it('on Favorites - [C286263]', async () => {
await page.clickFavoritesAndWait();
await dataTable.rightClickOnItem(folder1);
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, `Download is not enabled for ${folder1}`);
expect(await contextMenu.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`);
// enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Edit')).toBe(false, `Edit is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folder1}`);
// expect(await contextMenu.isEditPresent()).toBe(false, `Edit is displayed for ${folder1}`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folder1}`);
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`);
// TODO: enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed for ${folder1}`);
// expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed for ${folder1}`);
// expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed for ${folder1}`);
// expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed for ${folder1}`);
// TODO: enable when ACA-1794 is fixed
// expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(true, `Permissions is not displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, `View is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Manage Versions')).toBe(false, `Manage Versions is displayed for ${folder1}`);
expect(await contextMenu.isMenuItemPresent('Share')).toBe(false, `Share is displayed for ${folder1}`);
// expect(await contextMenu.isManagePermissionsPresent()).toBe(true, `Permissions is not displayed for ${folder1}`);
expect(await contextMenu.isViewPresent()).toBe(false, `View is displayed for ${folder1}`);
expect(await contextMenu.isManageVersionsPresent()).toBe(false, `Manage Versions is displayed for ${folder1}`);
expect(await contextMenu.isSharePresent()).toBe(false, `Share is displayed for ${folder1}`);
});
});
@@ -500,40 +500,40 @@ describe('Granular permissions available actions : ', () => {
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([file1, file2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
it('on Shared Files - [C286283]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
it('on Favorites - [C286280]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([file1, file2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
// TODO: enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
// expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
});
@@ -550,27 +550,27 @@ describe('Granular permissions available actions : ', () => {
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([folder1, folder2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
it('on Favorites - [C286281]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([folder1, folder2]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
// TODO: enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
// expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
});
@@ -587,27 +587,27 @@ describe('Granular permissions available actions : ', () => {
await dataTable.waitForHeader();
await dataTable.selectMultipleItems([file1, folder1]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
it('on Favorites - [C286282]', async () => {
await page.clickFavoritesAndWait();
await dataTable.selectMultipleItems([file1, folder1]);
await dataTable.rightClickOnMultipleSelection();
expect(await contextMenu.isMenuItemPresent('View')).toBe(false, 'View is displayed');
expect(await contextMenu.isMenuItemPresent('Download')).toBe(true, 'Download is not displayed');
expect(await contextMenu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await contextMenu.isViewPresent()).toBe(false, 'View is displayed');
expect(await contextMenu.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await contextMenu.isCopyPresent()).toBe(true, `Copy is not displayed`);
// TODO: enable when ACA-1737 is done
// expect(await contextMenu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await contextMenu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
// expect(await contextMenu.isDeletePresent()).toBe(false, `Delete is displayed`);
// expect(await contextMenu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await contextMenu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await contextMenu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
});
});
@@ -625,20 +625,20 @@ describe('Granular permissions available actions : ', () => {
expect(await viewer.isViewerOpened()).toBe(true, 'Viewer is not opened');
expect(await viewerToolbar.isEmpty()).toBe(false, `viewer toolbar is empty`);
expect(await viewerToolbar.isButtonPresent('View')).toBe(false, `View is displayed`);
expect(await viewerToolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isButtonPresent('Print')).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isButtonPresent('Activate full-screen mode')).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isShareEditButtonPresent()).toBe(true, 'Shared link settings is not displayed');
expect(await viewerToolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed`);
expect(await viewerToolbar.isViewPresent()).toBe(false, `View is displayed`);
expect(await viewerToolbar.isDownloadPresent()).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isPrintPresent()).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isFullScreenPresent()).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isSharedLinkSettingsPresent()).toBe(true, 'Shared link settings is not displayed');
expect(await viewerToolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed`);
await viewerToolbar.openMoreMenu();
expect(await viewerToolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Share')).toBe(false, `Share is displayed in More actions`);
expect(await viewerToolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await viewerToolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isSharePresent()).toBe(false, `Share is displayed in More actions`);
expect(await viewerToolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await viewerToolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await viewerToolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isManageVersionsPresent()).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
await toolbar.closeMoreMenu();
});
@@ -648,18 +648,18 @@ describe('Granular permissions available actions : ', () => {
expect(await viewer.isViewerOpened()).toBe(true, 'Viewer is not opened');
expect(await viewerToolbar.isEmpty()).toBe(false, `viewer toolbar is empty`);
expect(await viewerToolbar.isButtonPresent('View')).toBe(false, `View is displayed`);
expect(await viewerToolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isButtonPresent('Print')).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isButtonPresent('Activate full-screen mode')).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed`);
expect(await viewerToolbar.isViewPresent()).toBe(false, `View is displayed`);
expect(await viewerToolbar.isDownloadPresent()).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isPrintPresent()).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isFullScreenPresent()).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed`);
await viewerToolbar.openMoreMenu();
expect(await viewerToolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
expect(await viewerToolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
expect(await viewerToolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
expect(await viewerToolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isManageVersionsPresent()).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
await toolbar.closeMoreMenu();
});
@@ -669,21 +669,21 @@ describe('Granular permissions available actions : ', () => {
expect(await viewer.isViewerOpened()).toBe(true, 'Viewer is not opened');
expect(await viewerToolbar.isEmpty()).toBe(false, `viewer toolbar is empty`);
expect(await viewerToolbar.isButtonPresent('View')).toBe(false, `View is displayed`);
expect(await viewerToolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isButtonPresent('Print')).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isButtonPresent('Activate full-screen mode')).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isShareEditButtonPresent()).toBe(true, 'Shared link settings is not displayed');
expect(await viewerToolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed`);
expect(await viewerToolbar.isViewPresent()).toBe(false, `View is displayed`);
expect(await viewerToolbar.isDownloadPresent()).toBe(true, `Download is not displayed`);
expect(await viewerToolbar.isPrintPresent()).toBe(true, `Print is not displayed`);
expect(await viewerToolbar.isFullScreenPresent()).toBe(true, `Full screen is not displayed`);
expect(await viewerToolbar.isSharedLinkSettingsPresent()).toBe(true, 'Shared link settings is not displayed');
expect(await viewerToolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed`);
await viewerToolbar.openMoreMenu();
expect(await viewerToolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Share')).toBe(false, `Share is displayed in More actions`);
expect(await viewerToolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed`);
expect(await viewerToolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed`);
expect(await viewerToolbar.menu.isSharePresent()).toBe(false, `Share is displayed in More actions`);
expect(await viewerToolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed`);
// TODO: enable when ACA-1737 is done
// expect(await viewerToolbar.menu.isMenuItemPresent('Move')).toBe(false, `Move is displayed`);
// expect(await viewerToolbar.menu.isMenuItemPresent('Delete')).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Manage Versions')).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isMenuItemPresent('Permissions')).toBe(false, `Permissions is displayed`);
// expect(await viewerToolbar.menu.isMovePresent()).toBe(false, `Move is displayed`);
// expect(await viewerToolbar.menu.isDeletePresent()).toBe(false, `Delete is displayed`);
expect(await viewerToolbar.menu.isManageVersionsPresent()).toBe(true, `Manage versions is displayed`);
expect(await viewerToolbar.menu.isManagePermissionsPresent()).toBe(false, `Permissions is displayed`);
await toolbar.closeMoreMenu();
});
});
@@ -144,40 +144,40 @@ describe('Toolbar actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C217112]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
it('correct actions appear when multiple folders are selected - [C280459]', async () => {
await dataTable.selectMultipleItems([folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
it('correct actions appear when both files and folders are selected - [C280460]', async () => {
await dataTable.selectMultipleItems([file1, file2, folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
await toolbar.closeMoreMenu();
});
});
@@ -194,38 +194,38 @@ describe('Toolbar actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280461]', async () => {
await dataTable.selectMultipleItems([file1InSite, file2InSite]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed for selected files');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed for selected files');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed for selected files');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed for selected files');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
it('correct actions appear when multiple folders are selected - [C280462]', async () => {
await dataTable.selectMultipleItems([folder1InSite, folder2InSite]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
it('correct actions appear when both files and folders are selected - [C280463]', async () => {
await dataTable.selectMultipleItems([file1InSite, file2InSite, folder1InSite, folder2InSite]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
});
@@ -240,14 +240,14 @@ describe('Toolbar actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280467]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed for selected files');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed for selected files');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
});
@@ -261,14 +261,14 @@ describe('Toolbar actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280468]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
});
@@ -283,38 +283,38 @@ describe('Toolbar actions - multiple selection : ', () => {
it('correct actions appear when multiple files are selected - [C280469]', async () => {
await dataTable.selectMultipleItems([file1, file2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
it('correct actions appear when multiple folders are selected - [C280470]', async () => {
await dataTable.selectMultipleItems([folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
it('correct actions appear when both files and folders are selected - [C280471]', async () => {
await dataTable.selectMultipleItems([file1, file2, folder1, folder2]);
expect(await toolbar.isButtonPresent('View')).toBe(false, 'View is displayed');
expect(await toolbar.isButtonPresent('Download')).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isButtonPresent('Edit')).toBe(false, 'Edit is displayed');
expect(await toolbar.isViewPresent()).toBe(false, 'View is displayed');
expect(await toolbar.isDownloadPresent()).toBe(true, 'Download is not displayed for selected files');
expect(await toolbar.isEditPresent()).toBe(false, 'Edit is displayed');
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for selected files`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for selected files`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for selected files`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for selected files`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for selected files`);
});
});
@@ -128,28 +128,28 @@ describe('Toolbar actions - single selection : ', () => {
it('correct actions appear when a file is selected - [C213122]', async () => {
await dataTable.selectItem(fileUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
await toolbar.closeMoreMenu();
});
it('correct actions appear when a folder is selected - [C213123]', async () => {
await dataTable.selectItem(folderUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isEditPresent()).toBe(true, `Edit is not displayed for ${folderUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderUser}`);
await toolbar.closeMoreMenu();
});
});
@@ -171,28 +171,28 @@ describe('Toolbar actions - single selection : ', () => {
it('correct actions appear when a file is selected - [C280440]', async () => {
await dataTable.selectItem(fileInSite);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${fileInSite}`);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${fileInSite}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${fileInSite}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${fileInSite}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${fileInSite}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileInSite}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${fileInSite}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${fileInSite}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileInSite}`);
await toolbar.closeMoreMenu();
});
it('correct actions appear when a folder is selected - [C280441]', async () => {
await dataTable.selectItem(folderInSite);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderInSite}`);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for ${folderInSite}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not enabled for ${folderInSite}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(true, `Edit is not displayed for ${folderInSite}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderInSite}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderInSite}`);
expect(await toolbar.isEditPresent()).toBe(true, `Edit is not displayed for ${folderInSite}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderInSite}`);
await toolbar.closeMoreMenu();
});
});
@@ -208,44 +208,44 @@ describe('Toolbar actions - single selection : ', () => {
await page.goToMyLibraries();
await dataTable.selectItem(siteName);
expect(await toolbar.isEmpty()).toBe(false, 'toolbar not displayed');
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${siteName}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${siteName}`);
expect(await toolbar.isButtonPresent('Leave library')).toBe(true, `Leave is not displayed for ${siteName}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${siteName}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${siteName}`);
});
it('Available actions when a library is selected - Favorite Libraries - user is a member - [C289892]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(siteName);
expect(await toolbar.isEmpty()).toBe(false, 'toolbar not displayed');
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${siteName}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${siteName}`);
expect(await toolbar.isButtonPresent('Leave library')).toBe(true, `Leave is not displayed for ${siteName}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${siteName}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${siteName}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${siteName}`);
});
it('Available actions when a library is selected - Favorite Libraries - user is not a member - [C290090]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(adminPublic);
expect(await toolbar.isEmpty()).toBe(false, 'toolbar not displayed');
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${adminPublic}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${adminPublic}`);
expect(await toolbar.isButtonPresent('Join')).toBe(true, `Join is not displayed for ${adminPublic}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${adminPublic}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${adminPublic}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${adminPublic}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${adminPublic}`);
});
it('Available actions when a library is selected - Favorite Libraries - user requested to join - [C290091]', async () => {
await page.goToFavoriteLibraries();
await dataTable.selectItem(adminModerated);
expect(await toolbar.isEmpty()).toBe(false, 'toolbar not displayed');
expect(await toolbar.isButtonPresent('View details')).toBe(true, `View details is not displayed for ${adminModerated}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${adminModerated}`);
expect(await toolbar.isButtonPresent('Cancel join request')).toBe(true, `Cancel join is not displayed for ${adminModerated}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${adminModerated}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${adminModerated}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${adminModerated}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${adminModerated}`);
});
});
@@ -264,15 +264,15 @@ describe('Toolbar actions - single selection : ', () => {
it('correct actions appear when a file is selected - [C286265]', async () => {
await page.dataTable.selectItem(fileUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await toolbar.isShareEditButtonPresent()).toBe(true, `Shared link settings is not displayed for ${fileUser}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await toolbar.isSharedLinkSettingsPresent()).toBe(true, `Shared link settings is not displayed for ${fileUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
await toolbar.closeMoreMenu();
});
});
@@ -292,14 +292,14 @@ describe('Toolbar actions - single selection : ', () => {
it('correct actions appear when a file is selected - [C280448]', async () => {
await dataTable.selectItem(fileUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
await toolbar.closeMoreMenu();
});
});
@@ -319,28 +319,28 @@ describe('Toolbar actions - single selection : ', () => {
it('correct actions appear when a file is selected - [C280450]', async () => {
await dataTable.selectItem(fileUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(false, `Edit is displayed for ${fileUser}`);
expect(await toolbar.isViewPresent()).toBe(true, `View is not displayed for ${fileUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${fileUser}`);
expect(await toolbar.isEditPresent()).toBe(false, `Edit is displayed for ${fileUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${fileUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${fileUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${fileUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${fileUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${fileUser}`);
await toolbar.closeMoreMenu();
});
it('correct actions appear when a folder is selected - [C280451]', async () => {
await dataTable.selectItem(folderUser);
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`);
expect(await toolbar.isButtonPresent('View')).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isButtonPresent('Download')).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isButtonPresent('Edit')).toBe(true, `Edit is not displayed for ${folderUser}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isEditPresent()).toBe(true, `Edit is not displayed for ${folderUser}`);
await toolbar.openMoreMenu();
expect(await toolbar.menu.isMenuItemPresent('Copy')).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Delete')).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Move')).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMenuItemPresent('Favorite')).toBe(true, `Favorite is not displayed for ${folderUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
expect(await toolbar.menu.isDeletePresent()).toBe(true, `Delete is not displayed for ${folderUser}`);
expect(await toolbar.menu.isMovePresent()).toBe(true, `Move is not displayed for ${folderUser}`);
expect(await toolbar.menu.isFavoritePresent()).toBe(true, `Favorite is not displayed for ${folderUser}`);
await toolbar.closeMoreMenu();
});
});
+67 -67
View File
@@ -106,7 +106,7 @@ describe('Unshare a file', () => {
it('Unshare dialog UI - [C286339]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
@@ -115,18 +115,18 @@ describe('Unshare a file', () => {
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Unshare dialog is not open');
expect(await confirmDialog.getTitle()).toContain('Remove this shared link');
expect(await confirmDialog.getText()).toContain('This link will be deleted and a new link will be created next time this file is shared');
expect(await confirmDialog.isButtonEnabled('Remove')).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'CANCEL button is not enabled');
expect(await confirmDialog.isRemoveEnabled()).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'CANCEL button is not enabled');
});
it('Unshare a file - [C286340]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -134,7 +134,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -145,13 +145,13 @@ describe('Unshare a file', () => {
it('Cancel the Unshare action - [C286341]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const urlBefore = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Cancel');
await confirmDialog.clickCancel();
await confirmDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(true, 'Share dialog not open');
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle is off');
@@ -162,12 +162,12 @@ describe('Unshare a file', () => {
it('Unshare a file from the context menu - [C286359]', async () => {
await dataTable.rightClickOnItem(file4);
await contextMenu.clickShareEditAction();
await contextMenu.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -175,7 +175,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, `${file4} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file4)).toBe(false, `${file4} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -235,7 +235,7 @@ describe('Unshare a file', () => {
it('Unshare dialog UI - [C286679]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
@@ -244,18 +244,18 @@ describe('Unshare a file', () => {
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Unshare dialog is not open');
expect(await confirmDialog.getTitle()).toContain('Remove this shared link');
expect(await confirmDialog.getText()).toContain('This link will be deleted and a new link will be created next time this file is shared');
expect(await confirmDialog.isButtonEnabled('Remove')).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'CANCEL button is not enabled');
expect(await confirmDialog.isRemoveEnabled()).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'CANCEL button is not enabled');
});
it('Unshare a file - [C286680]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -263,7 +263,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -274,13 +274,13 @@ describe('Unshare a file', () => {
it('Cancel the Unshare action - [C286681]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const urlBefore = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Cancel');
await confirmDialog.clickCancel();
await confirmDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(true, 'Share dialog not open');
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle is off');
@@ -291,12 +291,12 @@ describe('Unshare a file', () => {
it('Unshare a file from the context menu - [C286683]', async () => {
await dataTable.rightClickOnItem(file4);
await contextMenu.clickShareEditAction();
await contextMenu.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -304,7 +304,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, `${file4} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file4)).toBe(false, `${file4} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -356,7 +356,7 @@ describe('Unshare a file', () => {
it('Unshare dialog UI - [C286689]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
@@ -365,18 +365,18 @@ describe('Unshare a file', () => {
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Unshare dialog is not open');
expect(await confirmDialog.getTitle()).toContain('Remove this shared link');
expect(await confirmDialog.getText()).toContain('This link will be deleted and a new link will be created next time this file is shared');
expect(await confirmDialog.isButtonEnabled('Remove')).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'CANCEL button is not enabled');
expect(await confirmDialog.isRemoveEnabled()).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'CANCEL button is not enabled');
});
it('Unshare a file - [C286690]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -384,7 +384,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -395,13 +395,13 @@ describe('Unshare a file', () => {
it('Cancel the Unshare action - [C286691]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const urlBefore = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Cancel');
await confirmDialog.clickCancel();
await confirmDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(true, 'Share dialog not open');
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle is off');
@@ -412,12 +412,12 @@ describe('Unshare a file', () => {
it('Unshare a file from the context menu - [C286693]', async () => {
await dataTable.rightClickOnItem(file4);
await contextMenu.clickShareEditAction();
await contextMenu.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -425,7 +425,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, `${file4} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file4)).toBe(false, `${file4} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -477,7 +477,7 @@ describe('Unshare a file', () => {
it('Unshare dialog UI - [C286684]', async () => {
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
@@ -486,25 +486,25 @@ describe('Unshare a file', () => {
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Unshare dialog is not open');
expect(await confirmDialog.getTitle()).toContain('Remove this shared link');
expect(await confirmDialog.getText()).toContain('This link will be deleted and a new link will be created next time this file is shared');
expect(await confirmDialog.isButtonEnabled('Remove')).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'CANCEL button is not enabled');
expect(await confirmDialog.isRemoveEnabled()).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'CANCEL button is not enabled');
});
it('Unshare a file - [C286685]', async () => {
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
expect(await apis.user.nodes.isFileShared(file2Id)).toBe(false, `${file2} is shared`);
// TODO: disable check cause api is slow to update
// expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -515,13 +515,13 @@ describe('Unshare a file', () => {
it('Cancel the Unshare action - [C286686]', async () => {
await dataTable.selectItem(file3);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const urlBefore = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Cancel');
await confirmDialog.clickCancel();
await confirmDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(true, 'Share dialog not open');
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle is off');
@@ -532,19 +532,19 @@ describe('Unshare a file', () => {
it('Unshare a file from the context menu - [C286688]', async () => {
await dataTable.rightClickOnItem(file4);
await contextMenu.clickShareEditAction();
await contextMenu.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
expect(await apis.user.nodes.isFileShared(file4Id)).toBe(false, `${file4} is shared`);
// TODO: disable check cause api is slow to update
// expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, `${file4} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file4)).toBe(false, `${file4} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -604,8 +604,8 @@ describe('Unshare a file', () => {
it('Unshare dialog UI - [C286694]', async () => {
await dataTable.selectItem(file1);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await toolbar.clickShareButton();
// await toolbar.clickSharedLinkSettings();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle not checked');
@@ -614,20 +614,20 @@ describe('Unshare a file', () => {
expect(await confirmDialog.isDialogOpen()).toBe(true, 'Unshare dialog is not open');
expect(await confirmDialog.getTitle()).toContain('Remove this shared link');
expect(await confirmDialog.getText()).toContain('This link will be deleted and a new link will be created next time this file is shared');
expect(await confirmDialog.isButtonEnabled('Remove')).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isButtonEnabled('Cancel')).toBe(true, 'CANCEL button is not enabled');
expect(await confirmDialog.isRemoveEnabled()).toBe(true, 'REMOVE button is not enabled');
expect(await confirmDialog.isCancelEnabled()).toBe(true, 'CANCEL button is not enabled');
});
it('Unshare a file - [C286695]', async () => {
await dataTable.selectItem(file2);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await toolbar.clickShareButton();
// await toolbar.clickSharedLinkSettings();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -635,7 +635,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file2).isPresent()).toBe(false, `${file2} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file2)).toBe(false, `${file2} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -647,14 +647,14 @@ describe('Unshare a file', () => {
it('Cancel the Unshare action - [C286696]', async () => {
await dataTable.selectItem(file3);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await toolbar.clickShareButton();
// await toolbar.clickSharedLinkSettings();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
const urlBefore = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Cancel');
await confirmDialog.clickCancel();
await confirmDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(true, 'Share dialog not open');
expect(await shareDialog.isShareToggleChecked()).toBe(true, 'Share toggle is off');
@@ -666,13 +666,13 @@ describe('Unshare a file', () => {
it('Unshare a file from the context menu - [C286698]', async () => {
await dataTable.rightClickOnItem(file4);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await contextMenu.clickShareAction();
// await toolbar.clickSharedLinkSettings();
await contextMenu.clickShare();
await shareDialog.waitForDialogToOpen();
const url = await shareDialog.getLinkUrl();
await shareDialog.clickShareToggle();
await confirmDialog.clickButton('Remove');
await confirmDialog.clickRemove();
await confirmDialog.waitForDialogToClose();
await shareDialog.waitForDialogToClose();
expect(await shareDialog.isDialogOpen()).toBe(false, 'Share dialog open');
@@ -680,7 +680,7 @@ describe('Unshare a file', () => {
// TODO: disable check cause api is slow to update
// await page.clickSharedFiles();
// expect(await dataTable.getRowByName(file4).isPresent()).toBe(false, `${file4} is in the Shared files list`);
// expect(await dataTable.isItemPresent(file4)).toBe(false, `${file4} is in the Shared files list`);
await browser.get(url);
expect(await viewer.isViewerOpened()).toBe(true, 'viewer is not open');
@@ -737,7 +737,7 @@ describe('Unshare a file', () => {
await dataTable.doubleClickOnRowByName(sitePrivate);
await dataTable.waitForHeader();
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');
@@ -748,7 +748,7 @@ describe('Unshare a file', () => {
await dataTable.doubleClickOnRowByName(sitePrivate);
await dataTable.waitForHeader();
await dataTable.selectItem(file2);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');
@@ -757,7 +757,7 @@ describe('Unshare a file', () => {
it('on Shared Files - file shared by other user - [C286687]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');
@@ -766,7 +766,7 @@ describe('Unshare a file', () => {
it('on Shared Files - file shared by the user - [C286702]', async () => {
await page.clickSharedFilesAndWait();
await dataTable.selectItem(file1);
await toolbar.clickShareEditButton();
await toolbar.clickSharedLinkSettings();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');
@@ -776,8 +776,8 @@ describe('Unshare a file', () => {
await page.clickFavoritesAndWait();
await dataTable.selectItem(file1);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await toolbar.clickShareButton();
// await toolbar.clickSharedLinkSettings();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');
@@ -787,8 +787,8 @@ describe('Unshare a file', () => {
await page.clickFavoritesAndWait();
await dataTable.selectItem(file1);
// TODO: remove workaround for favorites
// await toolbar.clickShareEditButton();
await toolbar.clickShareButton();
// await toolbar.clickSharedLinkSettings();
await toolbar.clickShare();
await shareDialog.waitForDialogToOpen();
expect(await shareDialog.isShareToggleDisabled()).toBe(false, 'Share toggle enabled for consumer');