Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ signing.secretKeyRingFile=PathToYourKeyRingFile
ossrhUsername=your-jira-id
ossrhPassword=your-jira-password

selenium.version=3.141.59
selenium.version=4.0.0
63 changes: 1 addition & 62 deletions src/main/java/io/appium/java_client/AppiumDriver.java
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,7 @@
*/
@SuppressWarnings("unchecked")
public class AppiumDriver<T extends WebElement>
extends DefaultGenericMobileDriver<T> implements ComparesImages, FindsByImage<T>, FindsByCustom<T>,
ExecutesDriverScript, LogsEvents, HasSettings {
extends DefaultGenericMobileDriver<T> implements ComparesImages, ExecutesDriverScript, LogsEvents, HasSettings {

private static final ErrorHandler errorHandler = new ErrorHandler(new ErrorCodesMobile(), true);
// frequently used command parameters
Expand Down Expand Up @@ -134,23 +133,6 @@ public AppiumDriver(Capabilities desiredCapabilities) {
this(AppiumDriverLocalService.buildDefaultService(), desiredCapabilities);
}

/**
* Changes platform name and returns new capabilities.
*
* @param originalCapabilities the given {@link Capabilities}.
* @param newPlatform a {@link MobileCapabilityType#PLATFORM_NAME} value which has
* to be set up
* @return {@link Capabilities} with changed mobile platform value
* @deprecated Please use {@link #updateDefaultPlatformName(Capabilities, String)} instead
*/
@Deprecated
protected static Capabilities substituteMobilePlatform(Capabilities originalCapabilities,
String newPlatform) {
DesiredCapabilities dc = new DesiredCapabilities(originalCapabilities);
dc.setCapability(PLATFORM_NAME, newPlatform);
return dc;
}

/**
* Changes platform name if it is not set and returns new capabilities.
*
Expand All @@ -174,49 +156,6 @@ public List<T> findElements(By by) {
return super.findElements(by);
}

@Override
public List<T> findElements(String by, String using) {
return super.findElements(by, using);
}

@Override
public List<T> findElementsById(String id) {
return super.findElementsById(id);
}

public List<T> findElementsByLinkText(String using) {
return super.findElementsByLinkText(using);
}

public List<T> findElementsByPartialLinkText(String using) {
return super.findElementsByPartialLinkText(using);
}

public List<T> findElementsByTagName(String using) {
return super.findElementsByTagName(using);
}

public List<T> findElementsByName(String using) {
return super.findElementsByName(using);
}

public List<T> findElementsByClassName(String using) {
return super.findElementsByClassName(using);
}

public List<T> findElementsByCssSelector(String using) {
return super.findElementsByCssSelector(using);
}

public List<T> findElementsByXPath(String using) {
return super.findElementsByXPath(using);
}

@Override
public List<T> findElementsByAccessibilityId(String using) {
return super.findElementsByAccessibilityId(using);
}

@Override
public ExecuteMethod getExecuteMethod() {
return executeMethod;
Expand Down
103 changes: 0 additions & 103 deletions src/main/java/io/appium/java_client/DefaultGenericMobileDriver.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@

import org.openqa.selenium.By;
import org.openqa.selenium.Capabilities;
import org.openqa.selenium.WebDriverException;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CommandExecutor;
import org.openqa.selenium.remote.RemoteWebDriver;
Expand Down Expand Up @@ -49,112 +48,10 @@ public DefaultGenericMobileDriver(CommandExecutor executor, Capabilities desired
return super.findElements(by);
}

@Override public List findElements(String by, String using) {
return super.findElements(by, using);
}

@Override public T findElement(By by) {
return (T) super.findElement(by);
}

@Override public T findElement(String by, String using) {
return (T) super.findElement(by, using);
}

@Override public List findElementsById(String id) {
return super.findElementsById(id);
}

@Override public T findElementById(String id) {
return (T) super.findElementById(id);
}

/**
* Finds a single element by link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByLinkText(String using) throws WebDriverException {
return (T) super.findElementByLinkText(using);
}

/**
* Finds many elements by link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByLinkText(String using) throws WebDriverException {
return super.findElementsByLinkText(using);
}

/**
* Finds a single element by partial link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByPartialLinkText(String using) throws WebDriverException {
return (T) super.findElementByPartialLinkText(using);
}

/**
* Finds many elements by partial link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByPartialLinkText(String using) throws WebDriverException {
return super.findElementsByPartialLinkText(using);
}

public T findElementByTagName(String using) {
return (T) super.findElementByTagName(using);
}

public List findElementsByTagName(String using) {
return super.findElementsByTagName(using);
}

public T findElementByName(String using) {
return (T) super.findElementByName(using);
}

public List findElementsByName(String using) {
return super.findElementsByName(using);
}

public T findElementByClassName(String using) {
return (T) super.findElementByClassName(using);
}

public List findElementsByClassName(String using) {
return super.findElementsByClassName(using);
}

/**
* Finds a single element by CSS selector.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByCssSelector(String using) throws WebDriverException {
return (T) super.findElementByCssSelector(using);
}

/**
* Finds many elements by CSS selector.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByCssSelector(String using) throws WebDriverException {
return super.findElementsByCssSelector(using);
}

public T findElementByXPath(String using) {
return (T) super.findElementByXPath(using);
}

public List findElementsByXPath(String using) {
return super.findElementsByXPath(using);
}

@Override
public String toString() {
Capabilities capabilities = getCapabilities();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,25 +21,14 @@
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriverException;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.internal.FindsByClassName;
import org.openqa.selenium.internal.FindsByCssSelector;
import org.openqa.selenium.internal.FindsById;
import org.openqa.selenium.internal.FindsByLinkText;
import org.openqa.selenium.internal.FindsByName;
import org.openqa.selenium.internal.FindsByTagName;
import org.openqa.selenium.internal.FindsByXPath;
import org.openqa.selenium.remote.RemoteWebElement;
import org.openqa.selenium.remote.Response;

import java.util.List;
import java.util.Map;

@SuppressWarnings({"unchecked", "rawtypes"})
abstract class DefaultGenericMobileElement<T extends WebElement> extends RemoteWebElement
implements FindsByClassName,
FindsByCssSelector, FindsById,
FindsByLinkText, FindsByName, FindsByTagName, FindsByXPath, FindsByFluentSelector<T>, FindsByAccessibilityId<T>,
ExecutesMethod {
abstract class DefaultGenericMobileElement<T extends WebElement> extends RemoteWebElement implements ExecutesMethod {

@Override public Response execute(String driverCommand, Map<String, ?> parameters) {
return super.execute(driverCommand, parameters);
Expand All @@ -53,127 +42,8 @@ abstract class DefaultGenericMobileElement<T extends WebElement> extends RemoteW
return super.findElements(by);
}

@Override public List findElements(String by, String using) {
return super.findElements(by, using);
}

@Override public T findElement(By by) {
return (T) super.findElement(by);
}

@Override public T findElement(String by, String using) {
return (T) super.findElement(by, using);
}

@Override public List findElementsById(String id) {
return super.findElementsById(id);
}

@Override public T findElementById(String id) {
return (T) super.findElementById(id);
}

/**
* Finds a single element by link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByLinkText(String using) throws WebDriverException {
return (T) super.findElementByLinkText(using);
}

/**
* Finds many elements by link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByLinkText(String using) throws WebDriverException {
return super.findElementsByLinkText(using);
}

/**
* Finds a single element by partial link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByPartialLinkText(String using) throws WebDriverException {
return (T) super.findElementByPartialLinkText(using);
}

/**
* Finds many elements by partial link text.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByPartialLinkText(String using) throws WebDriverException {
return super.findElementsByPartialLinkText(using);
}

public T findElementByTagName(String using) {
return (T) super.findElementByTagName(using);
}

public List findElementsByTagName(String using) {
return super.findElementsByTagName(using);
}

public T findElementByName(String using) {
return (T) super.findElementByName(using);
}

public List findElementsByName(String using) {
return super.findElementsByName(using);
}

public T findElementByClassName(String using) {
return (T) super.findElementByClassName(using);
}

public List findElementsByClassName(String using) {
return super.findElementsByClassName(using);
}

/**
* Finds a single element by CSS selector.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public T findElementByCssSelector(String using) throws WebDriverException {
return (T) super.findElementByCssSelector(using);
}

/**
* Finds many elements by CSS selector.
*
* @throws WebDriverException This method doesn't work against native app UI.
*/
public List findElementsByCssSelector(String using) throws WebDriverException {
return super.findElementsByCssSelector(using);
}

public T findElementByXPath(String using) {
return (T) super.findElementByXPath(using);
}

public List findElementsByXPath(String using) {
return super.findElementsByXPath(using);
}

/**
* {@inheritDoc}
*
* @throws WebDriverException because it may not work against native app UI.
*/
public void submit() throws WebDriverException {
super.submit();
}

/**
* {@inheritDoc}
*
* @throws WebDriverException because it may not work against native app UI.
*/
public String getCssValue(String propertyName) throws WebDriverException {
return super.getCssValue(propertyName);
}
}
27 changes: 0 additions & 27 deletions src/main/java/io/appium/java_client/DriverMobileCommand.java

This file was deleted.

Loading