Refactor tasksListPage (#3952)

This commit is contained in:
cristinaj
2018-11-09 12:17:53 +02:00
committed by Eugenio Romano
parent 93578baecd
commit 536467f0ee
23 changed files with 232 additions and 229 deletions

View File

@@ -16,44 +16,16 @@
*/
var Util = require('../../../util/util');
var DataTablePage = require('../dataTablePage');
var TasksListPage = function () {
var taskList = element(by.css("adf-tasklist"));
var tableBody = element.all(by.css("adf-datatable div[class='adf-datatable-body']")).first();
var sortByName = element(by.css('div[data-automation-id="auto_id_name"]'));
var firstTaskOnTaskList = element.all(by.css('div[class="adf-datatable-body"] span')).first();
var taskOnTaskList = element.all(by.css('div[class="adf-datatable-body"] span'));
var spinner = element(by.css('mat-progress-spinner'));
this.clickSortByName = function () {
Util.waitUntilElementIsVisible(sortByName);
return sortByName.click();
};
var dataTable = new DataTablePage(taskList);
this.checkHighlightedTaskInTasksList = function(taskName) {
var row = by.cssContainingText('div[class="adf-datatable-row is-selected ng-star-inserted"] span', taskName);
Util.waitUntilElementIsVisible(taskList.element(row));
return this;
};
this.checkTaskIsDisplayedInTasksList = function(taskName) {
var row = by.cssContainingText("span", taskName);
Util.waitUntilElementIsVisible(taskList.all(row).first());
return this;
};
this.selectTaskFromTasksList = function(taskName) {
var row = by.cssContainingText("span", taskName);
Util.waitUntilElementIsVisible(taskList.element(row));
taskList.element(row).click();
return this;
};
this.checkTaskIsNotDisplayedInTasksList = function(taskName) {
var row = by.cssContainingText("span", taskName);
Util.waitUntilElementIsNotOnPage(taskList.element(row));
return this;
this.getDataTable = function() {
return dataTable;
};
this.checkTaskListIsLoaded = function () {
@@ -61,23 +33,6 @@ var TasksListPage = function () {
return this;
};
this.waitForTableBody = function (){
Util.waitUntilElementIsVisible(tableBody);
};
this.firstTaskOnTaskList = function (){
Util.waitUntilElementIsVisible(firstTaskOnTaskList);
return firstTaskOnTaskList.getText();
};
this.taskOnTaskListInPosition = function (position){
Util.waitUntilElementIsVisible(taskOnTaskList);
return taskOnTaskList.get(position -1).getText();
};
this.checkSpinnerIsDisplayed = function () {
Util.waitUntilElementIsPresent(spinner);
};
};
module.exports = TasksListPage;

View File

@@ -38,6 +38,7 @@ export class TasksPage {
checklistDialog = element(by.id('checklist-dialog'));
checklistNoMessage = element(by.id('checklist-none-message'));
numberOfChecklists = element(by.css('[data-automation-id="checklist-label"] mat-chip'));
sortByName = by.css('div[data-automation-id="auto_id_name"]');
createNewTask() {
this.createButtonIsDisplayed();
@@ -118,10 +119,6 @@ export class TasksPage {
return this;
}
getAllDisplayedRows() {
return element.all(this.rows).count();
}
completeTaskNoForm() {
Util.waitUntilElementIsClickable(this.completeButtonNoForm);
this.completeButtonNoForm.click();
@@ -165,4 +162,12 @@ export class TasksPage {
return this;
}
clickSortByNameAsc() {
return this.tasksListPage().getDataTable().sortByColumn(true, this.sortByName);
}
clickSortByNameDesc() {
return this.tasksListPage().getDataTable().sortByColumn(false, this.sortByName);
}
}