From c9dc405083dbddf98391eef786c405e018837456 Mon Sep 17 00:00:00 2001 From: Catalin QA <catalin.comanici@ext.ec.europa.eu> Date: Thu, 20 Jan 2022 18:36:41 +0100 Subject: [PATCH] minor changes --- .../main/java/pages/domain/DomainPage.java | 2 - .../src/main/java/pages/users/UserPopup.java | 18 ++--- .../src/main/java/pages/users/UsersGrid.java | 70 +++++++++---------- .../src/main/java/pages/users/UsersPage.java | 69 ++++++++---------- .../src/test/java/ui/UsersPgTest.java | 3 +- 5 files changed, 73 insertions(+), 89 deletions(-) diff --git a/smp-ui-tests/src/main/java/pages/domain/DomainPage.java b/smp-ui-tests/src/main/java/pages/domain/DomainPage.java index 721e07975..58f3eab67 100644 --- a/smp-ui-tests/src/main/java/pages/domain/DomainPage.java +++ b/smp-ui-tests/src/main/java/pages/domain/DomainPage.java @@ -8,8 +8,6 @@ import org.openqa.selenium.support.pagefactory.AjaxElementLocatorFactory; import pages.components.ConfirmationDialog; import pages.components.baseComponents.PaginationControls; import pages.components.baseComponents.SMPPage; -import pages.components.grid.BasicGrid; -import pages.users.UserPopup; import utils.PROPERTIES; public class DomainPage extends SMPPage { diff --git a/smp-ui-tests/src/main/java/pages/users/UserPopup.java b/smp-ui-tests/src/main/java/pages/users/UserPopup.java index 4f0d27d3e..935f8a1cf 100644 --- a/smp-ui-tests/src/main/java/pages/users/UserPopup.java +++ b/smp-ui-tests/src/main/java/pages/users/UserPopup.java @@ -44,6 +44,9 @@ public class UserPopup extends PageComponent { @FindBy(css = "mat-form-field.password-confirmation > div > div.mat-form-field-flex > div > div") WebElement passConfirmationValidationError; + @FindBy(css = ".mat-form-field-infix > div.has-error") + WebElement passMatchValidationError; + @FindBy(css = "mat-dialog-content > table > tbody > tr > td > button:nth-child(1)") WebElement okBtn; @@ -131,20 +134,17 @@ public class UserPopup extends PageComponent { return null; } - public boolean isDuplicateUserNameErrorMsgDisPlayed() - { - try{ + public boolean isDuplicateUserNameErrorMsgDisPlayed() { + try { return driver.findElement(By.cssSelector("mat-form-field.username > div .has-error")).isDisplayed(); - } - catch (Exception e){ + } catch (Exception e) { e.printStackTrace(); return false; } } - public String getPasswordUnmatchingMsg() - { - WebElement passwordUnmatchingMsg = driver.findElement(By.cssSelector(".mat-form-field-infix > div.has-error")); - return passwordUnmatchingMsg.getText(); + public String getPassDontMatchValidationMsg() { +// WebElement passwordUnmatchingMsg = driver.findElement(By.cssSelector(".mat-form-field-infix > div.has-error")); + return passMatchValidationError.getText(); } } diff --git a/smp-ui-tests/src/main/java/pages/users/UsersGrid.java b/smp-ui-tests/src/main/java/pages/users/UsersGrid.java index d01e2eaa8..d2ef07e7c 100644 --- a/smp-ui-tests/src/main/java/pages/users/UsersGrid.java +++ b/smp-ui-tests/src/main/java/pages/users/UsersGrid.java @@ -3,6 +3,7 @@ package pages.users; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; +import pages.components.baseComponents.PaginationControls; import pages.components.grid.BasicGrid; import java.util.ArrayList; @@ -12,10 +13,10 @@ public class UsersGrid extends BasicGrid { public UsersGrid(WebDriver driver, WebElement container) { super(driver, container); } - - public List<UserRowInfo> getRows(){ + + public List<UserRowInfo> getRows() { List<UserRowInfo> rowInfos = new ArrayList<>(); - + for (WebElement gridRow : gridRows) { List<WebElement> cells = gridRow.findElements(By.tagName("datatable-body-cell")); UserRowInfo rowInfo = new UserRowInfo(); @@ -30,12 +31,11 @@ public class UsersGrid extends BasicGrid { public boolean isUserListed(String username) { boolean end = false; - UsersPage page = new UsersPage(driver); - page.pagination.skipToFirstPage(); + PaginationControls pagination = new PaginationControls(driver); + pagination.skipToFirstPage(); - while (!end) { - page = new UsersPage(driver); - List<UserRowInfo> rows = page.grid().getRows(); + do { + List<UserRowInfo> rows = getRows(); for (UserRowInfo row : rows) { if (row.getUsername().equalsIgnoreCase(username)) { @@ -43,66 +43,60 @@ public class UsersGrid extends BasicGrid { } } - if (page.pagination.hasNextPage()) { - page.pagination.goToNextPage(); - } else { - end = true; + try { + pagination.goToNextPage(); + } catch (Exception e) { } - } + } while (pagination.hasNextPage()); return false; } public int scrollToUser(String username) { - UsersPage page = new UsersPage(driver); - page.pagination.skipToFirstPage(); + PaginationControls pagination = new PaginationControls(driver); + pagination.skipToFirstPage(); - boolean end = false; - while (!end) { - page = new UsersPage(driver); + do { - List<UserRowInfo> rows = page.grid().getRows(); + List<UserRowInfo> rows = getRows(); for (int i = 0; i < rows.size(); i++) { if (rows.get(i).getUsername().equalsIgnoreCase(username)) { return i; } } - - if (page.pagination.hasNextPage()) { - page.pagination.goToNextPage(); - } else { - end = true; + try { + pagination.goToNextPage(); + } catch (Exception e) { } - } + + } while (pagination.hasNextPage()); return -1; } public int scrollToUserWithRole(String role) { - UsersPage page = new UsersPage(driver); - page.pagination.skipToFirstPage(); + PaginationControls pagination = new PaginationControls(driver); + pagination.skipToFirstPage(); - boolean end = false; - while (!end) { - page = new UsersPage(driver); + do { - List<UserRowInfo> rows = page.grid().getRows(); + List<UserRowInfo> rows = getRows(); for (int i = 0; i < rows.size(); i++) { if (rows.get(i).getRole().equalsIgnoreCase(role)) { return i; } } - if (page.pagination.hasNextPage()) { - page.pagination.goToNextPage(); - } else { - end = true; + try { + pagination.goToNextPage(); + } catch (Exception e) { } - } + + } while (pagination.hasNextPage()); return -1; } - - + + } diff --git a/smp-ui-tests/src/main/java/pages/users/UsersPage.java b/smp-ui-tests/src/main/java/pages/users/UsersPage.java index 5db580b6a..cb232f7ee 100644 --- a/smp-ui-tests/src/main/java/pages/users/UsersPage.java +++ b/smp-ui-tests/src/main/java/pages/users/UsersPage.java @@ -19,7 +19,7 @@ public class UsersPage extends SMPPage { public UsersPage(WebDriver driver) { super(driver); this.pageHeader.waitForTitleToBe("Users"); - PageFactory.initElements( new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this); + PageFactory.initElements(new AjaxElementLocatorFactory(driver, PROPERTIES.TIMEOUT), this); } @@ -27,24 +27,24 @@ public class UsersPage extends SMPPage { @FindBy(id = "searchTable") private WebElement userTableContainer; - + @FindBy(id = "cancelButton") private WebElement cancelBtn; - + @FindBy(id = "saveButton") private WebElement saveBtn; - + @FindBy(id = "newButton") private WebElement newBtn; - + @FindBy(id = "editButton") private WebElement editBtn; - + @FindBy(id = "deleteButton") private WebElement deleteBtn; - - - public boolean isLoaded(){ + + + public boolean isLoaded() { log.info("checking Users page is loaded"); return isVisible(cancelBtn) @@ -54,58 +54,60 @@ public class UsersPage extends SMPPage { && isVisible(editBtn) && isVisible(deleteBtn); } - - public boolean isCancelButtonEnabled(){ + + public boolean isCancelButtonEnabled() { log.info("cancel button"); return isEnabled(cancelBtn); } - public boolean isSaveButtonEnabled(){ + + public boolean isSaveButtonEnabled() { log.info("save button"); return isEnabled(saveBtn); } - public boolean isDeleteButtonEnabled(){ + + public boolean isDeleteButtonEnabled() { waitForXMillis(200); log.info("delete button"); return isEnabled(deleteBtn); } - public ConfirmationDialog clickCancel(){ + public ConfirmationDialog clickCancel() { log.info("click cancel button"); waitForElementToBeClickable(cancelBtn).click(); return new ConfirmationDialog(driver); } - - public ConfirmationDialog clickSave(){ + + public ConfirmationDialog clickSave() { log.info("click save button"); waitForElementToBeClickable(saveBtn).click(); return new ConfirmationDialog(driver); } - - public void clickDelete(){ + + public void clickDelete() { log.info("click delete button"); waitForElementToBeClickable(deleteBtn).click(); waitForRowsToLoad(); } - public UserPopup clickNew(){ + + public UserPopup clickNew() { log.info("click new button"); waitForElementToBeClickable(newBtn).click(); return new UserPopup(driver); } - public UserPopup clickEdit(){ + public UserPopup clickEdit() { log.info("click edit button"); waitForElementToBeClickable(editBtn).click(); return new UserPopup(driver); } - - - public UsersGrid grid(){ + + + public UsersGrid grid() { return new UsersGrid(driver, userTableContainer); } - - public void createUser(){ + public void createUser() { log.info("create user"); waitForElementToBeClickable(newBtn).click(); @@ -115,23 +117,14 @@ public class UsersPage extends SMPPage { } - public boolean isNewButtonEnabled() - - { - try{ + public boolean isNewButtonEnabled() { + try { return newBtn.isEnabled(); - } - catch(Exception e) - { + } catch (Exception e) { e.printStackTrace(); - return false; } - + return false; } - - - - } diff --git a/smp-ui-tests/src/test/java/ui/UsersPgTest.java b/smp-ui-tests/src/test/java/ui/UsersPgTest.java index a4e73ed75..782d8feac 100644 --- a/smp-ui-tests/src/test/java/ui/UsersPgTest.java +++ b/smp-ui-tests/src/test/java/ui/UsersPgTest.java @@ -8,7 +8,6 @@ import pages.components.ConfirmationDialog; import pages.components.baseComponents.SMPPage; import pages.components.messageArea.AlertMessage; import pages.users.UserPopup; -import pages.users.UserRowInfo; import pages.users.UsersPage; import utils.Generator; import utils.TestDataProvider; @@ -483,7 +482,7 @@ public class UsersPgTest extends BaseTest { popup.fillDetailsForm(username, validPass, confirmPass); soft.assertTrue(!popup.isOKButtonActive(), "OK button is enabled before valid data is filled in the popup(2)"); - soft.assertEquals(popup.getPasswordUnmatchingMsg(), errorMsg, "confirmation input does not contain the message 'Passwords do not match' ."); + soft.assertEquals(popup.getPassDontMatchValidationMsg(), errorMsg, "confirmation input does not contain the message 'Passwords do not match' ."); soft.assertAll(); } -- GitLab