status-desktop/test/e2e/gui/elements/button.py

26 lines
610 B
Python

import logging
import typing
import allure
import driver
from gui.elements.object import QObject
_logger = logging.getLogger(__name__)
class Button(QObject):
@allure.step('Click {0}')
def click(
self,
x: typing.Union[int, driver.UiTypes.ScreenPoint] = None,
y: typing.Union[int, driver.UiTypes.ScreenPoint] = None,
button: driver.MouseButton = None
):
if None not in (x, y, button):
getattr(self.object, 'clicked')()
else:
super(Button, self).click(x, y, button)
_logger.info(f'{self}: clicked')