summaryrefslogtreecommitdiff
path: root/src/main/java/com/mavlushechka/a1qa/elements
diff options
context:
space:
mode:
authorMavlushechka <mavlushechka@gmail.com>2022-09-29 22:09:28 +0500
committerMavlushechka <mavlushechka@gmail.com>2022-09-29 22:09:28 +0500
commit8b5e81eded249e9eea38b0f019e1d85bc7a75078 (patch)
tree88d1f6588aa09690afefcc9b479f5a69ccbe5f6a /src/main/java/com/mavlushechka/a1qa/elements
parent639bb0e384550436308bfd8a8e8c76ceee64c932 (diff)
Add isAny() method to the BaseElement class
Diffstat (limited to 'src/main/java/com/mavlushechka/a1qa/elements')
-rw-r--r--src/main/java/com/mavlushechka/a1qa/elements/BaseElement.java28
-rw-r--r--src/main/java/com/mavlushechka/a1qa/elements/Field.java6
-rw-r--r--src/main/java/com/mavlushechka/a1qa/elements/Slider.java4
3 files changed, 26 insertions, 12 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"));
}
}