import logging import allure from assertpy import assert_that from ui_automation_framework.core import BasePage, TestStatus from ui_automation_framework.utils import logger as cl from app.src.pages.track_page import TrackPage class JunoFilterPopup(BasePage): log = cl.Logger(logging.DEBUG) is_open = "is_open" popup_title_loc = "//*[@tag and text()='Saved Filters Overview']" popup_close_loc = "//*[@tag and text()='Saved Filters Overview']/following-sibling::*" def __init__(self, driver): super().__init__(driver) self.driver = driver self.ts = TestStatus(self.driver) self.tp = TrackPage(self.driver) @allure.step("Juno FIlters Popup - open") def open(self): dd_loc = "juno-views-dd" filters_button_loc = "//button[.='Saved Filters Overview']" self.click_element(dd_loc) self.click_element(filters_button_loc, "xpath") self.is_opened() @allure.step("Juno Filters Popup - open") def is_opened(self): assert_that(self.is_element_displayed(self.popup_title_loc, "xpath")).is_true() @allure.step("Juno Filters Popup - close") def close(self): self.click_element(self.popup_close_loc, "xpath")