From 8a334cd36a82b74c88073ec3daf8163733964524 Mon Sep 17 00:00:00 2001
From: rosengeorgiev <rosen.georgiev@vereign.com>
Date: Tue, 11 Oct 2022 15:52:31 +0300
Subject: [PATCH] added phone class

---
 src/main/java/selenium/utils/Phone.java | 60 +++++++++++++++++++++++++
 1 file changed, 60 insertions(+)
 create mode 100644 src/main/java/selenium/utils/Phone.java

diff --git a/src/main/java/selenium/utils/Phone.java b/src/main/java/selenium/utils/Phone.java
new file mode 100644
index 0000000..1940b3c
--- /dev/null
+++ b/src/main/java/selenium/utils/Phone.java
@@ -0,0 +1,60 @@
+package selenium.utils;
+
+import io.appium.java_client.android.AndroidDriver;
+import io.appium.java_client.remote.AndroidMobileCapabilityType;
+import io.appium.java_client.remote.MobileCapabilityType;
+import io.appium.java_client.remote.MobilePlatform;
+import io.appium.java_client.service.local.AppiumDriverLocalService;
+import io.appium.java_client.service.local.AppiumServiceBuilder;
+import org.openqa.selenium.ScreenOrientation;
+import org.openqa.selenium.remote.DesiredCapabilities;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+
+public class Phone {
+
+    public static AndroidDriver driver;
+
+    public static void initAndroidDriver() throws MalformedURLException {
+        //Start the appium server - you need to have nodejs and install appium via it with - npm i appium
+        AppiumServiceBuilder serviceBuilder = new AppiumServiceBuilder()
+                .withAppiumJS(new File("C:\\Users\\Rosen\\node_modules\\appium\\build\\lib\\main.js"))
+//              .usingAnyFreePort()
+                .withIPAddress("127.0.0.1");
+        AppiumDriverLocalService service =
+                AppiumDriverLocalService.buildService(serviceBuilder);
+        service.start();
+
+        File classpathRoot = new File(System.getProperty("user.dir"));
+        File appDir = new File(classpathRoot, "testapps");
+        File app = new File(appDir, "app-app-alpha-debug-1.88.1.apk");
+
+
+        DesiredCapabilities capabilities = new DesiredCapabilities();
+        capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, MobilePlatform.ANDROID);
+        capabilities.setCapability(MobileCapabilityType.PLATFORM_VERSION, "7.1.1");
+        capabilities.setCapability(MobileCapabilityType.DEVICE_NAME, "test");
+        capabilities.setCapability(MobileCapabilityType.APP, app.getAbsolutePath());
+        capabilities.setCapability("appPackage", "ocm");
+        capabilities.setCapability("appActivity", "com.kaching.merchant.Activities.RegisterActivity");
+        capabilities.setCapability("locationServicesAuthorized", true);
+        capabilities.setCapability("locationServicesEnabled", true);
+        //Choosing emulator
+        capabilities.setCapability(AndroidMobileCapabilityType.AVD, "test");
+
+        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
+
+//        // Setting mock location
+//        Location loc = new Location(20.0, 12.5, 1000);  // latitude, longitude, altitude
+//        driver.setLocation(loc);
+    }
+
+    public static void tearDown() throws InterruptedException, IOException {
+        driver.terminateApp("ocm");
+        driver.quit();
+    }
+
+}
-- 
GitLab