Files
alfresco-ng2-components/e2e/pages/adf/dialog/uploadToggles.ts
Suzana Dirla 87b80235a7 [ADF-4701] Upgrade angular libs (#4877)
* [ADF-4701] Upgrade angular material to 7.3.7 version

* [ADF-4701] upgrade angular libs

* [ADF-4701] upgrade angular libs

* [ADF-4530] temporary disable test

- will be fixed in a separate PR for https://issues.alfresco.com/jira/browse/ADF-4704
- the 'expected behavior' of the ADF-4530 corresponding bug is that should display 'all the available Process Definitions defined in the app'

* e2e test does not need bpm user

* e2e FIX waitUntilElementIsClickable

* Revert "e2e test does not need bpm user"

This reverts commit 9a5c4d4 - Travis seems to need initial code

* e2e fix button selector

- caused TimeoutError: Element is not Clickable

* e2e scroll into view fix

* e2e fixes scroll into view & selectors

* e2e fixed close action menu

- close menu with all disabled items fix - opened related issue https://issues.alfresco.com/jira/browse/ADF-4712
- checkContextActionIsVisible should check only visibility - all items might be disabled, so un-clickable
- close menu changed bcs. overlay backdrop caused TimeoutError: Element is not Clickable

* e2e disabled button is not supposed to be clickable

- fixed TimeoutError: Element is not Clickable

* e2e update messages

* e2e check invisibilityOf item

* e2e extra filter

* e2e wait waitTillContentLoaded

- created related issue https://issues.alfresco.com/jira/browse/ADF-4715

* [ADF-4715] a process never has CREATED status

* [ADF-4717] wait for filtered content to be loaded

- initiator filter must have 'username' value
2019-07-02 12:07:15 +01:00

134 lines
4.6 KiB
TypeScript

/*!
* @license
* Copyright 2019 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { browser, by, element, protractor } from 'protractor';
import { BrowserVisibility, FormControllersPage } from '@alfresco/adf-testing';
export class UploadToggles {
formControllersPage = new FormControllersPage();
multipleFileUploadToggle = element(by.id('adf-multiple-upload-switch'));
uploadFolderToggle = element(by.id('adf-folder-upload-switch'));
extensionFilterToggle = element(by.id('adf-extension-filter-upload-switch'));
maxSizeToggle = element(by.id('adf-max-size-filter-upload-switch'));
versioningToggle = element(by.id('adf-version-upload-switch'));
extensionAcceptedField = element(by.css('input[data-automation-id="accepted-files-type"]'));
maxSizeField = element(by.css('input[data-automation-id="max-files-size"]'));
disableUploadCheckbox = element(by.css('[id="adf-disable-upload"]'));
enableMultipleFileUpload() {
browser.executeScript('arguments[0].scrollIntoView()', this.multipleFileUploadToggle);
this.formControllersPage.enableToggle(this.multipleFileUploadToggle);
return this;
}
disableMultipleFileUpload() {
this.formControllersPage.disableToggle(this.multipleFileUploadToggle);
return this;
}
enableFolderUpload() {
this.formControllersPage.enableToggle(this.uploadFolderToggle);
return this;
}
checkFolderUploadToggleIsEnabled() {
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-folder-upload-switch"][class*="mat-checked"]'));
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
return this;
}
checkMultipleFileUploadToggleIsEnabled() {
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-multiple-upload-switch"][class*="mat-checked"]'));
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
return this;
}
checkMaxSizeToggleIsEnabled() {
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-max-size-filter-upload-switch"][class*="mat-checked"]'));
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
return this;
}
checkVersioningToggleIsEnabled() {
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-version-upload-switch"][class*="mat-checked"]'));
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
return this;
}
disableFolderUpload() {
this.formControllersPage.disableToggle(this.uploadFolderToggle);
return this;
}
enableExtensionFilter() {
browser.executeScript('arguments[0].scrollIntoView()', this.extensionFilterToggle);
this.formControllersPage.enableToggle(this.extensionFilterToggle);
return this;
}
disableExtensionFilter() {
browser.executeScript('arguments[0].scrollIntoView()', this.extensionFilterToggle);
this.formControllersPage.disableToggle(this.extensionFilterToggle);
return this;
}
enableMaxSize() {
this.formControllersPage.enableToggle(this.maxSizeToggle);
return this;
}
disableMaxSize() {
this.formControllersPage.disableToggle(this.maxSizeToggle);
return this;
}
enableVersioning() {
this.formControllersPage.enableToggle(this.versioningToggle);
return this;
}
disableVersioning() {
this.formControllersPage.disableToggle(this.versioningToggle);
return this;
}
clickCheckboxDisableUpload() {
return this.disableUploadCheckbox.click();
}
addExtension(extension) {
BrowserVisibility.waitUntilElementIsVisible(this.extensionAcceptedField);
this.extensionAcceptedField.sendKeys(',' + extension);
}
addMaxSize(size) {
this.clearText();
this.maxSizeField.sendKeys(size);
}
clearText() {
BrowserVisibility.waitUntilElementIsVisible(this.maxSizeField);
const deferred = protractor.promise.defer();
this.maxSizeField.clear().then(() => {
this.maxSizeField.sendKeys(protractor.Key.ESCAPE);
});
return deferred.promise;
}
}