mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
[AAE-1846] [AAE-1857] automated e2e tests uploading folders (#5483)
* [AAE-1846] automated e2e tests - uploading a folder * [AAE-1857] added automated e2e test upload folder with excluded file * changed the script for cancel an uploading folder, added -b condition for the running tests for the uploadFolder method
This commit is contained in:
committed by
GitHub
parent
8fcdc55595
commit
c91458df79
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { BrowserActions, BrowserVisibility, DateUtil, DocumentListPage, FormControllersPage } from '@alfresco/adf-testing';
|
||||
import { $$, browser, by, element, ElementArrayFinder, ElementFinder, protractor } from 'protractor';
|
||||
import { BrowserActions, BrowserVisibility, DateUtil, DocumentListPage, TogglePage } from '@alfresco/adf-testing';
|
||||
import { $$, browser, by, element, ElementFinder, ElementArrayFinder, protractor } from 'protractor';
|
||||
import { DropActions } from '../../actions/drop.actions';
|
||||
import { CreateLibraryDialogPage } from './dialog/create-library-dialog.page';
|
||||
import { FolderDialogPage } from './dialog/folder-dialog.page';
|
||||
@@ -36,7 +36,7 @@ export class ContentServicesPage {
|
||||
};
|
||||
|
||||
contentList: DocumentListPage = new DocumentListPage(element.all(by.css('adf-upload-drag-area adf-document-list')).first());
|
||||
formControllersPage: FormControllersPage = new FormControllersPage();
|
||||
togglePage: TogglePage = new TogglePage();
|
||||
createFolderDialog: FolderDialogPage = new FolderDialogPage();
|
||||
createLibraryDialog: CreateLibraryDialogPage = new CreateLibraryDialogPage();
|
||||
dragAndDropAction: DropActions = new DropActions();
|
||||
@@ -187,12 +187,12 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
async enableDropFilesInAFolder(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.multipleFileUploadToggle);
|
||||
await this.togglePage.enableToggle(this.multipleFileUploadToggle);
|
||||
}
|
||||
|
||||
async disableDropFilesInAFolder(): Promise<void> {
|
||||
await browser.executeScript('arguments[0].scrollIntoView()', this.multipleFileUploadToggle);
|
||||
await this.formControllersPage.disableToggle(this.multipleFileUploadToggle);
|
||||
await this.togglePage.disableToggle(this.multipleFileUploadToggle);
|
||||
}
|
||||
|
||||
async getElementsDisplayedId() {
|
||||
@@ -438,10 +438,9 @@ export class ContentServicesPage {
|
||||
await BrowserVisibility.waitUntilElementIsPresent(this.uploadMultipleFileButton);
|
||||
}
|
||||
|
||||
async uploadFolder(folderName: string): Promise<void> {
|
||||
await BrowserVisibility.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
await this.uploadFolderButton.sendKeys(path.resolve(path.join(browser.params.testConfig.main.rootPath, folderName)));
|
||||
await BrowserVisibility.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
async uploadFolder(folderLocation: string): Promise<void> {
|
||||
await BrowserVisibility.waitUntilElementIsPresent(this.uploadFolderButton);
|
||||
await this.uploadFolderButton.sendKeys(path.resolve(path.join(browser.params.testConfig.main.rootPath, folderLocation)));
|
||||
}
|
||||
|
||||
async getSingleFileButtonTooltip(): Promise<string> {
|
||||
@@ -687,5 +686,4 @@ export class ContentServicesPage {
|
||||
await BrowserVisibility.waitUntilElementIsVisible(item);
|
||||
await BrowserActions.click(item);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { element, by, browser, ElementFinder, ElementArrayFinder } from 'protractor';
|
||||
import {
|
||||
FormControllersPage,
|
||||
TogglePage,
|
||||
TaskFiltersCloudComponentPage,
|
||||
EditTaskFilterCloudComponentPage,
|
||||
BrowserVisibility,
|
||||
@@ -49,34 +49,34 @@ export class TasksCloudDemoPage {
|
||||
|
||||
modeDropdown = new DropdownPage(element(by.css('mat-form-field[data-automation-id="selectionMode"]')));
|
||||
|
||||
formControllersPage: FormControllersPage = new FormControllersPage();
|
||||
togglePage: TogglePage = new TogglePage();
|
||||
|
||||
editTaskFilterCloud: EditTaskFilterCloudComponentPage = new EditTaskFilterCloudComponentPage();
|
||||
|
||||
taskFilterCloudComponent = new TaskFiltersCloudComponentPage();
|
||||
|
||||
async disableDisplayTaskDetails(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.displayTaskDetailsToggle);
|
||||
await this.togglePage.disableToggle(this.displayTaskDetailsToggle);
|
||||
}
|
||||
|
||||
async disableDisplayProcessDetails(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.displayProcessDetailsToggle);
|
||||
await this.togglePage.disableToggle(this.displayProcessDetailsToggle);
|
||||
}
|
||||
|
||||
async enableMultiSelection(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.multiSelectionToggle);
|
||||
await this.togglePage.enableToggle(this.multiSelectionToggle);
|
||||
}
|
||||
|
||||
async enableActionMenu(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.actionMenuToggle);
|
||||
await this.togglePage.enableToggle(this.actionMenuToggle);
|
||||
}
|
||||
|
||||
async enableContextMenu(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.contextMenuToggle);
|
||||
await this.togglePage.enableToggle(this.contextMenuToggle);
|
||||
}
|
||||
|
||||
async enableTestingMode(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.testingModeToggle);
|
||||
await this.togglePage.enableToggle(this.testingModeToggle);
|
||||
}
|
||||
|
||||
taskListCloudComponent(): TaskListCloudComponentPage {
|
||||
|
@@ -16,12 +16,12 @@
|
||||
*/
|
||||
|
||||
import { element, by, ElementFinder } from 'protractor';
|
||||
import { BrowserVisibility, FormControllersPage, BrowserActions } from '@alfresco/adf-testing';
|
||||
import { BrowserVisibility, TogglePage, BrowserActions } from '@alfresco/adf-testing';
|
||||
import moment = require('moment');
|
||||
|
||||
export class ShareDialogPage {
|
||||
|
||||
formControllersPage = new FormControllersPage();
|
||||
togglePage = new TogglePage();
|
||||
shareDialog: ElementFinder = element(by.css('adf-share-dialog'));
|
||||
dialogTitle: ElementFinder = element(by.css('[data-automation-id="adf-share-dialog-title"]'));
|
||||
shareToggle: ElementFinder = element(by.css('[data-automation-id="adf-share-toggle"] label'));
|
||||
@@ -44,7 +44,7 @@ export class ShareDialogPage {
|
||||
}
|
||||
|
||||
async clickUnShareFile() {
|
||||
await this.formControllersPage.enableToggle(this.shareToggle);
|
||||
await this.togglePage.enableToggle(this.shareToggle);
|
||||
}
|
||||
|
||||
async clickConfirmationDialogCancelButton(): Promise<void> {
|
||||
|
@@ -36,6 +36,7 @@ export class UploadDialogPage {
|
||||
confirmationDialogNoButton: ElementFinder = element(by.partialButtonText('No'));
|
||||
confirmationDialogYesButton: ElementFinder = element(by.partialButtonText('Yes'));
|
||||
cancelUploadsElement: ElementFinder = element((by.css('footer[class*="upload-dialog__actions"] button[id="adf-upload-dialog-cancel-all"]')));
|
||||
cancelUploadInProgressButton: ElementFinder = element(by.css('div[data-automation-id="cancel-upload-progress"]'));
|
||||
|
||||
async clickOnCloseButton(): Promise<void> {
|
||||
await this.checkCloseButtonIsDisplayed();
|
||||
@@ -91,6 +92,14 @@ export class UploadDialogPage {
|
||||
await BrowserActions.click(this.cancelUploadsElement);
|
||||
}
|
||||
|
||||
async cancelProgress(): Promise<void> {
|
||||
await BrowserActions.click(this.cancelUploadInProgressButton);
|
||||
}
|
||||
|
||||
async checkCancelProgressIsVisible(): Promise<void> {
|
||||
await BrowserVisibility.waitUntilElementIsVisible(this.cancelUploadInProgressButton);
|
||||
}
|
||||
|
||||
async fileIsCancelled(content): Promise<void> {
|
||||
const row = await this.getRowByRowName(content);
|
||||
await BrowserVisibility.waitUntilElementIsVisible(row.element(this.cancelledStatusIcon));
|
||||
|
@@ -16,13 +16,13 @@
|
||||
*/
|
||||
|
||||
import { browser, by, element, ElementFinder } from 'protractor';
|
||||
import { BrowserActions, BrowserVisibility, FormControllersPage } from '@alfresco/adf-testing';
|
||||
import { BrowserActions, BrowserVisibility, TogglePage } from '@alfresco/adf-testing';
|
||||
|
||||
export class UploadTogglesPage {
|
||||
|
||||
formControllersPage: FormControllersPage = new FormControllersPage();
|
||||
togglePage: TogglePage = new TogglePage();
|
||||
multipleFileUploadToggle: ElementFinder = element(by.id('adf-multiple-upload-switch'));
|
||||
uploadFolderToggle: ElementFinder = element(by.id('adf-folder-upload-switch'));
|
||||
uploadFolderToggle: ElementFinder = element(by.css('#adf-folder-upload-switch'));
|
||||
extensionFilterToggle: ElementFinder = element(by.id('adf-extension-filter-upload-switch'));
|
||||
maxSizeToggle: ElementFinder = element(by.id('adf-max-size-filter-upload-switch'));
|
||||
versioningToggle: ElementFinder = element(by.id('adf-version-upload-switch'));
|
||||
@@ -32,16 +32,26 @@ export class UploadTogglesPage {
|
||||
|
||||
async enableMultipleFileUpload(): Promise<void> {
|
||||
await browser.executeScript('arguments[0].scrollIntoView()', this.multipleFileUploadToggle);
|
||||
await this.formControllersPage.enableToggle(this.multipleFileUploadToggle);
|
||||
await this.togglePage.enableToggle(this.multipleFileUploadToggle);
|
||||
}
|
||||
|
||||
async disableMultipleFileUpload(): Promise<void> {
|
||||
await browser.executeScript('arguments[0].scrollIntoView()', this.multipleFileUploadToggle);
|
||||
await this.formControllersPage.disableToggle(this.multipleFileUploadToggle);
|
||||
await this.togglePage.disableToggle(this.multipleFileUploadToggle);
|
||||
}
|
||||
|
||||
async enableFolderUpload(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.uploadFolderToggle);
|
||||
await this.togglePage.enableToggle(this.uploadFolderToggle);
|
||||
}
|
||||
|
||||
async checkFolderUploadToggleIsEnabled(): Promise<boolean> {
|
||||
try {
|
||||
const enabledFolderUpload: ElementFinder = element(by.css('mat-slide-toggle[id="adf-folder-upload-switch"][class*="mat-checked"]'));
|
||||
await BrowserVisibility.waitUntilElementIsVisible(enabledFolderUpload);
|
||||
return true;
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
async checkMultipleFileUploadToggleIsEnabled(): Promise<void> {
|
||||
@@ -60,33 +70,42 @@ export class UploadTogglesPage {
|
||||
}
|
||||
|
||||
async disableFolderUpload(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.uploadFolderToggle);
|
||||
await this.togglePage.disableToggle(this.uploadFolderToggle);
|
||||
}
|
||||
async checkFolderUploadToggleIsNotEnabled(): Promise<boolean> {
|
||||
try {
|
||||
const inactiveToggleFolder: ElementFinder = element(by.css('#adf-folder-upload-switch .mat-slide-toggle-label'));
|
||||
await BrowserVisibility.waitUntilElementIsVisible(inactiveToggleFolder);
|
||||
return true;
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
async enableExtensionFilter(): Promise<void> {
|
||||
await browser.executeScript('arguments[0].scrollIntoView()', this.extensionFilterToggle);
|
||||
await this.formControllersPage.enableToggle(this.extensionFilterToggle);
|
||||
await this.togglePage.enableToggle(this.extensionFilterToggle);
|
||||
}
|
||||
|
||||
async disableExtensionFilter(): Promise<void> {
|
||||
await browser.executeScript('arguments[0].scrollIntoView()', this.extensionFilterToggle);
|
||||
await this.formControllersPage.disableToggle(this.extensionFilterToggle);
|
||||
await this.togglePage.disableToggle(this.extensionFilterToggle);
|
||||
}
|
||||
|
||||
async enableMaxSize(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.maxSizeToggle);
|
||||
await this.togglePage.enableToggle(this.maxSizeToggle);
|
||||
}
|
||||
|
||||
async disableMaxSize(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.maxSizeToggle);
|
||||
await this.togglePage.disableToggle(this.maxSizeToggle);
|
||||
}
|
||||
|
||||
async enableVersioning(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.versioningToggle);
|
||||
await this.togglePage.enableToggle(this.versioningToggle);
|
||||
}
|
||||
|
||||
async disableVersioning(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.versioningToggle);
|
||||
await this.togglePage.disableToggle(this.versioningToggle);
|
||||
}
|
||||
|
||||
async clickCheckboxDisableUpload(): Promise<void> {
|
||||
|
@@ -15,31 +15,31 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { FormControllersPage } from '@alfresco/adf-testing';
|
||||
import { TogglePage } from '@alfresco/adf-testing';
|
||||
import { element, by, ElementFinder } from 'protractor';
|
||||
|
||||
export class AppSettingsTogglesPage {
|
||||
|
||||
formControllersPage: FormControllersPage = new FormControllersPage();
|
||||
togglePage: TogglePage = new TogglePage();
|
||||
|
||||
showDetailsHeaderToggle: ElementFinder = element(by.id('adf-show-header'));
|
||||
showTaskFilterIconsToggle: ElementFinder = element(by.id('adf-show-task-filter-icon'));
|
||||
showProcessFilterIconsToggle: ElementFinder = element(by.id('adf-show-process-filter-icon'));
|
||||
|
||||
async enableShowHeader(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.showDetailsHeaderToggle);
|
||||
await this.togglePage.enableToggle(this.showDetailsHeaderToggle);
|
||||
}
|
||||
|
||||
async disableShowHeader(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.showDetailsHeaderToggle);
|
||||
await this.togglePage.disableToggle(this.showDetailsHeaderToggle);
|
||||
}
|
||||
|
||||
async enableTaskFiltersIcon(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.showTaskFilterIconsToggle);
|
||||
await this.togglePage.enableToggle(this.showTaskFilterIconsToggle);
|
||||
}
|
||||
|
||||
async enableProcessFiltersIcon(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.showProcessFilterIconsToggle);
|
||||
await this.togglePage.enableToggle(this.showProcessFilterIconsToggle);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -16,12 +16,12 @@
|
||||
*/
|
||||
|
||||
import path = require('path');
|
||||
import { BrowserActions, BrowserVisibility, FormControllersPage } from '@alfresco/adf-testing';
|
||||
import { BrowserActions, BrowserVisibility, TogglePage } from '@alfresco/adf-testing';
|
||||
import { browser, by, element, ElementFinder } from 'protractor';
|
||||
|
||||
export class VersionManagePage {
|
||||
|
||||
formControllersPage: FormControllersPage = new FormControllersPage();
|
||||
togglePage: TogglePage = new TogglePage();
|
||||
|
||||
showNewVersionButton: ElementFinder = element(by.id('adf-show-version-upload-button'));
|
||||
uploadNewVersionInput: ElementFinder = element(by.css('adf-upload-version-button input[data-automation-id="upload-single-file"]'));
|
||||
@@ -92,28 +92,28 @@ export class VersionManagePage {
|
||||
* disables readOnly
|
||||
*/
|
||||
async disableReadOnly(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.readOnlySwitch);
|
||||
await this.togglePage.disableToggle(this.readOnlySwitch);
|
||||
}
|
||||
|
||||
/**
|
||||
* enables readOnly
|
||||
*/
|
||||
async enableReadOnly(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.readOnlySwitch);
|
||||
await this.togglePage.enableToggle(this.readOnlySwitch);
|
||||
}
|
||||
|
||||
/**
|
||||
* disables download
|
||||
*/
|
||||
async disableDownload(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.downloadSwitch);
|
||||
await this.togglePage.disableToggle(this.downloadSwitch);
|
||||
}
|
||||
|
||||
/**
|
||||
* enables download
|
||||
*/
|
||||
async enableDownload(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.downloadSwitch);
|
||||
await this.togglePage.enableToggle(this.downloadSwitch);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -121,14 +121,14 @@ export class VersionManagePage {
|
||||
* disables comments
|
||||
*/
|
||||
async disableComments(): Promise<void> {
|
||||
await this.formControllersPage.disableToggle(this.commentsSwitch);
|
||||
await this.togglePage.disableToggle(this.commentsSwitch);
|
||||
}
|
||||
|
||||
/**
|
||||
* enables comments
|
||||
*/
|
||||
async enableComments(): Promise<void> {
|
||||
await this.formControllersPage.enableToggle(this.commentsSwitch);
|
||||
await this.togglePage.enableToggle(this.commentsSwitch);
|
||||
}
|
||||
|
||||
async clickActionButton(version): Promise<void> {
|
||||
|
Reference in New Issue
Block a user