mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-3193, ADF-3275] CardView e2e tests (#3577)
* CardView item key-value pair and combobox tests * Change describe title
This commit is contained in:
committed by
Eugenio Romano
parent
9b804f72f2
commit
50b6fb978b
103
e2e/card-view-component.e2e.ts
Normal file
103
e2e/card-view-component.e2e.ts
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
/*!
|
||||||
|
* @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 LoginPage = require('./pages/adf/loginPage');
|
||||||
|
import NavigationBarPage = require('./pages/adf/navigationBarPage');
|
||||||
|
import TestConfig = require('./test.config');
|
||||||
|
import resources = require('./util/resources');
|
||||||
|
import AlfrescoApi = require('alfresco-js-api-node');
|
||||||
|
import { UsersActions } from './actions/users.actions';
|
||||||
|
import { AppsActions } from './actions/APS/apps.actions';
|
||||||
|
import CardViewPageComponent = require('./pages/adf/cardViewPageComponent');
|
||||||
|
import Util = require('./util/util');
|
||||||
|
|
||||||
|
describe('CardView Component', () => {
|
||||||
|
const loginPage = new LoginPage();
|
||||||
|
const navigationBarPage = new NavigationBarPage();
|
||||||
|
const cardViewPageComponent = new CardViewPageComponent();
|
||||||
|
const app = resources.Files.APP_WITH_PROCESSES;
|
||||||
|
|
||||||
|
beforeAll(async (done) => {
|
||||||
|
const apps = new AppsActions();
|
||||||
|
const users = new UsersActions();
|
||||||
|
|
||||||
|
this.alfrescoJsApi = new AlfrescoApi({
|
||||||
|
provider: 'BPM',
|
||||||
|
hostBpm: TestConfig.adf.url
|
||||||
|
});
|
||||||
|
|
||||||
|
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||||
|
|
||||||
|
let user = await users.createTenantAndUser(this.alfrescoJsApi);
|
||||||
|
|
||||||
|
await this.alfrescoJsApi.login(user.email, user.password);
|
||||||
|
|
||||||
|
await apps.importPublishDeployApp(this.alfrescoJsApi, app.file_location);
|
||||||
|
|
||||||
|
loginPage.loginToProcessServicesUsingUserModel(user);
|
||||||
|
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
Util.refreshBrowser();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('[C279898] Register pairs values', () => {
|
||||||
|
navigationBarPage.clickCardViewButton();
|
||||||
|
cardViewPageComponent.clickOnAddButton();
|
||||||
|
cardViewPageComponent.setName('testName');
|
||||||
|
cardViewPageComponent.setValue('testValue');
|
||||||
|
cardViewPageComponent.clickOnAddButton();
|
||||||
|
cardViewPageComponent.waitForOutput();
|
||||||
|
expect(cardViewPageComponent.getOutputText(0))
|
||||||
|
.toBe('[CardView Key-Value Pairs Item] - [{"name":"testName","value":"testValue"}]');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it('[C279898] Delete pairs values', () => {
|
||||||
|
navigationBarPage.clickCardViewButton();
|
||||||
|
cardViewPageComponent.clickOnAddButton();
|
||||||
|
cardViewPageComponent.setName('testName');
|
||||||
|
cardViewPageComponent.setValue('testValue');
|
||||||
|
cardViewPageComponent.clickOnAddButton();
|
||||||
|
cardViewPageComponent.waitForOutput();
|
||||||
|
expect(cardViewPageComponent.getOutputText(0))
|
||||||
|
.toBe('[CardView Key-Value Pairs Item] - [{"name":"testName","value":"testValue"}]');
|
||||||
|
cardViewPageComponent.deletePairsValues();
|
||||||
|
expect(cardViewPageComponent.getOutputText(1))
|
||||||
|
.toBe('[CardView Key-Value Pairs Item] - []');
|
||||||
|
cardViewPageComponent.checkNameAndValueVisibility(0);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('[C279899] Check default value ', () => {
|
||||||
|
navigationBarPage.clickCardViewButton();
|
||||||
|
cardViewPageComponent.clickComboBox();
|
||||||
|
expect(cardViewPageComponent.getSelectionValue()).toBe('One');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
it('[C279899] Select combobox values', () => {
|
||||||
|
navigationBarPage.clickCardViewButton();
|
||||||
|
cardViewPageComponent.clickComboBox();
|
||||||
|
cardViewPageComponent.selectValueFromComboBox(1);
|
||||||
|
expect(cardViewPageComponent.getOutputText(0))
|
||||||
|
.toBe('[CardView Select Item] - two');
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
97
e2e/pages/adf/cardViewPageComponent.js
Normal file
97
e2e/pages/adf/cardViewPageComponent.js
Normal file
@@ -0,0 +1,97 @@
|
|||||||
|
/*!
|
||||||
|
* @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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
var Util = require('../../util/util');
|
||||||
|
|
||||||
|
var CardViewComponentPage = function (){
|
||||||
|
|
||||||
|
const addButton = element(by.className('card-view__key-value-pairs__add-btn'));
|
||||||
|
const keyValueRow = 'card-view__key-value-pairs__row';
|
||||||
|
const selectValue = 'mat-option';
|
||||||
|
const valueInputField = element(by.xpath("//*[contains(@id,'input') and @placeholder='Value']"));
|
||||||
|
const nameInputField = element(by.xpath("//*[contains(@id,'input') and @placeholder='Name']"));
|
||||||
|
const consoleLog = element(by.className('console'));
|
||||||
|
const deleteButton = element(by.className('card-view__key-value-pairs__remove-btn'));
|
||||||
|
const select = element(by.css('mat-select[data-automation-class="select-box"]'));
|
||||||
|
const listContent = element(by.className('mat-select-content'));
|
||||||
|
const selectedValue = element(by.css('.mat-select-value-text span'));
|
||||||
|
|
||||||
|
this.clickOnAddButton = function() {
|
||||||
|
Util.waitUntilElementIsVisible(addButton);
|
||||||
|
addButton.click();
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.setName = function(name) {
|
||||||
|
Util.waitUntilElementIsVisible(nameInputField);
|
||||||
|
nameInputField.sendKeys(name);
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.setValue = function(value) {
|
||||||
|
Util.waitUntilElementIsVisible(valueInputField);
|
||||||
|
valueInputField.sendKeys(value);
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
this.waitForOutput = function(){
|
||||||
|
Util.waitUntilElementIsVisible(consoleLog);
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.getOutputText = function(index){
|
||||||
|
return consoleLog.all(by.css('p')).get(index).getText()
|
||||||
|
};
|
||||||
|
|
||||||
|
this.deletePairsValues = function(){
|
||||||
|
Util.waitUntilElementIsVisible(deleteButton);
|
||||||
|
deleteButton.click();
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.checkNameAndValueVisibility = (index) => {
|
||||||
|
Util.waitUntilElementIsNotOnPage(this.getKeyValueRow(index));
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.getKeyValueRow = (index) => {
|
||||||
|
return element.all(by.css(keyValueRow)).get(index);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
this.getMatSelectValue = (index) => {
|
||||||
|
return element.all(by.className(selectValue)).get(index);
|
||||||
|
};
|
||||||
|
|
||||||
|
this.clickComboBox = () => {
|
||||||
|
select.click();
|
||||||
|
Util.waitUntilElementIsVisible(listContent);
|
||||||
|
};
|
||||||
|
|
||||||
|
this.selectValueFromComboBox = (index) => {
|
||||||
|
this.getMatSelectValue(index).click();
|
||||||
|
Util.waitUntilElementIsVisible(consoleLog);
|
||||||
|
return this;
|
||||||
|
};
|
||||||
|
|
||||||
|
this.getSelectionValue = () => {
|
||||||
|
return selectedValue.getText();
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
module.exports = CardViewComponentPage;
|
@@ -27,6 +27,7 @@ var NavigationBarPage = function (){
|
|||||||
var themeButton = element(by.css("button[data-automation-id='theme menu']"));
|
var themeButton = element(by.css("button[data-automation-id='theme menu']"));
|
||||||
var themeMenuContent = element(by.css("div[class*='mat-menu-panel']"));
|
var themeMenuContent = element(by.css("div[class*='mat-menu-panel']"));
|
||||||
var logoutButton = element(by.css("a[adf-logout]"));
|
var logoutButton = element(by.css("a[adf-logout]"));
|
||||||
|
var cardViewButton = element(by.cssContainingText(".sidenav-menu-label","CardView"));
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Click Content Services Button
|
* Click Content Services Button
|
||||||
@@ -87,6 +88,15 @@ var NavigationBarPage = function (){
|
|||||||
logoutButton.click();
|
logoutButton.click();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Click Card View Button
|
||||||
|
* @method clickCardViewButton
|
||||||
|
*/
|
||||||
|
this.clickCardViewButton = function(){
|
||||||
|
Util.waitUntilElementIsVisible(cardViewButton);
|
||||||
|
cardViewButton.click();
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = NavigationBarPage;
|
module.exports = NavigationBarPage;
|
||||||
|
Reference in New Issue
Block a user