diff --git a/src/main/java/io/appium/java_client/functions/ActionSupplier.java b/src/main/java/io/appium/java_client/functions/ActionSupplier.java index 9554bf6ff..67ea8b888 100644 --- a/src/main/java/io/appium/java_client/functions/ActionSupplier.java +++ b/src/main/java/io/appium/java_client/functions/ActionSupplier.java @@ -20,6 +20,12 @@ import java.util.function.Supplier; +/** + * Represents a supplier of actions. + * + * @deprecated Use {@link Supplier} instead + */ +@Deprecated @FunctionalInterface public interface ActionSupplier> extends Supplier { } diff --git a/src/main/java/io/appium/java_client/functions/AppiumFunction.java b/src/main/java/io/appium/java_client/functions/AppiumFunction.java index de9069d37..1f45b32c1 100644 --- a/src/main/java/io/appium/java_client/functions/AppiumFunction.java +++ b/src/main/java/io/appium/java_client/functions/AppiumFunction.java @@ -28,7 +28,9 @@ * * @param The input type * @param The return type + * @deprecated Use {@link java.util.function.Function} instead */ +@Deprecated @FunctionalInterface public interface AppiumFunction extends Function, java.util.function.Function { diff --git a/src/main/java/io/appium/java_client/functions/ExpectedCondition.java b/src/main/java/io/appium/java_client/functions/ExpectedCondition.java index 885952525..926577c53 100644 --- a/src/main/java/io/appium/java_client/functions/ExpectedCondition.java +++ b/src/main/java/io/appium/java_client/functions/ExpectedCondition.java @@ -23,7 +23,9 @@ * with {@link java.util.function.Function}. * * @param The return type + * @deprecated Use {@link org.openqa.selenium.support.ui.ExpectedCondition} instead */ +@Deprecated @FunctionalInterface public interface ExpectedCondition extends org.openqa.selenium.support.ui.ExpectedCondition, AppiumFunction { diff --git a/src/test/java/io/appium/java_client/android/AndroidAbilityToUseSupplierTest.java b/src/test/java/io/appium/java_client/android/AndroidAbilityToUseSupplierTest.java index 5db7921a7..0fdd67661 100644 --- a/src/test/java/io/appium/java_client/android/AndroidAbilityToUseSupplierTest.java +++ b/src/test/java/io/appium/java_client/android/AndroidAbilityToUseSupplierTest.java @@ -1,7 +1,6 @@ package io.appium.java_client.android; import io.appium.java_client.AppiumBy; -import io.appium.java_client.functions.ActionSupplier; import io.appium.java_client.touch.offset.ElementOption; import org.junit.jupiter.api.Test; import org.openqa.selenium.By; @@ -10,6 +9,7 @@ import java.util.List; import java.util.Map; +import java.util.function.Supplier; import static io.appium.java_client.TestUtils.getCenter; import static io.appium.java_client.touch.WaitOptions.waitOptions; @@ -19,7 +19,7 @@ public class AndroidAbilityToUseSupplierTest extends BaseAndroidTest { - private final ActionSupplier horizontalSwipe = () -> { + private final Supplier horizontalSwipe = () -> { driver.findElement(By.id("io.appium.android.apis:id/gallery")); WebElement gallery = driver.findElement(By.id("io.appium.android.apis:id/gallery")); @@ -37,7 +37,7 @@ public class AndroidAbilityToUseSupplierTest extends BaseAndroidTest { .release(); }; - private final ActionSupplier verticalSwiping = () -> + private final Supplier verticalSwiping = () -> new AndroidTouchAction(driver) .press(element(driver.findElement(AppiumBy.accessibilityId("Gallery")))) diff --git a/src/test/java/io/appium/java_client/android/AndroidFunctionTest.java b/src/test/java/io/appium/java_client/android/AndroidFunctionTest.java index 79d327ae1..c8033cf9e 100644 --- a/src/test/java/io/appium/java_client/android/AndroidFunctionTest.java +++ b/src/test/java/io/appium/java_client/android/AndroidFunctionTest.java @@ -1,7 +1,5 @@ package io.appium.java_client.android; -import io.appium.java_client.functions.AppiumFunction; -import io.appium.java_client.functions.ExpectedCondition; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -9,12 +7,14 @@ import org.openqa.selenium.TimeoutException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; +import org.openqa.selenium.support.ui.ExpectedCondition; import org.openqa.selenium.support.ui.FluentWait; import org.openqa.selenium.support.ui.Wait; import java.util.ArrayList; import java.util.List; import java.util.Set; +import java.util.function.Function; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -27,16 +27,13 @@ public class AndroidFunctionTest extends BaseAndroidTest { - private final AppiumFunction> searchingFunction = input -> { + private final Function> searchingFunction = input -> { List result = input.findElements(By.tagName("a")); - if (result.size() > 0) { - return result; - } - return null; + return result.isEmpty() ? null : result; }; - private final AppiumFunction contextFunction = input -> { + private final Function contextFunction = input -> { Set contexts = driver.getContextHandles(); String current = driver.getContext(); contexts.forEach(context -> { @@ -51,7 +48,7 @@ public class AndroidFunctionTest extends BaseAndroidTest { return null; }; - private final AppiumFunction, List> filteringFunction = input -> { + private final Function, List> filteringFunction = input -> { final List result = new ArrayList<>(); input.forEach(element -> { if (element.getText().equals("Hello World! - 1")) { @@ -59,10 +56,7 @@ public class AndroidFunctionTest extends BaseAndroidTest { } }); - if (result.size() > 0) { - return result; - } - return null; + return result.isEmpty() ? null : result; }; @BeforeAll @@ -80,8 +74,7 @@ public void setUp() { @Test public void complexWaitingTestWithPreCondition() { - AppiumFunction> compositeFunction = - searchingFunction.compose(contextFunction); + Function> compositeFunction = searchingFunction.compose(contextFunction); Wait wait = new FluentWait<>(Pattern.compile("WEBVIEW")) .withTimeout(ofSeconds(30)); @@ -94,7 +87,7 @@ public void complexWaitingTestWithPreCondition() { @Test public void complexWaitingTestWithPostConditions() { final List calls = new ArrayList<>(); - AppiumFunction waitingForContext = input -> { + Function waitingForContext = input -> { WebDriver result = contextFunction.apply(input); if (result != null) { calls.add(true); @@ -102,7 +95,7 @@ public void complexWaitingTestWithPreCondition() { return result; }; - AppiumFunction> compositeFunction = waitingForContext + Function> compositeFunction = waitingForContext .andThen((ExpectedCondition>) input -> { List result = searchingFunction.apply(input); if (result != null) { @@ -110,7 +103,7 @@ public void complexWaitingTestWithPreCondition() { } return result; }) - .andThen((AppiumFunction, List>) input -> { + .andThen(input -> { List result = filteringFunction.apply(input); if (result != null) { calls.add(true);