Актуализация тестов после перехода на версию 1.28

ra4/management_rack
nsubbot 2026-01-23 14:01:34 +03:00
parent 18228df8c7
commit 891502d3ca
5 changed files with 59 additions and 11 deletions

View File

@ -44,9 +44,54 @@ class AuditEventsContainer(EventsContainerComponent):
# Действия:
# Проверки:
def check_content(self) -> None:
"""Проверяет содержимое контейнера для отображения событий системного журнала."""
"""Проверяет содержимое контейнера для отображения событий аудита."""
expected_headers = [ 'ВРЕМЯ', 'ОПИСАНИЕ', 'ИДЕНТИФИКАТОР']
expected_headers_security = [ 'ВРЕМЯ', 'ОПИСАНИЕ', 'ИДЕНТИФИКАТОР', 'ТИП']
self.should_be_toolbar()
self.should_be_toolbar_buttons()
if not self.is_tab_active("view_events_button"):
self.click_tab_button("view_events_button")
self.wait_for_timeout(1000)
self.should_be_events_table()
events_table = self.get_events_table_content()
if len(events_table) == 0:
assert False, "The contents of the events table are missing"
self.check_events_table_headers(events_table[0], expected_headers)
if len(events_table) == 1:
logger.info("Table body is missing")
self.should_be_pagination_buttons()
events_filter = self.click_filter_button()
events_filter.check_content()
filter_type_bar = events_filter.get_filtering_parameter("filter_type")
filter_type_title = filter_type_bar.get_selection_bar_title()
assert filter_type_title == "Тип", "Filtering parameter bar 'Тип' is missing"
filter_role_bar = events_filter.get_filtering_parameter("filter_role")
filter_role_title = filter_role_bar.get_selection_bar_title()
assert filter_role_title == "Роль", "Filtering parameter bar 'Роль' is missing"
filter_name_bar = events_filter.get_filtering_parameter("filter_name")
filter_name_title = filter_name_bar.get_selection_bar_title()
assert filter_name_title == "Имя", "Filtering parameter bar 'Имя' is missing"
filter_ip_bar = events_filter.get_filtering_parameter("filter_ip")
filter_ip_title = filter_ip_bar.get_selection_bar_title()
assert filter_ip_title == "ip", "Filtering parameter bar 'ip' is missing"
def check_content_security(self) -> None:
"""Проверяет содержимое контейнера для отображения событий безопасности."""
expected_headers = [ 'ВРЕМЯ', 'ОПИСАНИЕ', 'ИДЕНТИФИКАТОР', 'ТИП']
self.should_be_toolbar()
self.should_be_toolbar_buttons()

View File

@ -67,7 +67,7 @@ class TooltipButton(BaseElement):
"""
# Наведение на элемент для отображения подсказки
self.locator.hover()
self.locator.hover(force=True)
# Получение элемента подсказки
tooltip = self.page.locator(ButtonLocators.TOOLTIP)

View File

@ -27,3 +27,5 @@ class SettingsFormLocators:
DROPDOWN_LIST = "//div[contains(@class, 'menuable__content__active')]"
SELECTED_VALUES = "//div[@class='v-select__selections']"
CLEAR_SELECTION_BUTTON = "div.v-input__icon--clear"
PUSH_NOTIFICATIONS_BUTTON_SUBMIT = "//button[@data-testid='PUSH_NOTIFICATIONS__btn__submit']"

View File

@ -49,15 +49,13 @@ class PushNotificationsSettingsTab(BasePage):
users_setting_input = TextInput(page,
loc. get_by_role("combobox"),
"users_setting_input")
# users_setting_input = TextInput(page,
# page.locator(SettingsFormLocators.SETTTINGS_FORM_SCROLL_CONTAINER).\
# get_by_role("combobox"),
# "users_setting_input")
self.settings_form.add_content_item("users_setting_input", users_setting_input)
self.settings_form.add_content_item("users_list", InteractiveDropdownList(page))
self.settings_form.add_tooltip_button(page.locator(SettingsFormLocators.SETTTINGS_FORM_SCROLL_CONTAINER).\
get_by_role("button", name='Отправить'),
# self.settings_form.add_tooltip_button(page.locator(SettingsFormLocators.SETTTINGS_FORM_SCROLL_CONTAINER).\
# locator(SettingsFormLocators.PUSH_NOTIFICATION_BUTTON_SUBMIT),
# "submit_button")
self.settings_form.add_tooltip_button(page.locator(SettingsFormLocators.PUSH_NOTIFICATIONS_BUTTON_SUBMIT),
"submit_button")
self.alert = AlertComponent(page)
@ -145,6 +143,9 @@ class PushNotificationsSettingsTab(BasePage):
self.should_be_form_toolbar()
self.settings_form.check_button_visibility("submit_button")
self.settings_form.check_button_tooltip("submit_button", "Отправить Push уведомление")
actual_input_field_names = self.input_fields_locators.keys()
assert set(actual_input_field_names) == set(expected_input_field_names), \
f"Misscomparison input field names: Expected {expected_input_field_names}, Actual {actual_input_field_names}"
@ -161,8 +162,8 @@ class PushNotificationsSettingsTab(BasePage):
f"Push notifications settings input form item with name '{name}' is missing"
)
self.settings_form.check_button_visibility("submit_button")
self.settings_form.check_button_tooltip("submit_button", "Отправить Push уведомление")
# self.settings_form.check_button_visibility("submit_button")
# self.settings_form.check_button_tooltip("submit_button", "Отправить Push уведомление")
def should_be_toolbar(self) -> None:
"""Проверяет наличие тулбара страницы.

View File

@ -80,7 +80,7 @@ class TestAuditEventsContainerSecurity:
security_events_container = mp.click_events_panel_audit_tab()
browser.wait_for_timeout(2000)
security_events_container.check_content()
security_events_container.check_content_security()
# Выход из системы текущего пользователя
mp.do_logout()