[ACS-10475] [Search] UX improvements for search (#5042)

This commit is contained in:
Dominik Iwanek
2026-03-13 16:18:55 +01:00
committed by GitHub
parent 683eab8be4
commit b2f1245c7d
60 changed files with 1640 additions and 1525 deletions
@@ -85,34 +85,34 @@ test.describe('Copy actions', () => {
test('[XAT-4941] Copy a file', async ({ personalFiles }) => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFile);
await copyContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4942] Copy a folder with content', async ({ personalFiles }) => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
});
test('[XAT-4943] Copy multiple items', async ({ personalFiles }) => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder, sourceFile], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4944] Copy a file with a name that already exists on the destination', async ({ personalFiles }) => {
@@ -120,11 +120,11 @@ test.describe('Copy actions', () => {
const expectedNameForCopiedFile = sourceFile.replace('.', '-1.');
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFile);
await copyContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(true);
});
test('[XAT-4945] Copy a folder with a name that already exists on the destination', async ({ personalFiles }) => {
@@ -133,14 +133,14 @@ test.describe('Copy actions', () => {
const expectedNameForCopiedFile = sourceFileInsideFolder.replace('.', '-1.');
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(true);
});
test('[XAT-4947] Copy locked file', async ({ personalFiles }) => {
@@ -148,10 +148,10 @@ test.describe('Copy actions', () => {
await nodesApi.lockNodes([sourceFileId], lockType);
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFile);
await copyContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4948] Copy folder that contains locked file', async ({ personalFiles }) => {
@@ -159,33 +159,33 @@ test.describe('Copy actions', () => {
await nodesApi.lockNodes([sourceFileInsideFolderId], lockType);
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
});
test('[XAT-4949] Undo copy of files', async ({ personalFiles }) => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFile);
await copyContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
await personalFiles.snackBar.actionButton.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(false);
});
test('[XAT-4950] Undo copy of folders', async ({ personalFiles }) => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
await personalFiles.snackBar.actionButton.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(false);
});
test('[XAT-4951] Undo copy of a file when a file with same name already exists on the destination', async ({ personalFiles }) => {
@@ -194,11 +194,11 @@ test.describe('Copy actions', () => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFile);
await copyContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
await personalFiles.snackBar.actionButton.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(false);
});
test('[XAT-4952] Undo copy of a folder when a folder with same name already exists on the destination', async ({ personalFiles }) => {
@@ -208,13 +208,13 @@ test.describe('Copy actions', () => {
await Utils.reloadPageIfRowNotVisible(personalFiles, sourceFolder);
await copyContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
await personalFiles.snackBar.actionButton.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(false);
});
});
@@ -80,9 +80,9 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Moved 1 item.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(false);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4998] Move multiple items', async ({ personalFiles }) => {
@@ -91,11 +91,11 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Moved 2 items.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(false);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(false);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4999] Move a file with a name that already exists on the destination', async ({ personalFiles }) => {
@@ -106,10 +106,10 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Move unsuccessful, a file with the same name already exists.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(false);
});
test('[XAT-5000] Move a folder with a name that already exists on the destination', async ({ personalFiles }) => {
@@ -121,12 +121,12 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Move unsuccessful, a file with the same name already exists.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(expectedNameForCopiedFile)).toBe(false);
});
test('[XAT-4989] Move locked file', async ({ personalFiles }) => {
@@ -137,9 +137,9 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Moved 1 item.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(false);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
});
test('[XAT-4992] Undo move files', async ({ personalFiles, trashPage }) => {
@@ -147,11 +147,11 @@ test.describe('Move actions', () => {
await moveContentInPersonalFiles(personalFiles, [sourceFile], destinationFolder);
await personalFiles.snackBar.actionButton.click();
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFile)).toBe(false);
await trashPage.navigate();
expect(await trashPage.dataTable.isItemPresent(sourceFile)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(sourceFile)).toBe(false);
});
test('[XAT-4993] Undo move folder', async ({ personalFiles, trashPage }) => {
@@ -159,11 +159,11 @@ test.describe('Move actions', () => {
await moveContentInPersonalFiles(personalFiles, [sourceFolder], destinationFolder);
await personalFiles.snackBar.actionButton.click();
await personalFiles.spinner.waitForReload();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(false);
await trashPage.navigate();
expect(await trashPage.dataTable.isItemPresent(sourceFolder)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(sourceFolder)).toBe(false);
});
async function moveFolderWithContent(personalFiles: PersonalFilesPage, lockedFile: boolean) {
@@ -176,11 +176,11 @@ test.describe('Move actions', () => {
const msg = await personalFiles.snackBar.message.innerText();
expect.soft(msg).toContain('Moved 1 item.');
await personalFiles.snackBar.closeIcon.click();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeFalsy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(false);
await personalFiles.dataTable.performClickFolderOrFileToOpen(destinationFolder);
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBeTruthy();
expect.soft(await personalFiles.dataTable.isItemPresent(sourceFolder)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(sourceFolder);
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(sourceFileInsideFolder)).toBe(true);
}
[
@@ -128,11 +128,11 @@ test.describe('Delete and undo delete', () => {
const action = await personalFiles.snackBar.getSnackBarActionText();
expect(action).toContain('Undo');
await personalFiles.snackBar.closeIcon.click();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBe(false);
items--;
expect(await personalFiles.pagination.getMaxRange()).toEqual(` Showing 1-${items} of ${items} `);
await trashPage.navigate();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBe(true);
});
test('[XAT-5017] Delete multiple files and check snackbar notification', async ({ personalFiles, trashPage }) => {
@@ -147,11 +147,11 @@ test.describe('Delete and undo delete', () => {
await personalFiles.matMenu.clickMenuItem('Delete');
await personalFiles.snackBar.verifySnackBarActionText(`Deleted 2 items`);
await personalFiles.snackBar.closeIcon.click();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(file3)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBe(false);
expect(await personalFiles.dataTable.isItemPresent(file3)).toBe(false);
await trashPage.navigate();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file3)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(file3)).toBe(true);
});
test('[XAT-5018] Delete a folder with content', async ({ personalFiles, trashPage }) => {
@@ -160,12 +160,12 @@ test.describe('Delete and undo delete', () => {
await personalFiles.acaHeader.clickMoreActions();
await personalFiles.matMenu.clickMenuItem('Delete');
await personalFiles.snackBar.closeIcon.click();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBe(false);
items--;
expect(await personalFiles.pagination.getMaxRange()).toEqual(` Showing 1-${items} of ${items} `);
await trashPage.navigate();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file1InFolder)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(file1InFolder)).toBe(false);
});
test(`[XAT-5019] Delete a folder containing files that can't be deleted (e.g. locked files)`, async ({ personalFiles, trashPage }) => {
@@ -174,10 +174,10 @@ test.describe('Delete and undo delete', () => {
await personalFiles.matMenu.clickMenuItem('Delete');
await personalFiles.snackBar.verifySnackBarActionText(`${folder2} couldn't be deleted`);
await expect(personalFiles.snackBar.actionButton).toBeHidden();
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBe(true);
await trashPage.navigate();
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(fileLocked1)).toBeFalsy();
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBe(false);
expect(await personalFiles.dataTable.isItemPresent(fileLocked1)).toBe(false);
});
test('[XAT-5020] Notification on unsuccessful multiple items deletion - some items fail to delete', async ({ personalFiles }) => {
@@ -206,7 +206,7 @@ test.describe('Delete and undo delete', () => {
await personalFiles.snackBar.clickSnackBarAction();
await personalFiles.dataTable.spinnerWaitForReload();
expect(await personalFiles.dataTable.isItemPresent(file5)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file5)).toBe(true);
expect(await personalFiles.pagination.getRange()).toContain(`1-${items} of ${items}`);
});
@@ -216,10 +216,10 @@ test.describe('Delete and undo delete', () => {
await personalFiles.matMenu.clickMenuItem('Delete');
await personalFiles.snackBar.clickSnackBarAction();
await personalFiles.dataTable.spinnerWaitForReload();
expect(await personalFiles.dataTable.isItemPresent(folder6)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folder6)).toBe(true);
await personalFiles.dataTable.performClickFolderOrFileToOpen(folder6);
await personalFiles.dataTable.spinnerWaitForReload();
expect(await personalFiles.dataTable.isItemPresent(file2InFolder)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file2InFolder)).toBe(true);
});
test('[XAT-5023] Undo delete of multiple files restores all of the files', async ({ personalFiles }) => {
@@ -228,8 +228,8 @@ test.describe('Delete and undo delete', () => {
await personalFiles.matMenu.clickMenuItem('Delete');
await personalFiles.snackBar.clickSnackBarAction();
await personalFiles.dataTable.spinnerWaitForReload();
expect(await personalFiles.dataTable.isItemPresent(file6)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file7)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file6)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(file7)).toBe(true);
});
});
});
@@ -85,7 +85,7 @@ test.describe('Delete and undo delete', () => {
await trashPage.deleteDialog.deleteButton.click();
await trashPage.snackBar.verifySnackBarActionText(`${file1} deleted`);
expect(await trashPage.dataTable.isItemPresent(file1)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(file1)).toBe(false);
});
test('[XAT-5104] Permanently delete a folder', async ({ trashPage }) => {
@@ -94,7 +94,7 @@ test.describe('Delete and undo delete', () => {
await trashPage.deleteDialog.deleteButton.click();
await trashPage.snackBar.verifySnackBarActionText(`${folder1} deleted`);
expect(await trashPage.dataTable.isItemPresent(folder1)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(folder1)).toBe(false);
});
test('[XAT-5108] Permanently delete a library', async ({ trashPage }) => {
@@ -103,7 +103,7 @@ test.describe('Delete and undo delete', () => {
await trashPage.deleteDialog.deleteButton.click();
await trashPage.snackBar.verifySnackBarActionText(`${site} deleted`);
expect(await trashPage.dataTable.isItemPresent(site)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(site)).toBe(false);
});
test('[XAT-5105] Permanently delete multiple items', async ({ trashPage }) => {
@@ -112,8 +112,8 @@ test.describe('Delete and undo delete', () => {
await trashPage.deleteDialog.deleteButton.click();
await trashPage.snackBar.verifySnackBarActionText(`2 items deleted`);
expect(await trashPage.dataTable.isItemPresent(file2)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(folder2)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(file2)).toBe(false);
expect(await trashPage.dataTable.isItemPresent(folder2)).toBe(false);
});
test('[XAT-5106] Permanently delete - Confirmation dialog UI', async ({ trashPage }) => {
@@ -121,11 +121,11 @@ test.describe('Delete and undo delete', () => {
await trashPage.acaHeader.permanentlyDeleteButton.click();
await trashPage.deleteDialog.waitForDialog();
expect(await trashPage.deleteDialog.isDialogOpen()).toBeTruthy();
expect(await trashPage.deleteDialog.isDialogOpen()).toBe(true);
expect(await trashPage.deleteDialog.getDialogTitle()).toContain('Delete from trash');
expect(await trashPage.deleteDialog.getDialogDescription()).toContain('This will permanently remove the selected item(s)');
expect(await trashPage.deleteDialog.isDeleteEnabled()).toBeTruthy();
expect(await trashPage.deleteDialog.isKeepEnabled()).toBeTruthy();
expect(await trashPage.deleteDialog.isDeleteEnabled()).toBe(true);
expect(await trashPage.deleteDialog.isKeepEnabled()).toBe(true);
});
test('[XAT-5107] ""Keep"" action cancels the deletion', async ({ trashPage }) => {
@@ -133,9 +133,9 @@ test.describe('Delete and undo delete', () => {
await trashPage.acaHeader.permanentlyDeleteButton.click();
await trashPage.deleteDialog.waitForDialog();
expect(await trashPage.deleteDialog.isKeepEnabled()).toBeTruthy();
expect(await trashPage.deleteDialog.isKeepEnabled()).toBe(true);
await trashPage.deleteDialog.keepButton.click();
expect(await trashPage.dataTable.isItemPresent(file3)).toBeTruthy();
expect(await trashPage.dataTable.isItemPresent(file3)).toBe(true);
});
});
});
@@ -88,25 +88,25 @@ test.describe('Restore from Trash', () => {
await trashPage.snackBar.verifySnackBarActionText(`${nodeName} restored`);
const action = await trashPage.snackBar.getSnackBarActionText();
expect(action).toContain('View');
expect(await trashPage.dataTable.isItemPresent(nodeName)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(nodeName)).toBe(false);
}
test('[XAT-5109] Restore file', async ({ trashPage, personalFiles }) => {
await restoreNode(trashPage, file1);
await personalFiles.navigate();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file1)).toBe(true);
});
test('[XAT-5110] Restore folder', async ({ trashPage, personalFiles }) => {
await restoreNode(trashPage, folder1);
await personalFiles.navigate();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folder1)).toBe(true);
});
test('[XAT-5117] Restore library', async ({ trashPage, myLibrariesPage }) => {
await restoreNode(trashPage, site1);
await myLibrariesPage.navigate();
expect(await myLibrariesPage.dataTable.isItemPresent(site1)).toBeTruthy();
expect(await myLibrariesPage.dataTable.isItemPresent(site1)).toBe(true);
});
test('[XAT-5111] Restore multiple items', async ({ trashPage, personalFiles }) => {
@@ -115,11 +115,11 @@ test.describe('Restore from Trash', () => {
await trashPage.snackBar.verifySnackBarActionText(`Restore successful`);
const action = await trashPage.snackBar.getSnackBarActionText();
expect(action).not.toContain('View');
expect(await trashPage.dataTable.isItemPresent(file2)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(folder2)).toBeFalsy();
expect(await trashPage.dataTable.isItemPresent(file2)).toBe(false);
expect(await trashPage.dataTable.isItemPresent(folder2)).toBe(false);
await personalFiles.navigate();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(file2)).toBe(true);
expect(await personalFiles.dataTable.isItemPresent(folder2)).toBe(true);
});
test('[XAT-5112] Restore file - View from notification', async ({ trashPage, personalFiles }) => {
@@ -127,7 +127,7 @@ test.describe('Restore from Trash', () => {
await trashPage.acaHeader.restoreButton.click();
await trashPage.snackBar.clickSnackBarAction();
await trashPage.dataTable.spinnerWaitForReload();
expect(await trashPage.sidenav.isActive('Personal Files')).toBeTruthy();
expect(await trashPage.sidenav.isActive('Personal Files')).toBe(true);
expect(personalFiles.page.url()).toContain(APP_ROUTES.PERSONAL_FILES);
});
});
@@ -92,7 +92,7 @@ test.describe('Edit folder', () => {
await personalFiles.editDialog.updateButton.click();
await expect(personalFiles.editDialog.editDialog).toBeHidden();
expect(await personalFiles.dataTable.isItemPresent(folderNameEdited)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folderNameEdited)).toBe(true);
const description = await nodesApi.getNodeProperty(folderNameToEditId, 'cm:description');
expect(description).toEqual(folderDescriptionEdited);
});
@@ -159,7 +159,7 @@ test.describe('Edit folder', () => {
await personalFiles.editDialog.updateButton.click();
await expect(personalFiles.editDialog.editDialog).toBeHidden();
expect(await personalFiles.dataTable.isItemPresent(folderName)).toBeTruthy();
expect(await personalFiles.dataTable.isItemPresent(folderName)).toBe(true);
});
});
});
@@ -117,7 +117,7 @@ test.describe('Folder Rules Actions', () => {
await nodesPage.rulesToolbar.clickCreateRuleButton();
await expect(nodesPage.manageRulesDialog.createRuleButton).toBeDisabled();
await nodesPage.manageRulesDialog.cancelRuleButton.click();
expect(nodesPage.manageRules.checkIfRuleListEmpty()).toBeTruthy();
expect(await nodesPage.manageRules.checkIfRuleListEmpty()).toBe(true);
});
test('[XAT-887] Create a disabled rule', async ({ personalFiles, nodesPage }) => {
@@ -380,10 +380,7 @@ test.describe('Library actions ', () => {
const myLibrariesHeader = myLibrariesPage.acaHeader;
const libraryMenu = myLibrariesPage.matMenu;
await myLibrariesHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.searchLibrariesOption.click();
await searchPage.searchOverlay.searchFor(adminLibrary4);
await searchPage.searchWithin(adminLibrary4, 'libraries');
await expect(libraryTable.getRowByName(adminLibrary4)).toBeVisible();
await libraryTable.getRowByName(adminLibrary4).click();
@@ -397,10 +394,7 @@ test.describe('Library actions ', () => {
const searchHeader = searchPage.acaHeader;
const libraryMenu = searchPage.matMenu;
await searchHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.searchLibrariesOption.click();
await searchPage.searchOverlay.searchFor(user2Library4);
await searchPage.searchWithin(user2Library4, 'libraries');
await expect(libraryTable.getRowByName(user2Library4)).toBeVisible();
await searchPage.reload({ waitUntil: domContentLoadedString });
await libraryTable.getRowByName(user2Library4).click();
@@ -51,12 +51,12 @@ test.describe('Empty list views', () => {
async function checkPaginationForTabs(searchPage: SearchPage, tab: string, personalFiles: PersonalFilesPage) {
await searchPage.sidenav.openPanel(tab);
expect(await personalFiles.pagination.isRangePresent()).toBeFalsy();
expect(await personalFiles.pagination.isMaxItemsPresent()).toBeFalsy();
expect(await personalFiles.pagination.isCurrentPagePresent()).toBeFalsy();
expect(await personalFiles.pagination.isTotalPagesPresent()).toBeFalsy();
expect(await personalFiles.pagination.isPreviousButtonPresent()).toBeFalsy();
expect(await personalFiles.pagination.isNextButtonPresent()).toBeFalsy();
expect(await personalFiles.pagination.isRangePresent()).toBe(false);
expect(await personalFiles.pagination.isMaxItemsPresent()).toBe(false);
expect(await personalFiles.pagination.isCurrentPagePresent()).toBe(false);
expect(await personalFiles.pagination.isTotalPagesPresent()).toBe(false);
expect(await personalFiles.pagination.isPreviousButtonPresent()).toBe(false);
expect(await personalFiles.pagination.isNextButtonPresent()).toBe(false);
}
test('[XAT-4402] Empty My Libraries', async ({ myLibrariesPage }) => {
@@ -99,10 +99,7 @@ test.describe('Empty list views', () => {
});
test('[XAT-4590] Search Page - Pagination control is not displayed on empty page load', async ({ personalFiles, searchPage }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor('InvalidText');
await searchPage.searchWithin('InvalidText', 'filesAndFolders');
await searchPage.reload({ waitUntil: 'domcontentloaded' });
await searchPage.dataTable.spinnerWaitForReload();
@@ -120,12 +120,8 @@ test.describe('Special permissions', () => {
await expect(sharedPage.dataTable.getRowByName(sitePrivate)).toHaveCount(0);
});
test('[XAT-17775] Search - File is not displayed if the user no longer has permissions on it', async ({ personalFiles, searchPage }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(fileName);
await searchPage.dataTable.spinnerWaitForReload();
test('[XAT-17775] Search - File is not displayed if the user no longer has permissions on it', async ({ searchPage }) => {
await searchPage.searchWithin(fileName, 'filesAndFolders');
expect(await searchPage.dataTable.getRowsCount(), 'Incorrect number of items').toBe(1);
@@ -204,14 +200,9 @@ test.describe('Special permissions', () => {
});
test(`[XAT-5612] Search Page - Location column is empty if the user doesn't have permissions on the file's parent folder`, async ({
personalFiles,
searchPage
}) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(fileName);
await searchPage.dataTable.spinnerWaitForReload();
await searchPage.searchWithin(fileName, 'filesAndFolders');
expect(await searchPage.dataTable.getRowsCount(), 'Incorrect number of items').toBe(1);
expect(await searchPage.dataTable.getItemLocationText(fileName)).toContain('You do not have permission to view the location of this document.');
@@ -46,11 +46,11 @@ test.describe('Sidebar', () => {
expect(await myLibrariesPage.sidenav.isActive(SIDEBAR_LABELS.MY_LIBRARIES), 'My Libraries link not active').toBe(true);
});
test('[XAT-5387] The sidenav can be expanded when search results page is displayed', async ({ personalFiles }) => {
test('[XAT-5387] The sidenav can be collapsed when search results page is displayed', async ({ personalFiles }) => {
await personalFiles.navigate({ remoteUrl: `#/search;q=test` });
await expect(personalFiles.sidenav.expandedSidenav, 'Sidebar expanded').toBeHidden();
await personalFiles.sidenav.expandSideNav();
await expect(personalFiles.sidenav.expandedSidenav, 'Sidebar not expanded').toBeVisible();
await expect(personalFiles.sidenav.expandedSidenav, 'Sidebar expanded').toBeVisible();
await personalFiles.sidenav.collapseSideNav();
await expect(personalFiles.sidenav.expandedSidenav, 'Sidebar not collapsed').toBeHidden();
});
test('[XAT-5384] Sidenav state is preserved on page refresh', async ({ personalFiles }) => {
@@ -79,7 +79,7 @@ test.describe('Sidebar', () => {
searchPage
}) => {
await personalFiles.navigate({ remoteUrl: `#/search;q=test` });
await searchPage.searchInput.searchCloseButton.click();
await searchPage.searchInputComponent.searchCloseButton.click();
await searchPage.sidenav.expandedSidenav.waitFor({ state: 'attached' });
await expect(personalFiles.sidenav.expandedSidenav, 'Sidebar not expanded').toBeVisible();
});
@@ -44,50 +44,31 @@ test.describe('Search - Input', () => {
test('[XAT-5563] Search icon is displayed in toolbar and clicking on it displays search input container', async ({ searchPage }) => {
await searchPage.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await expect(searchPage.searchOverlay.searchInputControl).toBeVisible();
await expect(searchPage.searchInputComponent.searchInput).toBeVisible();
});
test('[XAT-5564] Search options are displayed when clicking in the search input', async ({ searchPage }) => {
await searchPage.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchInputComponent.searchInButton.click();
await expect(searchPage.searchOverlay.searchOptions).toBeVisible();
await expect(searchPage.searchOverlay.searchFilesOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchFoldersOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchLibrariesOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchFilesOption).not.toBeChecked();
await expect(searchPage.searchOverlay.searchFoldersOption).not.toBeChecked();
await expect(searchPage.searchOverlay.searchLibrariesOption).not.toBeChecked();
await expect(searchPage.searchInDialog.filesAndFoldersRadioButton).toBeVisible();
await expect(searchPage.searchInDialog.filesCheckbox).toBeVisible();
await expect(searchPage.searchInDialog.foldersCheckbox).toBeVisible();
await expect(searchPage.searchInDialog.librariesRadioButton).toBeVisible();
});
test('[XAT-5565] Search options are correctly enabled / disabled', async ({ searchPage }) => {
await searchPage.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchInputComponent.searchInButton.click();
await searchPage.searchOverlay.searchFilesOption.click();
await expect(searchPage.searchOverlay.searchFoldersOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchLibrariesOption).toBeDisabled();
await searchPage.searchInDialog.filesAndFoldersRadioButton.click();
await expect(searchPage.searchInDialog.filesCheckbox).toBeChecked();
await expect(searchPage.searchInDialog.foldersCheckbox).toBeChecked();
await expect(searchPage.searchInDialog.librariesRadioButton).not.toBeChecked();
await searchPage.searchOverlay.searchFilesOption.click();
await expect(searchPage.searchOverlay.searchFoldersOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchLibrariesOption).toBeEnabled();
await searchPage.searchOverlay.searchFoldersOption.click();
await expect(searchPage.searchOverlay.searchFilesOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchLibrariesOption).toBeDisabled();
await searchPage.searchOverlay.searchFoldersOption.click();
await expect(searchPage.searchOverlay.searchFilesOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchLibrariesOption).toBeEnabled();
await searchPage.searchOverlay.searchLibrariesOption.click();
await expect(searchPage.searchOverlay.searchFilesOption).toBeDisabled();
await expect(searchPage.searchOverlay.searchFoldersOption).toBeDisabled();
await searchPage.searchOverlay.searchLibrariesOption.click();
await expect(searchPage.searchOverlay.searchFilesOption).toBeEnabled();
await expect(searchPage.searchOverlay.searchFoldersOption).toBeEnabled();
await searchPage.searchInDialog.librariesRadioButton.click();
await expect(searchPage.searchInDialog.foldersCheckbox).toBeHidden();
await expect(searchPage.searchInDialog.filesCheckbox).toBeHidden();
await expect(searchPage.searchInDialog.filesAndFoldersRadioButton).not.toBeChecked();
});
});
@@ -82,9 +82,7 @@ test.describe('Search Results - General', () => {
expect(await searchPage.dataTable.isItemPresent(file)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(folder)).toBe(false);
await searchPage.clickSearchButton();
await searchPage.searchOverlay.searchFor(folder);
await searchPage.dataTable.progressBarWaitForReload();
await searchPage.searchWithin(folder, 'filesAndFolders');
expect(await searchPage.dataTable.isItemPresent(file)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(folder)).toBe(true);
@@ -143,29 +143,29 @@ test.describe('Search Results - General', () => {
test('[XAT-5594] Search library - full name match', async ({ searchPage }) => {
await searchPage.searchWithin(site1.name, 'libraries');
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBe(false);
});
test('[XAT-5595] Search library - partial name match', async ({ searchPage }) => {
await fileActionsApi.waitForNodes(site3.id, { expect: 1 });
await searchPage.searchWithin(`lib-${random}`, 'libraries');
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBe(false);
});
test('[XAT-5596] Search library - description match', async ({ searchPage }) => {
await searchPage.searchWithin(site4.description, 'libraries');
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site1.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site2.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site3.name)).toBe(false);
expect(await searchPage.dataTable.isItemPresent(site4.name)).toBe(true);
});
test('[XAT-5598] Libraries Results page columns', async ({ searchPage }) => {
@@ -209,13 +209,13 @@ test.describe('Search Results - General', () => {
test('[XAT-5601] Private sites are not displayed when user is not a member', async ({ searchPage }) => {
await searchPage.searchWithin(`admin-${random}-site`, 'libraries');
expect(await searchPage.dataTable.isItemPresent(adminPrivate)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(adminPrivate)).toBe(false);
});
test('[XAT-5602] Search libraries with special characters', async ({ searchPage }) => {
await searchPage.searchWithin(siteRussian.name, 'libraries');
expect(await searchPage.dataTable.isItemPresent(siteRussian.name)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(siteRussian.name)).toBe(true);
});
test('[XAT-5591] Empty Search results - Libraries', async ({ searchPage }) => {
@@ -223,7 +223,7 @@ test.describe('Search Results - General', () => {
/* cspell:disable-next-line */
await searchPage.searchWithin('qwertyuiop', 'files');
expect(await searchPage.dataTable.isEmpty()).toBeTruthy();
expect(await searchPage.dataTable.isEmpty()).toBe(true);
expect(await searchPage.dataTable.emptySearchText.textContent()).toContain('Your search returned 0 results');
});
});
@@ -114,10 +114,7 @@ test.describe('Unshare a file from Search Results', () => {
});
test('[XAT-5197] Unshare dialog UI', async ({ personalFiles, searchPage }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(file1);
await searchPage.searchWithin(file1, 'filesAndFolders');
await personalFiles.dataTable.selectItems(file1);
await personalFiles.acaHeader.shareButton.click();
@@ -135,10 +132,7 @@ test.describe('Unshare a file from Search Results', () => {
});
test('[XAT-5198] Unshare a file', async ({ personalFiles, searchPage, nodesApiAction, page }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(file2);
await searchPage.searchWithin(file2, 'filesAndFolders');
await personalFiles.dataTable.selectItems(file2);
await personalFiles.acaHeader.shareButton.click();
@@ -154,10 +148,7 @@ test.describe('Unshare a file from Search Results', () => {
});
test('[XAT-5199] Cancel the Unshare action', async ({ personalFiles, searchPage }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(file3);
await searchPage.searchWithin(file3, 'filesAndFolders');
await personalFiles.dataTable.selectItems(file3);
await personalFiles.acaHeader.shareButton.click();
@@ -172,10 +163,7 @@ test.describe('Unshare a file from Search Results', () => {
});
test('[XAT-5200] Unshare a file from the context menu', async ({ personalFiles, searchPage, nodesApiAction, page }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(file4);
await searchPage.searchWithin(file4, 'filesAndFolders');
await personalFiles.dataTable.rightClickOnItem(file4);
await personalFiles.matMenu.clickMenuItem('Shared Link Settings');
@@ -191,10 +179,7 @@ test.describe('Unshare a file from Search Results', () => {
});
test('[XAT-5227] Unshare a file as consumer - file shared by other user - Search Page', async ({ personalFiles, searchPage, nodesApiAction }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(fileSite1);
await searchPage.searchWithin(fileSite1, 'filesAndFolders');
await personalFiles.dataTable.selectItems(fileSite1);
await personalFiles.acaHeader.shareButton.click();
@@ -211,10 +196,7 @@ test.describe('Unshare a file from Search Results', () => {
nodesApiAction,
page
}) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(fileSite2);
await searchPage.searchWithin(fileSite2, 'filesAndFolders');
await personalFiles.dataTable.selectItems(fileSite2);
await personalFiles.acaHeader.shareButton.click();
@@ -63,15 +63,15 @@ test.describe('Search Results - General', () => {
test('[XAT-17734] Search with Folders options are checked', async ({ searchPage }) => {
await searchPage.searchWithin(`*${random}`, 'filesAndFolders');
expect(await searchPage.dataTable.isItemPresent(file)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(folder)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site)).toBeFalsy();
expect(await searchPage.dataTable.isItemPresent(file)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(folder)).toBe(true);
expect(await searchPage.dataTable.isItemPresent(site)).toBe(false);
});
test('[XAT-17735] Search with an URL containing a search query', async ({ searchPage, personalFiles }) => {
await searchPage.searchWithin(site, 'libraries');
expect(await searchPage.dataTable.isItemPresent(site)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site)).toBe(true);
const url = searchPage.page.url();
@@ -79,6 +79,6 @@ test.describe('Search Results - General', () => {
await personalFiles.page.goto(url);
await searchPage.dataTable.progressBarWaitForReload();
expect(await searchPage.dataTable.isItemPresent(site)).toBeTruthy();
expect(await searchPage.dataTable.isItemPresent(site)).toBe(true);
});
});
@@ -331,7 +331,7 @@ export function viewerTests(userConsumer: string, siteName: string) {
await loginPage.navigate();
await loginPage.loginUser({ username: userConsumer, password: userConsumer });
await searchPage.searchWithin(item, 'filesAndFolders');
await searchPage.searchInput.performDoubleClickFolderOrFileToOpen(item);
await searchPage.dataTable.performClickFolderOrFileToOpen(item);
expect(await searchPage.viewer.isViewerOpened(), 'Viewer is not opened').toBe(true);
await searchPage.viewer.verifyViewerPrimaryActions(expectedToolbarPrimary);
await searchPage.acaHeader.clickViewerMoreActions();
@@ -194,9 +194,7 @@ test.describe('Version actions', () => {
test.describe('on Search', () => {
test.beforeEach(async ({ loginPage, searchPage }) => {
await Utils.tryLoginUser(loginPage, username, username, 'beforeEach failed');
await searchPage.navigate();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.searchFor(filenameAfterUpdate);
await searchPage.searchWithin(filenameAfterUpdate, 'files');
await viewFirstFileVersion(searchPage);
});
@@ -180,13 +180,10 @@ test.describe('viewer file', () => {
expect(await recentFilesPage.viewer.isFileTitleDisplayed(), 'File title is not displayed').toBe(true);
});
test('[XAT-5482] Viewer opens for a file from Search Results', async ({ personalFiles, searchPage }) => {
await personalFiles.acaHeader.searchButton.click();
await searchPage.clickSearchButton();
await searchPage.searchOverlay.checkFilesAndFolders();
await searchPage.searchOverlay.searchFor(randomDocxName);
test('[XAT-5482] Viewer opens for a file from Search Results', async ({ searchPage }) => {
await searchPage.searchWithin(randomDocxName, 'filesAndFolders');
await searchPage.dataTable.goThroughPagesLookingForRowWithName(randomDocxName);
await searchPage.searchInput.performDoubleClickFolderOrFileToOpen(randomDocxName);
await searchPage.dataTable.performClickFolderOrFileToOpen(randomDocxName);
expect(await searchPage.viewer.isViewerOpened(), 'Viewer is not opened').toBe(true);
expect(await searchPage.viewer.isCloseButtonDisplayed(), 'Close button is not displayed').toBe(true);
expect(await searchPage.viewer.isFileTitleDisplayed(), 'File title is not displayed').toBe(true);