e-nms_qa_automation/elements/checkbox_element.py

41 lines
1.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

from elements.base_element import BaseElement
from tools.logger import get_logger
logger = get_logger("CHECKBOX")
class Checkbox(BaseElement):
"""Класс для работы с элементами типа 'чекбокс' на странице.
Наследует функциональность базового элемента и добавляет специфичные для чекбоксов методы.
"""
@property
def type_of(self) -> str:
"""Возвращает тип элемента - 'чекбокс'.
Returns:
Строка с типом элемента.
"""
return "checkbox"
# Действия:
def check(self) -> None:
"""Устанавливает чекбокс в отмеченное состояние."""
logger.info(f'Checking checkbox "{self.name}"')
self.locator.check()
def uncheck(self) -> None:
"""Снимает отметку с чекбокса."""
logger.info(f'Unchecking checkbox "{self.name}"')
self.locator.uncheck()
# Проверки:
def is_checked(self) -> bool:
"""Проверяет, отмечен ли чекбокс.
Returns:
True, если чекбокс отмечен, иначе False.
"""
logger.info(f'Checking if checkbox "{self.name}" is checked')
return self.locator.is_checked()