diff options
Diffstat (limited to 'src/main/java/com/mavlushechka')
4 files changed, 27 insertions, 13 deletions
diff --git a/src/main/java/com/mavlushechka/a1qa/elements/BaseElement.java b/src/main/java/com/mavlushechka/a1qa/elements/BaseElement.java index a2dc55a..a90205d 100644 --- a/src/main/java/com/mavlushechka/a1qa/elements/BaseElement.java +++ b/src/main/java/com/mavlushechka/a1qa/elements/BaseElement.java @@ -9,6 +9,8 @@ import org.openqa.selenium.Dimension; import org.openqa.selenium.WebElement; import org.openqa.selenium.support.ui.ExpectedConditions; +import java.util.List; + public abstract class BaseElement { private final By locator; @@ -21,7 +23,7 @@ public abstract class BaseElement { } public void click() { - WebElement webElement = find(); + WebElement webElement = findElement(); scrollTo(); LoggerUtils.info("Clicking on the \"" + name + "\" element."); @@ -29,14 +31,14 @@ public abstract class BaseElement { } public String getText() { - WebElement webElement = find(); + WebElement webElement = findElement(); LoggerUtils.info("Getting text of the \"" + name + "\" element."); return webElement.getText(); } public boolean isEnabled() { - WebElement webElement = find(); + WebElement webElement = findElement(); LoggerUtils.info("Getting state of the \"" + name + "\" element."); return webElement.isEnabled(); @@ -52,32 +54,44 @@ public abstract class BaseElement { return WebDriverWaitFactory.createWebDriverWait().until(ExpectedConditions.invisibilityOfElementLocated(locator)); } + public boolean isAny() { + List<WebElement> webElements = findElements(); + + LoggerUtils.info("Getting any \"" + name + "\" elements."); + return webElements.size() > 0; + } + public String getName() { return name; } public Dimension getDimension() { - WebElement webElement = find(); + WebElement webElement = findElement(); LoggerUtils.info("Getting dimension of the \"" + name + "\" element."); return webElement.getSize(); } public String getAttributeValue(String attribute) { - WebElement webElement = find(); + WebElement webElement = findElement(); LoggerUtils.info("Getting \"" + attribute + "\" attribute of the \"" + name + "\" element."); return webElement.getAttribute(attribute); } - protected WebElement find() { + protected WebElement findElement() { isVisible(); LoggerUtils.info("Finding the \"" + name + "\" element."); return WebDriverUtils.findElement(locator); } + protected List<WebElement> findElements() { + LoggerUtils.info("Finding the \"" + name + "\" elements."); + return WebDriverUtils.findElements(locator); + } + protected void scrollTo() { - WebElement webElement = find(); + WebElement webElement = findElement(); LoggerUtils.info("Scrolling to the \"" + name + "\" element."); ActionUtils.scrollTo(webElement); diff --git a/src/main/java/com/mavlushechka/a1qa/elements/Field.java b/src/main/java/com/mavlushechka/a1qa/elements/Field.java index 99cd41d..7ac3806 100644 --- a/src/main/java/com/mavlushechka/a1qa/elements/Field.java +++ b/src/main/java/com/mavlushechka/a1qa/elements/Field.java @@ -16,21 +16,21 @@ public class Field extends BaseElement { } public void sendKeys(String keys, boolean isSecret) { - WebElement field = find(); + WebElement field = findElement(); LoggerUtils.info("Entering \"" + (isSecret ? StringUtils.replaceByStars(keys) : keys) + "\" keys to the \"" + getName() + "\" field."); field.sendKeys(keys); } public void clear() { - WebElement field = find(); + WebElement field = findElement(); LoggerUtils.info("Clearing the \"" + getName() + "\" field."); field.clear(); } public String getValue() { - return find().getAttribute("value"); + return findElement().getAttribute("value"); } } diff --git a/src/main/java/com/mavlushechka/a1qa/elements/Slider.java b/src/main/java/com/mavlushechka/a1qa/elements/Slider.java index 45c1e69..1261733 100644 --- a/src/main/java/com/mavlushechka/a1qa/elements/Slider.java +++ b/src/main/java/com/mavlushechka/a1qa/elements/Slider.java @@ -14,7 +14,7 @@ public class Slider extends BaseElement { } public void slideTo(int percentage) { - WebElement slider = find(); + WebElement slider = findElement(); Point currentPoint = new Point((int) Math.round(DoubleUtils.getPercentageOf(slider.getSize().getWidth(), getValue())-getDimension().width/2.0), 0); Point expectedPoint = new Point((int) Math.round(DoubleUtils.getPercentageOf(slider.getSize().getWidth(), percentage)-getDimension().width/2.0), 0); @@ -23,7 +23,7 @@ public class Slider extends BaseElement { } public int getValue() { - return Integer.parseInt(find().getAttribute("value")); + return Integer.parseInt(findElement().getAttribute("value")); } } diff --git a/src/main/java/com/mavlushechka/a1qa/pages/BaseForm.java b/src/main/java/com/mavlushechka/a1qa/pages/BaseForm.java index 3ac855a..9ad215a 100644 --- a/src/main/java/com/mavlushechka/a1qa/pages/BaseForm.java +++ b/src/main/java/com/mavlushechka/a1qa/pages/BaseForm.java @@ -14,7 +14,7 @@ public abstract class BaseForm { } public boolean isOpened() { - return uniqueElement.isVisible(); + return uniqueElement.isAny(); } public String getName() { |