Skip to content

Commit c306fe6

Browse files
committed
revert making getUrl public, added workaround with reflection
1 parent f2ca51c commit c306fe6

File tree

4 files changed

+15
-4
lines changed

4 files changed

+15
-4
lines changed

bellatrix.playwright/src/main/java/solutions/bellatrix/playwright/pages/WebPage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public NavigationService navigate() {
3636
return SingletonFactory.getInstance(NavigationService.class);
3737
}
3838

39-
public String getUrl() {
39+
protected String getUrl() {
4040
return "";
4141
}
4242

bellatrix.playwright/src/main/java/solutions/bellatrix/playwright/services/NavigationService.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,11 @@
1414
package solutions.bellatrix.playwright.services;
1515

1616
import com.google.common.base.Strings;
17+
import lombok.SneakyThrows;
1718
import solutions.bellatrix.core.utilities.SingletonFactory;
1819
import solutions.bellatrix.playwright.pages.WebPage;
1920

21+
import java.lang.reflect.Method;
2022
import java.net.MalformedURLException;
2123
import java.net.URL;
2224
import java.net.URLDecoder;
@@ -29,8 +31,11 @@
2931

3032
@SuppressWarnings("ALL")
3133
public class NavigationService extends WebService {
34+
@SneakyThrows
3235
public void to(WebPage page) {
33-
wrappedBrowser().getCurrentPage().navigate(page.getUrl());
36+
Method method = page.getClass().getDeclaredMethod("getUrl");
37+
method.setAccessible(true);
38+
wrappedBrowser().getCurrentPage().navigate((String)method.invoke(page));
3439
}
3540

3641
public void to(String url) {

bellatrix.web/src/main/java/solutions/bellatrix/web/pages/WebPage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public NavigationService navigate() {
4444
return new NavigationService();
4545
}
4646

47-
public String getUrl() {
47+
protected String getUrl() {
4848
return "";
4949
}
5050

bellatrix.web/src/main/java/solutions/bellatrix/web/services/NavigationService.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,14 @@
1414
package solutions.bellatrix.web.services;
1515

1616
import com.google.common.base.Strings;
17+
import lombok.SneakyThrows;
1718
import org.openqa.selenium.TimeoutException;
1819
import org.openqa.selenium.support.ui.WebDriverWait;
1920
import solutions.bellatrix.core.configuration.ConfigurationService;
2021
import solutions.bellatrix.web.configuration.WebSettings;
2122
import solutions.bellatrix.web.pages.WebPage;
2223

24+
import java.lang.reflect.Method;
2325
import java.net.MalformedURLException;
2426
import java.net.URL;
2527
import java.net.URLDecoder;
@@ -38,8 +40,12 @@ public void to(String url) {
3840
getWrappedDriver().navigate().to(url);
3941
}
4042

43+
@SneakyThrows
4144
public void to(WebPage page) {
42-
getWrappedDriver().navigate().to(page.getUrl());
45+
Method method = page.getClass().getDeclaredMethod("getUrl");
46+
method.setAccessible(true);
47+
48+
getWrappedDriver().navigate().to((String)method.invoke(page));
4349
}
4450

4551
public void toLocalPage(String filePath) {

0 commit comments

Comments
 (0)