Skip to content

Commit b929a6d

Browse files
committed
Update browser
1 parent 05223ae commit b929a6d

File tree

10 files changed

+32
-27
lines changed

10 files changed

+32
-27
lines changed

libs/chromedriver.exe

8.15 MB
Binary file not shown.

pom.xml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,16 @@
2929
</properties>
3030

3131
<dependencies>
32+
<dependency>
33+
<groupId>org.reflections</groupId>
34+
<artifactId>reflections</artifactId>
35+
<version>0.9.11</version>
36+
</dependency>
37+
<dependency>
38+
<groupId>com.google.dagger</groupId>
39+
<artifactId>dagger</artifactId>
40+
<version>2.24</version>
41+
</dependency>
3242
<dependency>
3343
<groupId>org.seleniumhq.selenium</groupId>
3444
<artifactId>selenium-java</artifactId>

src/main/java/org/sayem/browser/Adapter.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,6 @@
22

33
import org.openqa.selenium.WebDriver;
44

5-
import java.net.URL;
6-
import java.util.function.Supplier;
7-
85
/**
96
* Created by sayem on 08/02/17.
107
*/

src/main/java/org/sayem/browser/Browser.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
/**
1313
* Created by sayem on 08/02/17.
1414
*/
15+
1516
public interface Browser<T extends WebDriver> {
1617

1718
T driver();

src/main/java/org/sayem/browser/BrowserAdapter.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,20 +14,20 @@
1414
/**
1515
* Created by sayem on 08/02/17.
1616
*/
17-
public class BrowserAdapter<T extends WebDriver> implements Browser<T> {
17+
public class BrowserAdapter implements Browser<WebDriver> {
1818

19-
private T driver;
20-
private ElementAdapter<T> element;
19+
private WebDriver driver;
20+
private ElementAdapter element;
2121
private DateTimePickerAdapter dateTime;
2222

23-
public BrowserAdapter(T driver) {
23+
BrowserAdapter(WebDriver driver) {
2424
this.driver = driver;
25-
this.element = new ElementAdapter<>(this);
25+
this.element = new ElementAdapter(driver);
2626
this.dateTime = new DateTimePickerAdapter();
2727
}
2828

2929
@Override
30-
public T driver() {
30+
public WebDriver driver() {
3131
return driver;
3232
}
3333

src/main/java/org/sayem/browser/ChromeBrowser.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,10 @@
33
import io.github.bonigarcia.wdm.WebDriverManager;
44
import org.openqa.selenium.chrome.ChromeDriver;
55

6-
import java.net.URL;
7-
import java.util.function.Supplier;
8-
96
public class ChromeBrowser implements Adapter<ChromeDriver> {
107
@Override
11-
public Browser<ChromeDriver> browser() {
8+
public Browser browser() {
129
WebDriverManager.chromedriver().setup();
13-
return new BrowserAdapter<>(new ChromeDriver());
10+
return new BrowserAdapter(new ChromeDriver());
1411
}
1512
}

src/main/java/org/sayem/browser/FirefoxBrowser.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
public class FirefoxBrowser implements Adapter<FirefoxDriver> {
77

88
@Override
9-
public Browser<FirefoxDriver> browser() {
9+
public Browser browser() {
1010
WebDriverManager.firefoxdriver().setup();
11-
return new BrowserAdapter<>(new FirefoxDriver());
11+
return new BrowserAdapter(new FirefoxDriver());
1212
}
1313
}

src/main/java/org/sayem/config/TestBase.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,30 @@
11
package org.sayem.config;
22

3-
import org.openqa.selenium.WebDriver;
43
import org.sayem.browser.Browser;
54
import org.sayem.listener.BrowserListener;
65
import org.testng.annotations.AfterMethod;
76
import org.testng.annotations.Listeners;
87

98
import java.util.Arrays;
109

10+
import static java.lang.System.*;
1111
import static org.sayem.browser.BrowserType.values;
1212

1313
@Listeners({BrowserListener.class})
1414
public class TestBase {
1515

16-
private final String browserEnv = System.getProperty("browser");
17-
private Browser<? extends WebDriver> browser;
16+
private Browser<?> browser;
1817

1918
@AfterMethod
2019
public void tearDown() {
2120
browser.driver().close();
2221
}
2322

24-
@SuppressWarnings("unchecked")
2523
protected <T> T getDriver() {
2624
browser = Arrays.asList(values())
2725
.parallelStream()
28-
.filter(s -> s.name().equalsIgnoreCase(browserEnv))
26+
.filter(s -> s.name()
27+
.equalsIgnoreCase(getProperty("browser")))
2928
.findFirst().get().driver.get().browser();
3029
return (T) browser;
3130
}

src/main/java/org/sayem/element/ElementAdapter.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
/**
1111
* Created by sayem on 08/02/17.
1212
*/
13-
public class ElementAdapter<T extends WebDriver> implements Element {
13+
public class ElementAdapter implements Element {
1414

15-
private T driver;
15+
private WebDriver driver;
1616

17-
public ElementAdapter(BrowserAdapter<T> driver) {
18-
this.driver = driver.driver();
17+
public ElementAdapter(WebDriver driver) {
18+
this.driver = driver;
1919
}
2020

2121
@Override

src/test/java/org/sayem/pages/HomePage.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
package org.sayem.pages;
22

3+
import org.openqa.selenium.WebDriver;
34
import org.sayem.browser.Browser;
45

56
public class HomePage {
67

7-
private Browser browser;
8+
private Browser<WebDriver> browser;
89

9-
public HomePage(Browser browser) {
10+
public HomePage(Browser<WebDriver> browser) {
1011
this.browser = browser;
1112
}
1213

0 commit comments

Comments
 (0)