import allure from gui.components.base_popup import BasePopup from gui.elements.button import Button from gui.objects_map import names class DeletePopup(BasePopup): def __init__(self): super().__init__() self._delete_button = Button(names.delete_StatusButton) @allure.step("Delete channel") def delete(self, attempts: int = 2): try: self._delete_button.click() except Exception as ex: if attempts: self.delete(attempts - 1) else: raise ex class DeleteCategoryPopup(DeletePopup): def __init__(self): super().__init__() self.confirm_button = Button(names.confirm_StatusButton) class DeletePermissionPopup(DeletePopup): def __init__(self): super().__init__() self.confirm_delete_button = Button(names.confirm_permission_delete_StatusButton) class DeleteMessagePopup(DeletePopup): def __init__(self): super().__init__() self._delete_button = Button(names.confirm_delete_message_StatusButton)