cristinaj 2e124fdc20 [ADF-3638]Fixing Header tests (#3846)
* Fixing Header tests

* Fix task filters tests
2018-10-02 12:26:41 +01:00

134 lines
4.5 KiB
TypeScript

/*!
* @license
* Copyright 2016 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 { element, by, protractor } from 'protractor';
import Util = require('../../../util/util');
export class HeaderPage {
checkBox = element(by.cssContainingText('.mat-checkbox-label', 'Show menu button'));
headerColor = element(by.css('option[value="primary"]'));
titleInput = element(by.css('input[name="title"]'));
iconInput = element(by.css('input[placeholder="URL path"]'));
hexColorInput = element(by.css('input[placeholder="hex color code"]'));
logoHyperlinkInput = element(by.css('input[placeholder="Redirect URL"]'));
logoTooltipInput = element(by.css('input[placeholder="Tooltip text"]'));
positionStart = element(by.css('mat-radio-button[value="start"]'));
positionEnd = element(by.css('mat-radio-button[value="end"]'));
sideBarPositionRight = element(by.css('mat-sidenav.mat-drawer.mat-sidenav.mat-drawer-end'));
sideBarPositionLeft = element(by.css('mat-sidenav.mat-drawer.mat-sidenav'));
checkShowMenuCheckBoxIsDisplayed() {
return Util.waitUntilElementIsVisible(this.checkBox);
}
checkChooseHeaderColourIsDisplayed() {
return Util.waitUntilElementIsVisible(this.headerColor);
}
checkChangeTitleIsDisplayed() {
return Util.waitUntilElementIsVisible(this.titleInput);
}
checkChangeUrlPathIsDisplayed() {
return Util.waitUntilElementIsVisible(this.iconInput);
}
clickShowMenuButton() {
let checkBox = element.all(by.css('mat-checkbox'));
Util.waitUntilElementIsVisible(checkBox);
return checkBox.get(0).click();
}
changeHeaderColor(color) {
let headerColor = element(by.css('option[value="' + color + '"]'));
return headerColor.click();
}
checkAppTitle(name) {
let title = element(by.cssContainingText('.adf-app-title', name));
return Util.waitUntilElementIsVisible(title);
}
addTitle(title) {
Util.waitUntilElementIsVisible(this.titleInput);
this.titleInput.click();
this.titleInput.sendKeys(title);
this.titleInput.sendKeys(protractor.Key.ENTER);
}
checkIconIsDisplayed(url) {
let icon = element(by.css('img[src="' + url + '"]'));
Util.waitUntilElementIsVisible(icon);
}
addIcon(url) {
Util.waitUntilElementIsVisible(this.iconInput);
this.iconInput.click();
this.iconInput.sendKeys(url);
this.iconInput.sendKeys(protractor.Key.ENTER);
}
checkHexColorInputIsDisplayed() {
return Util.waitUntilElementIsVisible(this.hexColorInput);
}
checkLogoHyperlinkInputIsDisplayed() {
return Util.waitUntilElementIsVisible(this.logoHyperlinkInput);
}
checkLogoTooltipInputIsDisplayed() {
return Util.waitUntilElementIsVisible(this.logoTooltipInput);
}
addHexCodeColor(hexCode) {
Util.waitUntilElementIsVisible(this.hexColorInput);
return this.hexColorInput.click().sendKeys(hexCode).sendKeys(protractor.Key.ENTER);
}
addLogoHyperlink(hyperlink) {
Util.waitUntilElementIsVisible(this.logoHyperlinkInput);
Util.waitUntilElementIsClickable(this.logoHyperlinkInput);
return this.logoHyperlinkInput.click().sendKeys(hyperlink).sendKeys(protractor.Key.ENTER);
}
addLogoTooltip(tooltip) {
Util.waitUntilElementIsVisible(this.logoTooltipInput);
return this.logoTooltipInput.click().sendKeys(tooltip).sendKeys(protractor.Key.ENTER);
}
sideBarPositionStart() {
Util.waitUntilElementIsVisible(this.positionStart);
return this.positionStart.click();
}
sideBarPositionEnd() {
Util.waitUntilElementIsVisible(this.positionEnd);
return this.positionEnd.click();
}
checkSidebarPositionStart() {
return Util.waitUntilElementIsVisible(this.sideBarPositionLeft);
}
checkSidebarPositionEnd() {
return Util.waitUntilElementIsVisible(this.sideBarPositionRight);
}
}