from allure import step from playwright.sync_api import expect from src.ui_elements.base_ui_element import BaseUIElement class SliderUIElement(BaseUIElement): @step("Move {0} to {direction} {times} times]") def slide(self, direction, times): self.log.info(f'Slide element to {direction} {times} times') self._element.focus() for i in range(times): self.page.keyboard.press(f"Arrow{direction}") @step("{0} has value = {value}") def has_value(self, value): self.log.info(f"Expecting that element has value = {value}") expect(self._element).to_have_text(value) def __str__(self): return f"Slider {self.name}"