status-react/test/appium/views/base_view.py

46 lines
1.4 KiB
Python
Raw Normal View History

from views.base_element import BaseElement, BaseButton, BaseEditBox, BaseText
class BackButton(BaseButton):
def __init__(self, driver):
super(BackButton, self).__init__(driver)
self.locator = self.Locator.xpath_selector("//*[@content-desc='toolbar-back-button']")
class BaseViewObject(object):
def __init__(self, driver):
self.driver = driver
self.back_button = BackButton(self.driver)
def confirm(self):
self.driver.keyevent(66)
def find_full_text(self, text):
element = BaseElement(self.driver)
element.locator = element.Locator.xpath_selector('//*[@text="' + text + '"]')
return element.wait_for_element(60)
def find_text_part(self, text):
element = BaseElement(self.driver)
element.locator = element.Locator.xpath_selector('//*[contains(@text, "' + text + '")]')
return element.wait_for_element(60)
def element_by_text(self, text, element_type='base'):
element_types = {
'base': BaseElement,
'button': BaseButton,
'edit_box': BaseEditBox,
'text': BaseText
}
element = element_types[element_type](self.driver)
element.locator = element.Locator.xpath_selector('//*[@text="' + text + '"]')
return element
def get_chats(self):
from views.chats import ChatsViewObject
return ChatsViewObject(self.driver)