Skip to content

Commit 389acef

Browse files
author
Denys Zaiats
committed
[1.4.2-updated-unique-json-names] - fix for collecting results
1 parent 0b42732 commit 389acef

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

src/main/java/util/validator/ResponsiveUIValidator.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package util.validator;
22

33
import http.helpers.Helper;
4+
import io.appium.java_client.AppiumDriver;
45
import org.apache.commons.io.FileUtils;
56
import org.apache.log4j.Logger;
67
import org.json.simple.JSONArray;
@@ -752,8 +753,8 @@ int mobileY(int value) {
752753
}
753754

754755
long getPageWidth() {
756+
JavascriptExecutor executor = (JavascriptExecutor) driver;
755757
if (!isMobile()) {
756-
JavascriptExecutor executor = (JavascriptExecutor) driver;
757758
if (isFirefox()) {
758759
currentZoom = (String) executor.executeScript("document.body.style.MozTransform");
759760
} else {
@@ -766,13 +767,17 @@ long getPageWidth() {
766767
return (long) executor.executeScript("return document.getElementsByTagName('body')[0].offsetWidth");
767768
}
768769
} else {
769-
return driver.manage().window().getSize().width;
770+
if (isNativeMobileContext() || isIOS()) {
771+
return driver.manage().window().getSize().width;
772+
} else {
773+
return (long) executor.executeScript("if (self.innerWidth) {return self.innerWidth;} if (document.documentElement && document.documentElement.clientWidth) {return document.documentElement.clientWidth;}if (document.body) {return document.body.clientWidth;}");
774+
}
770775
}
771776
}
772777

773778
long getPageHeight() {
779+
JavascriptExecutor executor = (JavascriptExecutor) driver;
774780
if (!isMobile()) {
775-
JavascriptExecutor executor = (JavascriptExecutor) driver;
776781
if (isFirefox()) {
777782
currentZoom = (String) executor.executeScript("document.body.style.MozTransform");
778783
} else {
@@ -785,10 +790,18 @@ long getPageHeight() {
785790
return (long) executor.executeScript("return document.getElementsByTagName('body')[0].offsetHeight");
786791
}
787792
} else {
788-
return driver.manage().window().getSize().height;
793+
if (isNativeMobileContext() || isIOS()) {
794+
return driver.manage().window().getSize().height;
795+
} else {
796+
return (long) executor.executeScript("if (self.innerHeight) {return self.innerHeight;} if (document.documentElement && document.documentElement.clientHeight) {return document.documentElement.clientHeight;}if (document.body) {return document.body.clientHeight;}");
797+
}
789798
}
790799
}
791800

801+
private boolean isNativeMobileContext() {
802+
return ((AppiumDriver) driver).getContext().contains("NATIVE");
803+
}
804+
792805
void validateInsideOfContainer(WebElement element, String readableContainerName) {
793806
float xContainer = element.getLocation().x;
794807
float yContainer = element.getLocation().y;

0 commit comments

Comments
 (0)