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._element.focus() for i in range(times): self.page.keyboard.press(f"Arrow{direction}") @step("{0} has value = {value}") def has_value(self, value): expect(self._element).to_have_text(value) def __str__(self): return f"Slider {self.name}"