Refactor process list component (#3979)

This commit is contained in:
cristinaj 2018-11-16 18:33:18 +02:00 committed by Eugenio Romano
parent 5e004a8e3a
commit 3da80bf366
4 changed files with 15 additions and 32 deletions

View File

@ -21,6 +21,7 @@ var ProcessDetailsPage = function () {
//Process Details //Process Details
var processTitle = element(by.css("mat-card-title[class='mat-card-title']")); var processTitle = element(by.css("mat-card-title[class='mat-card-title']"));
var processDetailsMessage = element(by.css('adf-process-instance-details div[class="ng-star-inserted"]'));
var processStatusField = element(by.css("span[data-automation-id='card-textitem-value-status']")); var processStatusField = element(by.css("span[data-automation-id='card-textitem-value-status']"));
var processEndDateField = element(by.css("span[data-automation-id='card-dateitem-ended']")); var processEndDateField = element(by.css("span[data-automation-id='card-dateitem-ended']"));
var processCategoryField = element(by.css("span[data-automation-id='card-textitem-value-category']")); var processCategoryField = element(by.css("span[data-automation-id='card-textitem-value-category']"));
@ -68,6 +69,11 @@ var ProcessDetailsPage = function () {
return processTitle.getText(); return processTitle.getText();
}; };
this.checkProcessDetailsMessage = function () {
Util.waitUntilElementIsVisible(processDetailsMessage);
return processDetailsMessage.getText();
};
this.getProcessStatus = function () { this.getProcessStatus = function () {
Util.waitUntilElementIsVisible(processStatusField); Util.waitUntilElementIsVisible(processStatusField);
return processStatusField.getText(); return processStatusField.getText();

View File

@ -22,10 +22,6 @@ import { element, by } from 'protractor';
export class ProcessListPage { export class ProcessListPage {
processListTitle = element(by.css('p[class="adf-empty-content__title"]')); processListTitle = element(by.css('p[class="adf-empty-content__title"]'));
processDetailsMessage = element(by.css('adf-process-instance-details div[class="ng-star-inserted"]'));
openProcessDropdownElement = element(by.id('adf-select-process-dropdown'));
selectProcessDropdownElement = element.all(by.css('span[class="mat-option-text"]'));
startProcessButton = element(by.css('button[data-automation-id="btn-start"]'));
processInstanceList = element(by.css('adf-process-instance-list')); processInstanceList = element(by.css('adf-process-instance-list'));
checkProcessListTitleIsDisplayed() { checkProcessListTitleIsDisplayed() {
@ -33,26 +29,6 @@ export class ProcessListPage {
return this.processListTitle.getText(); return this.processListTitle.getText();
} }
checkProcessDetailsMessage() {
Util.waitUntilElementIsVisible(this.processListTitle);
return this.processDetailsMessage.getText();
}
openProcessDropdown() {
Util.waitUntilElementIsVisible(this.openProcessDropdownElement);
return this.openProcessDropdownElement.click();
}
selectProcessDropdown(index) {
Util.waitUntilElementIsVisible(this.selectProcessDropdownElement);
return this.selectProcessDropdownElement.get(index).click();
}
startProcess() {
Util.waitUntilElementIsVisible(this.startProcessButton);
return this.startProcessButton.click();
}
checkProcessListIsDisplayed() { checkProcessListIsDisplayed() {
Util.waitUntilElementIsVisible(this.processInstanceList); Util.waitUntilElementIsVisible(this.processInstanceList);
} }

View File

@ -23,6 +23,7 @@ import { ProcessServicesPage } from '../pages/adf/process_services/processServic
import ProcessFiltersPage = require('../pages/adf/process_services/processFiltersPage'); import ProcessFiltersPage = require('../pages/adf/process_services/processFiltersPage');
import ProcessDetailsPage = require('../pages/adf/process_services/processDetailsPage'); import ProcessDetailsPage = require('../pages/adf/process_services/processDetailsPage');
import { ProcessListPage } from '../pages/adf/process_services/processListPage'; import { ProcessListPage } from '../pages/adf/process_services/processListPage';
import StartProcessPage = require('../pages/adf/process_services/startProcessPage');
import AlfrescoApi = require('alfresco-js-api-node'); import AlfrescoApi = require('alfresco-js-api-node');
import { AppsActions } from '../actions/APS/apps.actions'; import { AppsActions } from '../actions/APS/apps.actions';
@ -36,6 +37,7 @@ describe('Empty Process List Test', () => {
let processFiltersPage = new ProcessFiltersPage(); let processFiltersPage = new ProcessFiltersPage();
let processDetailsPage = new ProcessDetailsPage(); let processDetailsPage = new ProcessDetailsPage();
let processListPage = new ProcessListPage(); let processListPage = new ProcessListPage();
let startProcessPage = new StartProcessPage();
let appA = resources.Files.APP_WITH_PROCESSES; let appA = resources.Files.APP_WITH_PROCESSES;
let appB = resources.Files.SIMPLE_APP_WITH_USER_FORM; let appB = resources.Files.SIMPLE_APP_WITH_USER_FORM;
@ -69,13 +71,12 @@ describe('Empty Process List Test', () => {
processServicesPage.checkApsContainer(); processServicesPage.checkApsContainer();
processServicesPage.goToApp(appA.title).clickProcessButton(); processServicesPage.goToApp(appA.title).clickProcessButton();
expect(processListPage.checkProcessListTitleIsDisplayed()).toEqual('No Processes Found'); expect(processListPage.checkProcessListTitleIsDisplayed()).toEqual('No Processes Found');
expect(processListPage.checkProcessDetailsMessage()).toEqual('No process details found'); expect(processDetailsPage.checkProcessDetailsMessage()).toEqual('No process details found');
processFiltersPage.clickCreateProcessButton(); processFiltersPage.clickCreateProcessButton();
processFiltersPage.clickNewProcessDropdown(); processFiltersPage.clickNewProcessDropdown();
processListPage.openProcessDropdown(); startProcessPage.selectFromProcessDropdown(appA.process_wse_name);
processListPage.selectProcessDropdown(0); startProcessPage.clickStartProcessButton();
processListPage.startProcess();
expect(processFiltersPage.numberOfProcessRows()).toEqual(1); expect(processFiltersPage.numberOfProcessRows()).toEqual(1);
processDetailsPage.checkProcessDetailsCard(); processDetailsPage.checkProcessDetailsCard();
@ -83,13 +84,12 @@ describe('Empty Process List Test', () => {
processServicesPage.checkApsContainer(); processServicesPage.checkApsContainer();
processServicesPage.goToApp(appB.title).clickProcessButton(); processServicesPage.goToApp(appB.title).clickProcessButton();
expect(processListPage.checkProcessListTitleIsDisplayed()).toEqual('No Processes Found'); expect(processListPage.checkProcessListTitleIsDisplayed()).toEqual('No Processes Found');
expect(processListPage.checkProcessDetailsMessage()).toEqual('No process details found'); expect(processDetailsPage.checkProcessDetailsMessage()).toEqual('No process details found');
processFiltersPage.clickCreateProcessButton(); processFiltersPage.clickCreateProcessButton();
processFiltersPage.clickNewProcessDropdown(); processFiltersPage.clickNewProcessDropdown();
processListPage.openProcessDropdown(); startProcessPage.selectFromProcessDropdown(appB.processName);
processListPage.selectProcessDropdown(0); startProcessPage.clickStartProcessButton();
processListPage.startProcess();
expect(processFiltersPage.numberOfProcessRows()).toEqual(1); expect(processFiltersPage.numberOfProcessRows()).toEqual(1);
processDetailsPage.checkProcessDetailsCard(); processDetailsPage.checkProcessDetailsCard();
}); });

View File

@ -41,6 +41,7 @@ exports.Files = {
title: "App_with_processes", title: "App_with_processes",
description: "Description for app", description: "Description for app",
process_se_name: "process_with_se", process_se_name: "process_with_se",
process_wse_name: "process_without_se",
task_name: "Task Test 2" task_name: "Task Test 2"
}, },