Skip to content

Commit 27bdc96

Browse files
committed
refactor!: migrate to Selenium 4
1 parent f2e8f93 commit 27bdc96

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+626
-906
lines changed

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ signing.secretKeyRingFile=PathToYourKeyRingFile
77
ossrhUsername=your-jira-id
88
ossrhPassword=your-jira-password
99

10-
selenium.version=3.141.59
10+
selenium.version=4.0.0-rc-3

src/main/java/io/appium/java_client/AppiumDriver.java

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -179,39 +179,6 @@ public List<T> findElements(String by, String using) {
179179
return super.findElements(by, using);
180180
}
181181

182-
@Override
183-
public List<T> findElementsById(String id) {
184-
return super.findElementsById(id);
185-
}
186-
187-
public List<T> findElementsByLinkText(String using) {
188-
return super.findElementsByLinkText(using);
189-
}
190-
191-
public List<T> findElementsByPartialLinkText(String using) {
192-
return super.findElementsByPartialLinkText(using);
193-
}
194-
195-
public List<T> findElementsByTagName(String using) {
196-
return super.findElementsByTagName(using);
197-
}
198-
199-
public List<T> findElementsByName(String using) {
200-
return super.findElementsByName(using);
201-
}
202-
203-
public List<T> findElementsByClassName(String using) {
204-
return super.findElementsByClassName(using);
205-
}
206-
207-
public List<T> findElementsByCssSelector(String using) {
208-
return super.findElementsByCssSelector(using);
209-
}
210-
211-
public List<T> findElementsByXPath(String using) {
212-
return super.findElementsByXPath(using);
213-
}
214-
215182
@Override
216183
public List<T> findElementsByAccessibilityId(String using) {
217184
return super.findElementsByAccessibilityId(using);

src/main/java/io/appium/java_client/DefaultGenericMobileDriver.java

Lines changed: 0 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import org.openqa.selenium.By;
2222
import org.openqa.selenium.Capabilities;
23-
import org.openqa.selenium.WebDriverException;
2423
import org.openqa.selenium.WebElement;
2524
import org.openqa.selenium.remote.CommandExecutor;
2625
import org.openqa.selenium.remote.RemoteWebDriver;
@@ -61,100 +60,6 @@ public DefaultGenericMobileDriver(CommandExecutor executor, Capabilities desired
6160
return (T) super.findElement(by, using);
6261
}
6362

64-
@Override public List findElementsById(String id) {
65-
return super.findElementsById(id);
66-
}
67-
68-
@Override public T findElementById(String id) {
69-
return (T) super.findElementById(id);
70-
}
71-
72-
/**
73-
* Finds a single element by link text.
74-
*
75-
* @throws WebDriverException This method doesn't work against native app UI.
76-
*/
77-
public T findElementByLinkText(String using) throws WebDriverException {
78-
return (T) super.findElementByLinkText(using);
79-
}
80-
81-
/**
82-
* Finds many elements by link text.
83-
*
84-
* @throws WebDriverException This method doesn't work against native app UI.
85-
*/
86-
public List findElementsByLinkText(String using) throws WebDriverException {
87-
return super.findElementsByLinkText(using);
88-
}
89-
90-
/**
91-
* Finds a single element by partial link text.
92-
*
93-
* @throws WebDriverException This method doesn't work against native app UI.
94-
*/
95-
public T findElementByPartialLinkText(String using) throws WebDriverException {
96-
return (T) super.findElementByPartialLinkText(using);
97-
}
98-
99-
/**
100-
* Finds many elements by partial link text.
101-
*
102-
* @throws WebDriverException This method doesn't work against native app UI.
103-
*/
104-
public List findElementsByPartialLinkText(String using) throws WebDriverException {
105-
return super.findElementsByPartialLinkText(using);
106-
}
107-
108-
public T findElementByTagName(String using) {
109-
return (T) super.findElementByTagName(using);
110-
}
111-
112-
public List findElementsByTagName(String using) {
113-
return super.findElementsByTagName(using);
114-
}
115-
116-
public T findElementByName(String using) {
117-
return (T) super.findElementByName(using);
118-
}
119-
120-
public List findElementsByName(String using) {
121-
return super.findElementsByName(using);
122-
}
123-
124-
public T findElementByClassName(String using) {
125-
return (T) super.findElementByClassName(using);
126-
}
127-
128-
public List findElementsByClassName(String using) {
129-
return super.findElementsByClassName(using);
130-
}
131-
132-
/**
133-
* Finds a single element by CSS selector.
134-
*
135-
* @throws WebDriverException This method doesn't work against native app UI.
136-
*/
137-
public T findElementByCssSelector(String using) throws WebDriverException {
138-
return (T) super.findElementByCssSelector(using);
139-
}
140-
141-
/**
142-
* Finds many elements by CSS selector.
143-
*
144-
* @throws WebDriverException This method doesn't work against native app UI.
145-
*/
146-
public List findElementsByCssSelector(String using) throws WebDriverException {
147-
return super.findElementsByCssSelector(using);
148-
}
149-
150-
public T findElementByXPath(String using) {
151-
return (T) super.findElementByXPath(using);
152-
}
153-
154-
public List findElementsByXPath(String using) {
155-
return super.findElementsByXPath(using);
156-
}
157-
15863
@Override
15964
public String toString() {
16065
Capabilities capabilities = getCapabilities();

src/main/java/io/appium/java_client/DefaultGenericMobileElement.java

Lines changed: 1 addition & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,6 @@
2121
import org.openqa.selenium.By;
2222
import org.openqa.selenium.WebDriverException;
2323
import org.openqa.selenium.WebElement;
24-
import org.openqa.selenium.internal.FindsByClassName;
25-
import org.openqa.selenium.internal.FindsByCssSelector;
26-
import org.openqa.selenium.internal.FindsById;
27-
import org.openqa.selenium.internal.FindsByLinkText;
28-
import org.openqa.selenium.internal.FindsByName;
29-
import org.openqa.selenium.internal.FindsByTagName;
30-
import org.openqa.selenium.internal.FindsByXPath;
3124
import org.openqa.selenium.remote.RemoteWebElement;
3225
import org.openqa.selenium.remote.Response;
3326

@@ -36,10 +29,7 @@
3629

3730
@SuppressWarnings({"unchecked", "rawtypes"})
3831
abstract class DefaultGenericMobileElement<T extends WebElement> extends RemoteWebElement
39-
implements FindsByClassName,
40-
FindsByCssSelector, FindsById,
41-
FindsByLinkText, FindsByName, FindsByTagName, FindsByXPath, FindsByFluentSelector<T>, FindsByAccessibilityId<T>,
42-
ExecutesMethod {
32+
implements FindsByFluentSelector<T>, FindsByAccessibilityId<T>, ExecutesMethod {
4333

4434
@Override public Response execute(String driverCommand, Map<String, ?> parameters) {
4535
return super.execute(driverCommand, parameters);
@@ -65,100 +55,6 @@ abstract class DefaultGenericMobileElement<T extends WebElement> extends RemoteW
6555
return (T) super.findElement(by, using);
6656
}
6757

68-
@Override public List findElementsById(String id) {
69-
return super.findElementsById(id);
70-
}
71-
72-
@Override public T findElementById(String id) {
73-
return (T) super.findElementById(id);
74-
}
75-
76-
/**
77-
* Finds a single element by link text.
78-
*
79-
* @throws WebDriverException This method doesn't work against native app UI.
80-
*/
81-
public T findElementByLinkText(String using) throws WebDriverException {
82-
return (T) super.findElementByLinkText(using);
83-
}
84-
85-
/**
86-
* Finds many elements by link text.
87-
*
88-
* @throws WebDriverException This method doesn't work against native app UI.
89-
*/
90-
public List findElementsByLinkText(String using) throws WebDriverException {
91-
return super.findElementsByLinkText(using);
92-
}
93-
94-
/**
95-
* Finds a single element by partial link text.
96-
*
97-
* @throws WebDriverException This method doesn't work against native app UI.
98-
*/
99-
public T findElementByPartialLinkText(String using) throws WebDriverException {
100-
return (T) super.findElementByPartialLinkText(using);
101-
}
102-
103-
/**
104-
* Finds many elements by partial link text.
105-
*
106-
* @throws WebDriverException This method doesn't work against native app UI.
107-
*/
108-
public List findElementsByPartialLinkText(String using) throws WebDriverException {
109-
return super.findElementsByPartialLinkText(using);
110-
}
111-
112-
public T findElementByTagName(String using) {
113-
return (T) super.findElementByTagName(using);
114-
}
115-
116-
public List findElementsByTagName(String using) {
117-
return super.findElementsByTagName(using);
118-
}
119-
120-
public T findElementByName(String using) {
121-
return (T) super.findElementByName(using);
122-
}
123-
124-
public List findElementsByName(String using) {
125-
return super.findElementsByName(using);
126-
}
127-
128-
public T findElementByClassName(String using) {
129-
return (T) super.findElementByClassName(using);
130-
}
131-
132-
public List findElementsByClassName(String using) {
133-
return super.findElementsByClassName(using);
134-
}
135-
136-
/**
137-
* Finds a single element by CSS selector.
138-
*
139-
* @throws WebDriverException This method doesn't work against native app UI.
140-
*/
141-
public T findElementByCssSelector(String using) throws WebDriverException {
142-
return (T) super.findElementByCssSelector(using);
143-
}
144-
145-
/**
146-
* Finds many elements by CSS selector.
147-
*
148-
* @throws WebDriverException This method doesn't work against native app UI.
149-
*/
150-
public List findElementsByCssSelector(String using) throws WebDriverException {
151-
return super.findElementsByCssSelector(using);
152-
}
153-
154-
public T findElementByXPath(String using) {
155-
return (T) super.findElementByXPath(using);
156-
}
157-
158-
public List findElementsByXPath(String using) {
159-
return super.findElementsByXPath(using);
160-
}
161-
16258
/**
16359
* {@inheritDoc}
16460
*

src/main/java/io/appium/java_client/MobileDriver.java

Lines changed: 2 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -22,55 +22,14 @@
2222
import org.openqa.selenium.WebDriver;
2323
import org.openqa.selenium.WebElement;
2424
import org.openqa.selenium.html5.LocationContext;
25-
import org.openqa.selenium.internal.FindsByClassName;
26-
import org.openqa.selenium.internal.FindsByCssSelector;
27-
import org.openqa.selenium.internal.FindsById;
28-
import org.openqa.selenium.internal.FindsByLinkText;
29-
import org.openqa.selenium.internal.FindsByName;
30-
import org.openqa.selenium.internal.FindsByTagName;
31-
import org.openqa.selenium.internal.FindsByXPath;
3225

3326
import java.util.List;
3427

3528
public interface MobileDriver<T extends WebElement> extends WebDriver, PerformsTouchActions, ContextAware, Rotatable,
36-
FindsByAccessibilityId<T>, LocationContext, HidesKeyboard, HasDeviceTime,
37-
InteractsWithFiles, InteractsWithApps, HasAppStrings, FindsByClassName, FindsByCssSelector, FindsById,
38-
FindsByLinkText, FindsByName, FindsByTagName, FindsByXPath, FindsByFluentSelector<T>, ExecutesMethod,
39-
HasSessionDetails {
29+
FindsByAccessibilityId<T>, LocationContext, HidesKeyboard, HasDeviceTime, InteractsWithFiles, InteractsWithApps,
30+
HasAppStrings, FindsByFluentSelector<T>, ExecutesMethod, HasSessionDetails {
4031

4132
List<T> findElements(By by);
4233

4334
T findElement(By by);
44-
45-
T findElementByClassName(String className);
46-
47-
List<T> findElementsByClassName(String className);
48-
49-
T findElementByCssSelector(String cssSelector);
50-
51-
List<T> findElementsByCssSelector(String cssSelector);
52-
53-
T findElementById(String id);
54-
55-
List<T> findElementsById(String id);
56-
57-
T findElementByLinkText(String linkText);
58-
59-
List<T> findElementsByLinkText(String linkText);
60-
61-
T findElementByPartialLinkText(String partialLinkText);
62-
63-
List<T> findElementsByPartialLinkText(String partialLinkText);
64-
65-
T findElementByName(String name);
66-
67-
List<T> findElementsByName(String name);
68-
69-
T findElementByTagName(String tagName);
70-
71-
List<T> findElementsByTagName(String tagName);
72-
73-
T findElementByXPath(String xPath);
74-
75-
List<T> findElementsByXPath(String xPath);
7635
}

src/main/java/io/appium/java_client/MobileElement.java

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -50,38 +50,6 @@ public Point getCenter() {
5050
return super.findElements(by, using);
5151
}
5252

53-
@Override public List<MobileElement> findElementsById(String id) {
54-
return super.findElementsById(id);
55-
}
56-
57-
public List<MobileElement> findElementsByLinkText(String using) {
58-
return super.findElementsByLinkText(using);
59-
}
60-
61-
public List<MobileElement> findElementsByPartialLinkText(String using) {
62-
return super.findElementsByPartialLinkText(using);
63-
}
64-
65-
public List<MobileElement> findElementsByTagName(String using) {
66-
return super.findElementsByTagName(using);
67-
}
68-
69-
public List<MobileElement> findElementsByName(String using) {
70-
return super.findElementsByName(using);
71-
}
72-
73-
public List<MobileElement> findElementsByClassName(String using) {
74-
return super.findElementsByClassName(using);
75-
}
76-
77-
public List<MobileElement> findElementsByCssSelector(String using) {
78-
return super.findElementsByCssSelector(using);
79-
}
80-
81-
public List<MobileElement> findElementsByXPath(String using) {
82-
return super.findElementsByXPath(using);
83-
}
84-
8553
@Override public List<MobileElement> findElementsByAccessibilityId(String using) {
8654
return super.findElementsByAccessibilityId(using);
8755
}

src/main/java/io/appium/java_client/android/Activity.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import lombok.Data;
44
import lombok.experimental.Accessors;
5-
import okhttp3.Interceptor;
65

76
import static com.google.common.base.Preconditions.checkArgument;
87
import static org.apache.commons.lang3.StringUtils.isBlank;

0 commit comments

Comments
 (0)