[ACA-3329] Refactor isCompleteFormButtonDisabled method (#5765)

* Refactor isCompleteFormButtonDisabled method

- Change the isCompleteFormButtonDisabled() method structure as per the Code Style E2E 03-01
- Replace the isCompleteFormButtonDisabled() with isCompleteFormButtonEnabled() in the tests
- Add lists with the default tasks and process filters name in order to use a variable instead of a string (ADW eg. in the breadcrumb checks)

* Add visibility wait in isCompleteFormButtonEnabled method

* Refactor isProcessListDisplayed method

- Change the isProcessListDisplayed() method structure as per the Code Style E2E 03-01
- Replace the checkProcessListIsDisplayed() with isProcessListDisplayed() in the tests

* Fix isCompleteFormButtonEnabled and isCancelButtonEnabled methods

* Fix isCompleteFormButtonEnabled method

* Create separate method to check for Complete button visibility

* fix tslint
This commit is contained in:
Iulia Burcă
2020-06-16 14:51:34 +03:00
committed by GitHub
parent 0349280d42
commit 3651cc0235
22 changed files with 121 additions and 91 deletions

View File

@@ -162,16 +162,22 @@ export class FormFields {
await BrowserActions.clearSendKeys(input, value);
}
async isCompleteFormButtonDisabled(): Promise<string> {
await BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
return this.completeButton.getAttribute('disabled');
async isCompleteButtonDisplayed(): Promise<boolean> {
try {
await BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
return true;
} catch (error) {
return false;
}
}
async isCompleteFormButtonEnabled(): Promise<boolean> {
return this.completeButton.isEnabled();
}
async isCancelButtonDisplayed(): Promise<boolean> {
try {
await BrowserVisibility.waitUntilElementIsVisible(
this.cancelButton
);
await BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
return true;
} catch (error) {
return false;
@@ -179,12 +185,7 @@ export class FormFields {
}
async isCancelButtonEnabled(): Promise<boolean> {
try {
await this.cancelButton.isEnabled();
return true;
} catch (error) {
return false;
}
return this.cancelButton.isEnabled();
}
async clickCancelButton(): Promise<void> {

View File

@@ -148,8 +148,16 @@ export class FormFieldsPage {
await BrowserActions.clearSendKeys(input, value);
}
async isCompleteFormButtonDisabled(): Promise<string> {
await BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
return this.completeButton.getAttribute('disabled');
async isCompleteButtonDisplayed(): Promise<boolean> {
try {
await BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
return true;
} catch (error) {
return false;
}
}
async isCompleteFormButtonEnabled(): Promise<boolean> {
return this.completeButton.isEnabled();
}
}

View File

@@ -19,6 +19,11 @@ import { by, element } from 'protractor';
import { FiltersPage } from './filters.page';
export class ProcessFiltersPage {
defaultProcessFilters = {
running: 'Running',
completed: 'Completed',
all: 'All'
};
filtersPage = new FiltersPage();
@@ -40,26 +45,26 @@ export class ProcessFiltersPage {
}
async isRunningFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('Running');
return this.filtersPage.isFilterHighlighted(this.defaultProcessFilters.running);
}
async isCompletedFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('Completed');
return this.filtersPage.isFilterHighlighted(this.defaultProcessFilters.completed);
}
async isAllFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('All');
return this.filtersPage.isFilterHighlighted(this.defaultProcessFilters.all);
}
async isRunningFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('Running');
return this.filtersPage.isFilterDisplayed(this.defaultProcessFilters.running);
}
async isCompletedFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('Completed');
return this.filtersPage.isFilterDisplayed(this.defaultProcessFilters.completed);
}
async isAllFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('All');
return this.filtersPage.isFilterDisplayed(this.defaultProcessFilters.all);
}
}

View File

@@ -34,8 +34,13 @@ export class ProcessListPage {
return BrowserVisibility.waitUntilElementIsNotPresent(this.processListEmptyTitle);
}
async checkProcessListIsDisplayed(): Promise<void> {
await BrowserVisibility.waitUntilElementIsVisible(this.processInstanceList);
async isProcessListDisplayed(): Promise<boolean> {
try {
await BrowserVisibility.waitUntilElementIsVisible(this.processInstanceList);
return true;
} catch (error) {
return false;
}
}
checkContentIsDisplayedByColumn(column: string, processName: string): Promise<void> {

View File

@@ -19,6 +19,12 @@ import { by, element } from 'protractor';
import { FiltersPage } from './filters.page';
export class TaskFiltersPage {
defaultTaskFilters = {
myTasks: 'My Tasks',
queuedTasks: 'Queued Tasks',
involvedTasks: 'Involved Tasks',
completedTasks: 'Completed Tasks'
};
filtersPage = new FiltersPage();
@@ -45,34 +51,34 @@ export class TaskFiltersPage {
}
async isMyTasksFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('My Tasks');
return this.filtersPage.isFilterHighlighted(this.defaultTaskFilters.myTasks);
}
async isQueuedFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('Queued Tasks');
return this.filtersPage.isFilterHighlighted(this.defaultTaskFilters.queuedTasks);
}
async isCompletedFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('Completed Tasks');
return this.filtersPage.isFilterHighlighted(this.defaultTaskFilters.completedTasks);
}
async isInvolvedFilterHighlighted(): Promise<boolean> {
return this.filtersPage.isFilterHighlighted('Involved Tasks');
return this.filtersPage.isFilterHighlighted(this.defaultTaskFilters.involvedTasks);
}
async isMyTasksFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('My Tasks');
return this.filtersPage.isFilterDisplayed(this.defaultTaskFilters.myTasks);
}
async isQueuedFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('Queued Tasks');
return this.filtersPage.isFilterDisplayed(this.defaultTaskFilters.queuedTasks);
}
async isCompletedFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('Completed Tasks');
return this.filtersPage.isFilterDisplayed(this.defaultTaskFilters.completedTasks);
}
async isInvolvedFilterDisplayed(): Promise<boolean> {
return this.filtersPage.isFilterDisplayed('Involved Tasks');
return this.filtersPage.isFilterDisplayed(this.defaultTaskFilters.involvedTasks);
}
}