Advertisement
art_qkc

KioskScreen

Jan 23rd, 2025 (edited)
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 7.33 KB | None | 0 0
  1. package com.$$$.screens.ordermanager;
  2.  
  3. import com.$$$.test.manager.helpers.appium.MobileHelper;
  4. import com.$$$.test.manager.locators.IOSBy;
  5. import com.$$$.test.manager.selectors.XCUIElementType;
  6. import com.$$$.screens.BaseBlendidScreen;
  7. import com.$$$.screens.BaseScreen;
  8. import com.$$$.screens.ordermanager.spanish.PhoneNumberScreenSpanish;
  9. import io.qameta.allure.Step;
  10. import org.junit.Assert;
  11. import org.openqa.selenium.By;
  12. import org.openqa.selenium.WebElement;
  13.  
  14. public class KioskScreen extends BaseScreen {
  15.     private static final By BUTTON_ESPANOL = IOSBy.iOSClassChain("**/XCUIElementTypeOther[`name == \"Español\"`]");
  16.     private static final By BUTTON_ENGLISH = IOSBy.iOSClassChain("**/XCUIElementTypeOther[`name == \"English\"`]");
  17.     private static final By BUTTON_KIOSK_IS_OPEN = IOSBy.label(XCUIElementType.Other, "KIOSK IS OPEN");
  18.     private static final By BUTTON_CONTACT_US = IOSBy.iOSNsPredicateString("label == \"CONTACT US\"");
  19.     private static final By BUTTON_CONTACT_US_ESP = IOSBy.iOSNsPredicateString("label == \"CONTÁCTENOS\"");
  20.     //private static final By BUTTON_TAP_HERE_TO_ORDER = IOSBy.iOSNsPredicateString("label == \"TAP HERE TO O R D E R\"");
  21.     private static final By BUTTON_TAP_HERE_TO_ORDER = IOSBy.id("TAP HERE TO O R D E R");
  22.     //private static final By BUTTON_TAP_HERE_TO_PICK_UP = IOSBy.iOSNsPredicateString("label == \"TAP HERE TO P I C K U P\"");
  23.     private static final By BUTTON_TAP_HERE_TO_PICK_UP = IOSBy.id("TAP HERE TO P I C K   U P");
  24.     //private static final By BUTTON_TAP_HERE_TO_ORDER_ESP = IOSBy.iOSNsPredicateString("label == \"TOCA AQUÍ PARA O R D E N\"");
  25.     private static final By BUTTON_TAP_HERE_TO_ORDER_ESP = IOSBy.id("TOCA AQUÍ PARA O R D E N");
  26.     //private static final By BUTTON_TAP_HERE_TO_PICK_UP_ESP = IOSBy.iOSNsPredicateString("label == \"TOCA AQUÍ PARA R E C O G E R\"");
  27.     private static final By BUTTON_TAP_HERE_TO_PICK_UP_ESP = IOSBy.id("TOCA AQUÍ PARA R E C O G E R");
  28.     private static final By BUTTON_DOORDASH = IOSBy.label(XCUIElementType.Other, "DOORDASH/GRUBHUB");
  29.  
  30.     private static final By LABEL_KIOSK_HOURS = IOSBy.iOSClassChain("**/XCUIElementTypeOther[`name BEGINSWITH \"Kiosk Hours:\"`][4]");
  31.  
  32.     @Override
  33.     public BaseBlendidScreen waitForScreen() {
  34.         mobileHelper.waitCondition(this::exists, 75);
  35.         return this;
  36.     }
  37.  
  38.     @Override
  39.     public boolean exists() {
  40.         WebElement btnContactUs = mobileHelper.getElement(BUTTON_CONTACT_US);
  41.         return btnContactUs != null;
  42.     }
  43.  
  44.     @Override
  45.     public KioskScreen assertScreenOpened() {
  46.         assertScreen();
  47.         testManager.takeScreenshot("Blendid Order Manager Kiosk screen is opened");
  48.         return this;
  49.     }
  50.  
  51.     @Step("Click on Order Button")
  52.     public MenuScreen validateOrderButton() {
  53.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_ORDER);
  54.         Assert.assertNotNull("Order button was not found", btn);
  55.         return new MenuScreen();
  56.     }
  57.  
  58.     @Step("Click on Order Button")
  59.     public MenuScreen clickOrderButton() {
  60.         WebElement itemQAKiosk = mobileHelper.getElement(BUTTON_TAP_HERE_TO_ORDER);
  61.         mobileHelper.doubleClickToElement(itemQAKiosk);
  62.         return new MenuScreen();
  63.     }
  64.  
  65.     @Step("Click on Order Button Spanish")
  66.     public MenuScreen clickOrderButtonSpanish() {
  67.         WebElement itemQAKiosk = mobileHelper.getElement(BUTTON_TAP_HERE_TO_ORDER_ESP);
  68.         mobileHelper.doubleClickToElement(itemQAKiosk);
  69.         return new MenuScreen();
  70.     }
  71.  
  72.     @Step("Click on Contact Us Button")
  73.     public ContactUsScreen clickContactUsButton() {
  74.         WebElement btn = mobileHelper.getElement(BUTTON_CONTACT_US);
  75.         mobileHelper.doubleClickToElement(btn);
  76.         return new ContactUsScreen();
  77.     }
  78.  
  79.     @Step("Click on Contact Us Button")
  80.     public ContactUsEsScreen clickContactUsEspButton() {
  81.         WebElement btn = mobileHelper.getElement(BUTTON_CONTACT_US_ESP);
  82.         mobileHelper.doubleClickToElement(btn);
  83.         return new ContactUsEsScreen();
  84.     }
  85.  
  86.     @Step("Validate Contact Us Button Espanol")
  87.     public KioskScreen validateContactUsButtonEsp() {
  88.         WebElement btn = mobileHelper.getElement(BUTTON_CONTACT_US_ESP);
  89.         Assert.assertNotNull("Button Contact Us Espanol was not found", btn);
  90.         return this;
  91.     }
  92.  
  93.     @Step("Validate Kiosk Hours label")
  94.     public KioskScreen validateKioskHours() {
  95.         WebElement btn = mobileHelper.getElement(LABEL_KIOSK_HOURS);
  96.         Assert.assertNotNull("Kiosk Hours label was not found", btn);
  97.         return this;
  98.     }
  99.  
  100.     @Step("Validate 'Tap Here To Order' Button Espanol")
  101.     public KioskScreen validateTapHereToOrderEsp() {
  102.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_ORDER_ESP);
  103.         Assert.assertNotNull("Button Tap Here To Order Espanol was not found", btn);
  104.         return this;
  105.     }
  106.  
  107.     @Step("Validate 'Espanol' Button")
  108.     public KioskScreen validateButtonEspanol() {
  109.         WebElement btn = mobileHelper.getElement(BUTTON_ESPANOL);
  110.         Assert.assertNotNull("Espanol button was not found", btn);
  111.         return this;
  112.     }
  113.  
  114.     @Step("Validate 'Pickup' Button")
  115.     public KioskScreen validatePickupButton() {
  116.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_PICK_UP);
  117.         Assert.assertNotNull("Pick up Button was not found", btn);
  118.         return this;
  119.     }
  120.  
  121.     @Step("Click 'Pickup' Button")
  122.     public PhoneNumberScreen clickPickup() {
  123.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_PICK_UP);
  124.         mobileHelper.clickToElement(btn);
  125.         return new PhoneNumberScreen();
  126.     }
  127.  
  128.     @Step("Validate 'KIOSK IS OPEN' Button")
  129.     public KioskScreen clickKioskIsOpenButton() {
  130.         WebElement btn = mobileHelper.getElement(BUTTON_KIOSK_IS_OPEN);
  131.         mobileHelper.clickToElement(btn);
  132.         return this;
  133.     }
  134.  
  135.     @Step("Validate 'KIOSK IS OPEN' Button")
  136.     public KioskScreen validateKioskIsOpenButton() {
  137.         WebElement btn = mobileHelper.getElement(BUTTON_KIOSK_IS_OPEN);
  138.         Assert.assertNotNull("'KIOSK IS OPEN' Button Esp was not found", btn);
  139.         return this;
  140.     }
  141.  
  142.     @Step("Validate 'Pickup' Button Esp")
  143.     public KioskScreen validatePickupButtonEsp() {
  144.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_PICK_UP_ESP);
  145.         Assert.assertNotNull("Pick up Button Esp was not found", btn);
  146.         return this;
  147.     }
  148.  
  149.     @Step("Click 'Pickup' Button Esp")
  150.     public PhoneNumberScreenSpanish clickPickupEsp() {
  151.         WebElement btn = mobileHelper.getElement(BUTTON_TAP_HERE_TO_PICK_UP_ESP);
  152.         mobileHelper.clickToElement(btn);
  153.         return new PhoneNumberScreenSpanish();
  154.     }
  155.  
  156.     @Step("Validate 'English' Button")
  157.     public KioskScreen validateButtonEnglish() {
  158.         WebElement btn = mobileHelper.getElement(BUTTON_ENGLISH);
  159.         Assert.assertNotNull(btn);
  160.         return this;
  161.     }
  162.  
  163.     @Step("Click 'English' Button")
  164.     public KioskScreen clickEnglishButton() {
  165.         WebElement btn = mobileHelper.getElement(BUTTON_ENGLISH);
  166.         mobileHelper.clickToElement(btn);
  167.         return this;
  168.     }
  169.  
  170.     @Step("Click 'Espanol' Button")
  171.     public KioskScreen clickEspanolButton() {
  172.         WebElement btn = mobileHelper.getElement(BUTTON_ESPANOL);
  173.         mobileHelper.clickToElement(btn);
  174.         return this;
  175.     }
  176. }
  177.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement