refactor: единообразное именование переменных для модальных окон
parent
ff707434f1
commit
6cd20c0947
|
|
@ -24,12 +24,12 @@ class ViewTemplateModalWindow(ModalWindowComponent):
|
||||||
4. Проверки содержимого модального окна
|
4. Проверки содержимого модального окна
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self, page: Page, template_name: str):
|
def __init__(self, page: Page, title: str):
|
||||||
"""Инициализирует элементы формы модального окна шаблона."""
|
"""Инициализирует элементы формы модального окна шаблона."""
|
||||||
super().__init__(page)
|
super().__init__(page)
|
||||||
|
|
||||||
# Настройка заголовка и кнопки закрытия
|
# Настройка заголовка и кнопок закрытия
|
||||||
self.window_title = template_name
|
self.window_title = title
|
||||||
locator_button_toolbar_close = self.page.get_by_role("navigation").filter(
|
locator_button_toolbar_close = self.page.get_by_role("navigation").filter(
|
||||||
has_text=re.compile(self.window_title)
|
has_text=re.compile(self.window_title)
|
||||||
).get_by_role("button")
|
).get_by_role("button")
|
||||||
|
|
@ -122,7 +122,7 @@ class ViewTemplateModalWindow(ModalWindowComponent):
|
||||||
return modal_data
|
return modal_data
|
||||||
|
|
||||||
def compare_modal_with_api_data(self, modal_data: dict, api_data: dict,
|
def compare_modal_with_api_data(self, modal_data: dict, api_data: dict,
|
||||||
template_name: str) -> None:
|
title: str) -> None:
|
||||||
"""Сравнивает данные из модального окна с данными из API."""
|
"""Сравнивает данные из модального окна с данными из API."""
|
||||||
errors = []
|
errors = []
|
||||||
|
|
||||||
|
|
@ -149,10 +149,10 @@ class ViewTemplateModalWindow(ModalWindowComponent):
|
||||||
|
|
||||||
# Дополнительная проверка имени шаблона
|
# Дополнительная проверка имени шаблона
|
||||||
modal_template = modal_data.get('Шаблон', '')
|
modal_template = modal_data.get('Шаблон', '')
|
||||||
if modal_template != template_name:
|
if modal_template != title:
|
||||||
error_msg = (
|
error_msg = (
|
||||||
f"Расхождение в имени шаблона: "
|
f"Расхождение в имени шаблона: "
|
||||||
f"модальное окно='{modal_template}', ожидается='{template_name}'"
|
f"модальное окно='{modal_template}', ожидается='{title}'"
|
||||||
)
|
)
|
||||||
logger.error(error_msg)
|
logger.error(error_msg)
|
||||||
errors.append(error_msg)
|
errors.append(error_msg)
|
||||||
|
|
@ -161,7 +161,7 @@ class ViewTemplateModalWindow(ModalWindowComponent):
|
||||||
if errors:
|
if errors:
|
||||||
error_details = "\n".join(errors)
|
error_details = "\n".join(errors)
|
||||||
assert False, (
|
assert False, (
|
||||||
f"Обнаружены расхождения для шаблона '{template_name}':\n{error_details}"
|
f"Обнаружены расхождения для шаблона '{title}':\n{error_details}"
|
||||||
)
|
)
|
||||||
|
|
||||||
logger.info("Данные модального окна соответствуют API для шаблона '%s'", template_name)
|
logger.info("Данные модального окна соответствуют API для шаблона '%s'", title)
|
||||||
|
|
|
||||||
|
|
@ -4,18 +4,16 @@
|
||||||
Позволяет проверять состояние и взаимодействовать с элементами вкладки.
|
Позволяет проверять состояние и взаимодействовать с элементами вкладки.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import json
|
|
||||||
from pathlib import Path
|
|
||||||
from playwright.sync_api import Page
|
from playwright.sync_api import Page
|
||||||
from tools.logger import get_logger
|
from tools.logger import get_logger
|
||||||
from locators.table_locators import TableLocators
|
from locators.table_locators import TableLocators
|
||||||
from locators.modal_window_locators import ModalWindowLocators
|
from locators.modal_window_locators import ModalWindowLocators
|
||||||
from locators.json_container_locators import JsonContainerLocators
|
from locators.json_container_locators import JsonContainerLocators
|
||||||
from components_derived.modal_view_template import ViewTemplateModalWindow
|
from components_derived.modal_view_template import ViewTemplateModalWindow
|
||||||
|
from components.modal_window_component import ModalWindowComponent
|
||||||
from components.toolbar_component import ToolbarComponent
|
from components.toolbar_component import ToolbarComponent
|
||||||
from components.table_component import TableComponent
|
from components.table_component import TableComponent
|
||||||
from components.json_container_component import JsonContainerComponent
|
from components.json_container_component import JsonContainerComponent
|
||||||
from components.alert_component import AlertComponent
|
|
||||||
from pages.base_page import BasePage
|
from pages.base_page import BasePage
|
||||||
|
|
||||||
logger = get_logger("TEMPLATES_TAB")
|
logger = get_logger("TEMPLATES_TAB")
|
||||||
|
|
@ -42,7 +40,6 @@ class TemplatesTab(BasePage):
|
||||||
self.modal_windows = {}
|
self.modal_windows = {}
|
||||||
|
|
||||||
self.json_container = JsonContainerComponent(page)
|
self.json_container = JsonContainerComponent(page)
|
||||||
self.alert = AlertComponent(page)
|
|
||||||
|
|
||||||
def add_modal_window(self, title: str) -> None:
|
def add_modal_window(self, title: str) -> None:
|
||||||
"""Добавляет модальное окно в коллекцию.
|
"""Добавляет модальное окно в коллекцию.
|
||||||
|
|
@ -86,7 +83,7 @@ class TemplatesTab(BasePage):
|
||||||
assert False, f"Modal window with title '{title}' not found"
|
assert False, f"Modal window with title '{title}' not found"
|
||||||
self.modal_windows[title] = None
|
self.modal_windows[title] = None
|
||||||
|
|
||||||
def open_template_modal(self, row_index: int = 0) -> str:
|
def open_template_modal_by_index(self, row_index: int = 0) -> str:
|
||||||
"""Открывает модальное окно шаблона по клику на строку таблицы.
|
"""Открывает модальное окно шаблона по клику на строку таблицы.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
|
|
@ -104,12 +101,12 @@ class TemplatesTab(BasePage):
|
||||||
# Получаем имя шаблона из выбранной строки
|
# Получаем имя шаблона из выбранной строки
|
||||||
table_content = self.templates_table.read(TableLocators.TABLE_WORK_AREA)
|
table_content = self.templates_table.read(TableLocators.TABLE_WORK_AREA)
|
||||||
# +1 потому что первая строка - заголовки
|
# +1 потому что первая строка - заголовки
|
||||||
template_name = table_content[row_index + 1][0]
|
title = table_content[row_index + 1][0]
|
||||||
|
|
||||||
# Добавляем модальное окно в коллекцию после открытия
|
# Добавляем модальное окно в коллекцию после открытия
|
||||||
self.add_modal_window(template_name)
|
self.add_modal_window(title)
|
||||||
|
|
||||||
return template_name
|
return title
|
||||||
|
|
||||||
def close_modal_window_by_toolbar_button(self, title: str) -> None:
|
def close_modal_window_by_toolbar_button(self, title: str) -> None:
|
||||||
"""Закрывает модальное окно через кнопку в тулбаре.
|
"""Закрывает модальное окно через кнопку в тулбаре.
|
||||||
|
|
@ -119,7 +116,7 @@ class TemplatesTab(BasePage):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
modal_window = self.get_modal_window(title)
|
modal_window = self.get_modal_window(title)
|
||||||
modal_window.click_toolbar_close_button()
|
modal_window.close_window_by_toolbar_button()
|
||||||
self.delete_modal_window(title)
|
self.delete_modal_window(title)
|
||||||
|
|
||||||
def get_rows_count(self) -> int:
|
def get_rows_count(self) -> int:
|
||||||
|
|
@ -146,21 +143,21 @@ class TemplatesTab(BasePage):
|
||||||
|
|
||||||
def scroll_modal_up(self) -> None:
|
def scroll_modal_up(self) -> None:
|
||||||
"""Прокручивает содержимое модального окна вверх."""
|
"""Прокручивает содержимое модального окна вверх."""
|
||||||
self.templates_table.scroll_up(
|
|
||||||
ModalWindowLocators.MODAL_WINDOW_SCROLL_CONTAINER
|
temp_modal = ModalWindowComponent(self.page)
|
||||||
)
|
temp_modal.scroll_window_up()
|
||||||
|
|
||||||
def scroll_modal_down(self) -> None:
|
def scroll_modal_down(self) -> None:
|
||||||
"""Прокручивает содержимое модального окна вниз."""
|
"""Прокручивает содержимое модального окна вниз."""
|
||||||
self.templates_table.scroll_down(
|
|
||||||
ModalWindowLocators.MODAL_WINDOW_SCROLL_CONTAINER
|
|
||||||
)
|
|
||||||
|
|
||||||
def extract_specific_template(self, template_name: str, response_data: dict) -> dict:
|
temp_modal = ModalWindowComponent(self.page)
|
||||||
"""Извлекает структуру конкретного шаблона по template_name из данных API.
|
temp_modal.scroll_window_down()
|
||||||
|
|
||||||
|
def extract_specific_template(self, title: str, response_data: dict) -> dict:
|
||||||
|
"""Извлекает структуру конкретного шаблона по title из данных API.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
template_name: Имя шаблона для извлечения.
|
title: Имя шаблона для извлечения.
|
||||||
response_data: Данные ответа от API.
|
response_data: Данные ответа от API.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
|
@ -175,8 +172,8 @@ class TemplatesTab(BasePage):
|
||||||
|
|
||||||
# Ищем шаблон с указанным именем
|
# Ищем шаблон с указанным именем
|
||||||
for template in response_data:
|
for template in response_data:
|
||||||
if template.get('id') == template_name:
|
if template.get('id') == title:
|
||||||
logger.info("Found template: %s", template_name)
|
logger.info("Found template: %s", title)
|
||||||
return template
|
return template
|
||||||
|
|
||||||
# Если шаблон не найден
|
# Если шаблон не найден
|
||||||
|
|
@ -184,47 +181,22 @@ class TemplatesTab(BasePage):
|
||||||
|
|
||||||
# Генерируем понятное сообщение об ошибке
|
# Генерируем понятное сообщение об ошибке
|
||||||
error_msg = (
|
error_msg = (
|
||||||
f"Template '{template_name}' not found. "
|
f"Template '{title}' not found. "
|
||||||
f"Available templates: {available_templates}"
|
f"Available templates: {available_templates}"
|
||||||
)
|
)
|
||||||
logger.error(error_msg)
|
logger.error(error_msg)
|
||||||
assert False, error_msg
|
assert False, error_msg
|
||||||
|
|
||||||
def save_template_data_to_file(self, template_data: dict, filename: str = None) -> str:
|
def check_templates_modal_content(self, title: str) -> None:
|
||||||
"""Инструмент отладки. Сохраняет данные шаблона в JSON файл в текущей директории.
|
|
||||||
|
|
||||||
Args:
|
|
||||||
template_data: Данные шаблона для сохранения.
|
|
||||||
filename: Имя файла (если None, генерируется автоматически).
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
str: Путь к сохраненному файлу.
|
|
||||||
"""
|
|
||||||
# Генерируем имя файла если не указано
|
|
||||||
if filename is None:
|
|
||||||
template_name = template_data.get('id', 'unknown_template')
|
|
||||||
filename = f"{template_name}_data.json"
|
|
||||||
|
|
||||||
# Сохраняем файл в текущей директории
|
|
||||||
file_path = Path(filename)
|
|
||||||
|
|
||||||
# Сохраняем данные в файл с форматированием
|
|
||||||
with open(file_path, 'w', encoding='utf-8') as file:
|
|
||||||
json.dump(template_data, file, ensure_ascii=False, indent=2)
|
|
||||||
|
|
||||||
logger.info("Template data saved to: %s", file_path)
|
|
||||||
return str(file_path)
|
|
||||||
|
|
||||||
def check_templates_modal_content(self, template_name: str) -> None:
|
|
||||||
"""Проверяет наличие и корректность элементов модального окна шаблона.
|
"""Проверяет наличие и корректность элементов модального окна шаблона.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
template_name: Имя шаблона для проверки заголовка окна.
|
title: Имя шаблона для проверки заголовка окна.
|
||||||
|
|
||||||
Raises:
|
Raises:
|
||||||
AssertionError: Если элементы окна некорректны.
|
AssertionError: Если элементы окна некорректны.
|
||||||
"""
|
"""
|
||||||
modal_window = self.get_modal_window(template_name)
|
modal_window = self.get_modal_window(title)
|
||||||
modal_window.check_content()
|
modal_window.check_content()
|
||||||
|
|
||||||
def check_templates_table_content(self) -> None:
|
def check_templates_table_content(self) -> None:
|
||||||
|
|
@ -245,7 +217,7 @@ class TemplatesTab(BasePage):
|
||||||
|
|
||||||
self.templates_table.check_content(TableLocators.TABLE_WORK_AREA, expected_headers)
|
self.templates_table.check_content(TableLocators.TABLE_WORK_AREA, expected_headers)
|
||||||
|
|
||||||
def check_templates_table_verticall_scrolling(self) -> bool:
|
def check_templates_table_vertical_scrolling(self) -> bool:
|
||||||
"""Проверяет возможность вертикальной прокрутки таблицы.
|
"""Проверяет возможность вертикальной прокрутки таблицы.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
|
@ -339,16 +311,14 @@ class TemplatesTab(BasePage):
|
||||||
Returns:
|
Returns:
|
||||||
bool: True если скроллинг возможен, иначе False.
|
bool: True если скроллинг возможен, иначе False.
|
||||||
"""
|
"""
|
||||||
return self.templates_table.is_scrollable_vertically(
|
temp_modal = ModalWindowComponent(self.page)
|
||||||
ModalWindowLocators.MODAL_WINDOW_SCROLL_CONTAINER
|
return temp_modal.check_window_vertical_scrolling()
|
||||||
)
|
|
||||||
|
|
||||||
def verify_json_container_content(self, template_name: str, save_to_file: bool = False) -> None:
|
def verify_json_container_content(self, title: str) -> None:
|
||||||
"""Проверяет соответствие данных контейнера данным из API.
|
"""Проверяет соответствие данных контейнера данным из API.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
template_name: Имя шаблона для проверки.
|
title: Имя шаблона для проверки.
|
||||||
save_to_file: Флаг для сохранения данных в файл.
|
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# Читаем данные из контейнера
|
# Читаем данные из контейнера
|
||||||
|
|
@ -359,12 +329,7 @@ class TemplatesTab(BasePage):
|
||||||
response_body = self.get_response_body(response)
|
response_body = self.get_response_body(response)
|
||||||
|
|
||||||
# Извлекаем конкретный шаблон по имени из ответа API
|
# Извлекаем конкретный шаблон по имени из ответа API
|
||||||
template_data = self.extract_specific_template(template_name, response_body)
|
template_data = self.extract_specific_template(title, response_body)
|
||||||
|
|
||||||
# Сохраняем данные в файл если требуется
|
|
||||||
if save_to_file:
|
|
||||||
file_path = self.save_template_data_to_file(template_data)
|
|
||||||
logger.info("Template data saved to: %s", file_path)
|
|
||||||
|
|
||||||
# Сравниваем actual_data с данными конкретного шаблона
|
# Сравниваем actual_data с данными конкретного шаблона
|
||||||
self.json_container.check_json_equals(
|
self.json_container.check_json_equals(
|
||||||
|
|
|
||||||
|
|
@ -93,13 +93,13 @@ class ZTPTemplatesTab(BasePage):
|
||||||
|
|
||||||
# Создаем временный экземпляр модального окна для получения заголовка
|
# Создаем временный экземпляр модального окна для получения заголовка
|
||||||
temp_modal = ViewTemplateModalWindow(self.page, "")
|
temp_modal = ViewTemplateModalWindow(self.page, "")
|
||||||
template_name = temp_modal.toolbar.get_toolbar_title_text(
|
title = temp_modal.toolbar.get_toolbar_title_text(
|
||||||
ModalWindowLocators.MODAL_WINDOW_TITLE
|
ModalWindowLocators.MODAL_WINDOW_TITLE
|
||||||
)
|
)
|
||||||
|
|
||||||
# Добавляем модальное окно в коллекцию после открытия
|
# Добавляем модальное окно в коллекцию после открытия
|
||||||
self.add_modal_window(template_name)
|
self.add_modal_window(title)
|
||||||
return template_name
|
return title
|
||||||
|
|
||||||
def close_modal_window_by_toolbar_button(self, title: str) -> None:
|
def close_modal_window_by_toolbar_button(self, title: str) -> None:
|
||||||
"""Закрывает модальное окно через кнопку в тулбаре.
|
"""Закрывает модальное окно через кнопку в тулбаре.
|
||||||
|
|
@ -150,16 +150,16 @@ class ZTPTemplatesTab(BasePage):
|
||||||
temp_modal = ModalWindowComponent(self.page)
|
temp_modal = ModalWindowComponent(self.page)
|
||||||
temp_modal.scroll_window_down()
|
temp_modal.scroll_window_down()
|
||||||
|
|
||||||
def check_templates_modal_content(self, template_name: str) -> None:
|
def check_templates_modal_content(self, title: str) -> None:
|
||||||
"""Проверяет наличие и корректность элементов модального окна шаблона.
|
"""Проверяет наличие и корректность элементов модального окна шаблона.
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
template_name: Имя шаблона для проверки заголовка окна.
|
title: Имя шаблона для проверки заголовка окна.
|
||||||
|
|
||||||
Raises:
|
Raises:
|
||||||
AssertionError: Если элементы окна некорректны.
|
AssertionError: Если элементы окна некорректны.
|
||||||
"""
|
"""
|
||||||
modal_window = self.get_modal_window(template_name)
|
modal_window = self.get_modal_window(title)
|
||||||
modal_window.check_content()
|
modal_window.check_content()
|
||||||
|
|
||||||
def check_templates_table_content(self) -> None:
|
def check_templates_table_content(self) -> None:
|
||||||
|
|
@ -268,7 +268,7 @@ class ZTPTemplatesTab(BasePage):
|
||||||
temp_modal = ModalWindowComponent(self.page)
|
temp_modal = ModalWindowComponent(self.page)
|
||||||
return temp_modal.check_window_vertical_scrolling()
|
return temp_modal.check_window_vertical_scrolling()
|
||||||
|
|
||||||
def verify_template_data_with_api(self, template_name: str) -> None:
|
def verify_template_data_with_api(self, title: str) -> None:
|
||||||
"""Проверяет соответствие данных модального окна данным из API.
|
"""Проверяет соответствие данных модального окна данным из API.
|
||||||
|
|
||||||
Процесс проверки:
|
Процесс проверки:
|
||||||
|
|
@ -279,7 +279,7 @@ class ZTPTemplatesTab(BasePage):
|
||||||
5. Выбрасывает assertion при обнаружении расхождений
|
5. Выбрасывает assertion при обнаружении расхождений
|
||||||
|
|
||||||
Args:
|
Args:
|
||||||
template_name: Имя шаблона для проверки (должно совпадать с id в API).
|
title: Имя шаблона для проверки (должно совпадать с id в API).
|
||||||
|
|
||||||
Raises:
|
Raises:
|
||||||
AssertionError: Если:
|
AssertionError: Если:
|
||||||
|
|
@ -289,14 +289,14 @@ class ZTPTemplatesTab(BasePage):
|
||||||
- Имя шаблона в модальном окне не соответствует ожидаемому
|
- Имя шаблона в модальном окне не соответствует ожидаемому
|
||||||
"""
|
"""
|
||||||
# Получаем модальное окно
|
# Получаем модальное окно
|
||||||
modal_window = self.get_modal_window(template_name)
|
modal_window = self.get_modal_window(title)
|
||||||
|
|
||||||
# Читаем данные модального окна (метод теперь в ViewTemplateModalWindow)
|
# Читаем данные модального окна
|
||||||
actual_data = modal_window.get_modal_window_data()
|
actual_data = modal_window.get_modal_window_data()
|
||||||
|
|
||||||
# Читаем данные из API
|
# Читаем данные из API
|
||||||
encoded_template_name = template_name.replace(" ", "%20")
|
encoded_title = title.replace(" ", "%20")
|
||||||
url = f"e-nms/DHCP/showOptPattern?template={encoded_template_name}"
|
url = f"e-nms/DHCP/showOptPattern?template={encoded_title}"
|
||||||
response = self.send_get_api_request(url)
|
response = self.send_get_api_request(url)
|
||||||
|
|
||||||
# Проверяем статус ответа
|
# Проверяем статус ответа
|
||||||
|
|
@ -308,5 +308,5 @@ class ZTPTemplatesTab(BasePage):
|
||||||
response_data = response.json()
|
response_data = response.json()
|
||||||
template_data = response_data['data']
|
template_data = response_data['data']
|
||||||
|
|
||||||
# Сравниваем actual_data с данными конкретного шаблона (метод теперь в ViewTemplateModalWindow)
|
# Сравниваем actual_data с данными конкретного шаблона
|
||||||
modal_window.compare_modal_with_api_data(actual_data, template_data, template_name)
|
modal_window.compare_modal_with_api_data(actual_data, template_data, title)
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ class TestTemplatesTab:
|
||||||
main_page.click_subpanel_item("Шаблоны")
|
main_page.click_subpanel_item("Шаблоны")
|
||||||
|
|
||||||
def test_templates_tab_content(self, browser: Page) -> None:
|
def test_templates_tab_content(self, browser: Page) -> None:
|
||||||
"""Тест содержимого вкладки 'Шаблоны'.
|
"""Тест содержимого вкладка 'Шаблоны'.
|
||||||
|
|
||||||
Проверяет:
|
Проверяет:
|
||||||
1. Наличие и корректность тулбара
|
1. Наличие и корректность тулбара
|
||||||
|
|
@ -106,7 +106,7 @@ class TestTemplatesTab:
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
||||||
# Проверка возможности вертикального скроллинга
|
# Проверка возможности вертикального скроллинга
|
||||||
is_scrollable = templates_tab.check_templates_table_verticall_scrolling()
|
is_scrollable = templates_tab.check_templates_table_vertical_scrolling()
|
||||||
|
|
||||||
if is_scrollable:
|
if is_scrollable:
|
||||||
print("Таблица поддерживает вертикальный скроллинг")
|
print("Таблица поддерживает вертикальный скроллинг")
|
||||||
|
|
@ -152,7 +152,7 @@ class TestTemplatesTab:
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы
|
# Открываем модальное окно, кликая на первую строку таблицы
|
||||||
template_name = templates_tab.open_template_modal(0)
|
title = templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
@ -161,10 +161,10 @@ class TestTemplatesTab:
|
||||||
templates_tab.should_be_modal_window()
|
templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Проверка содержимого модального окна
|
# Проверка содержимого модального окна
|
||||||
templates_tab.check_templates_modal_content(template_name)
|
templates_tab.check_templates_modal_content(title)
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку закрытия
|
# Закрытие модального окна через кнопку закрытия
|
||||||
templates_tab.close_modal_window_by_toolbar_button(template_name)
|
templates_tab.close_modal_window_by_toolbar_button(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
templates_tab.should_not_be_modal_window()
|
templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -188,7 +188,7 @@ class TestTemplatesTab:
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы
|
# Открываем модальное окно, кликая на первую строку таблицы
|
||||||
template_name = templates_tab.open_template_modal(0)
|
title = templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
@ -213,7 +213,7 @@ class TestTemplatesTab:
|
||||||
print("Модальное окно не поддерживает вертикальный скроллинг")
|
print("Модальное окно не поддерживает вертикальный скроллинг")
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку закрытия
|
# Закрытие модального окна через кнопку закрытия
|
||||||
templates_tab.close_modal_window_by_toolbar_button(template_name)
|
templates_tab.close_modal_window_by_toolbar_button(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
templates_tab.should_not_be_modal_window()
|
templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -237,7 +237,7 @@ class TestTemplatesTab:
|
||||||
browser.wait_for_timeout(5000)
|
browser.wait_for_timeout(5000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы
|
# Открываем модальное окно, кликая на первую строку таблицы
|
||||||
template_name = templates_tab.open_template_modal(0)
|
title = templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
@ -246,13 +246,10 @@ class TestTemplatesTab:
|
||||||
templates_tab.should_be_modal_window()
|
templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Проверка соответствия данных модального окна данным из API
|
# Проверка соответствия данных модального окна данным из API
|
||||||
templates_tab.verify_json_container_content(
|
templates_tab.verify_json_container_content(title)
|
||||||
template_name,
|
|
||||||
save_to_file=False
|
|
||||||
)
|
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку закрытия
|
# Закрытие модального окна через кнопку закрытия
|
||||||
templates_tab.close_modal_window_by_toolbar_button(template_name)
|
templates_tab.close_modal_window_by_toolbar_button(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
templates_tab.should_not_be_modal_window()
|
templates_tab.should_not_be_modal_window()
|
||||||
|
|
|
||||||
|
|
@ -167,14 +167,14 @@ class TestZTPTemplatesTab:
|
||||||
|
|
||||||
# Тест 1: Закрытие через кнопку 'Закрыть' в содержимом окна
|
# Тест 1: Закрытие через кнопку 'Закрыть' в содержимом окна
|
||||||
print("Тест 1: Закрытие через кнопку 'Закрыть'")
|
print("Тест 1: Закрытие через кнопку 'Закрыть'")
|
||||||
template_name = ztp_templates_tab.open_template_modal_by_index(0)
|
title = ztp_templates_tab.open_template_modal_by_index(0)
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
||||||
# Проверка открытия модального окна
|
# Проверка открытия модального окна
|
||||||
ztp_templates_tab.should_be_modal_window()
|
ztp_templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Закрытие через кнопку 'Закрыть'
|
# Закрытие через кнопку 'Закрыть'
|
||||||
ztp_templates_tab.close_modal_window(template_name)
|
ztp_templates_tab.close_modal_window(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
ztp_templates_tab.should_not_be_modal_window()
|
ztp_templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -182,14 +182,14 @@ class TestZTPTemplatesTab:
|
||||||
|
|
||||||
# Тест 2: Закрытие через кнопку в тулбаре
|
# Тест 2: Закрытие через кнопку в тулбаре
|
||||||
print("Тест 2: Закрытие через кнопку в тулбаре")
|
print("Тест 2: Закрытие через кнопку в тулбаре")
|
||||||
template_name = ztp_templates_tab.open_template_modal_by_index(0)
|
title = ztp_templates_tab.open_template_modal_by_index(0)
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
||||||
# Проверка открытия модального окна
|
# Проверка открытия модального окна
|
||||||
ztp_templates_tab.should_be_modal_window()
|
ztp_templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Закрытие через кнопку в тулбаре
|
# Закрытие через кнопку в тулбаре
|
||||||
ztp_templates_tab.close_modal_window_by_toolbar_button(template_name)
|
ztp_templates_tab.close_modal_window_by_toolbar_button(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
ztp_templates_tab.should_not_be_modal_window()
|
ztp_templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -217,7 +217,7 @@ class TestZTPTemplatesTab:
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы
|
# Открываем модальное окно, кликая на первую строку таблицы
|
||||||
template_name = ztp_templates_tab.open_template_modal_by_index(0)
|
title = ztp_templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
@ -226,10 +226,10 @@ class TestZTPTemplatesTab:
|
||||||
ztp_templates_tab.should_be_modal_window()
|
ztp_templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Проверка содержимого модального окна
|
# Проверка содержимого модального окна
|
||||||
ztp_templates_tab.check_templates_modal_content(template_name)
|
ztp_templates_tab.check_templates_modal_content(title)
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку 'Закрыть'
|
# Закрытие модального окна через кнопку 'Закрыть'
|
||||||
ztp_templates_tab.close_modal_window(template_name)
|
ztp_templates_tab.close_modal_window(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
ztp_templates_tab.should_not_be_modal_window()
|
ztp_templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -254,7 +254,7 @@ class TestZTPTemplatesTab:
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы
|
# Открываем модальное окно, кликая на первую строку таблицы
|
||||||
template_name = ztp_templates_tab.open_template_modal_by_index(0)
|
title = ztp_templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(1000)
|
browser.wait_for_timeout(1000)
|
||||||
|
|
@ -279,7 +279,7 @@ class TestZTPTemplatesTab:
|
||||||
print("Модальное окно не поддерживает вертикальный скроллинг")
|
print("Модальное окно не поддерживает вертикальный скроллинг")
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку 'Закрыть'
|
# Закрытие модального окна через кнопку 'Закрыть'
|
||||||
ztp_templates_tab.close_modal_window(template_name)
|
ztp_templates_tab.close_modal_window(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
ztp_templates_tab.should_not_be_modal_window()
|
ztp_templates_tab.should_not_be_modal_window()
|
||||||
|
|
@ -308,7 +308,7 @@ class TestZTPTemplatesTab:
|
||||||
browser.wait_for_timeout(5000)
|
browser.wait_for_timeout(5000)
|
||||||
|
|
||||||
# Открываем модальное окно, кликая на первую строку таблицы и возвращаем имя заголовка
|
# Открываем модальное окно, кликая на первую строку таблицы и возвращаем имя заголовка
|
||||||
template_name = ztp_templates_tab.open_template_modal_by_index(0)
|
title = ztp_templates_tab.open_template_modal_by_index(0)
|
||||||
|
|
||||||
# Добавляем задержку для открытия модального окна
|
# Добавляем задержку для открытия модального окна
|
||||||
browser.wait_for_timeout(2000)
|
browser.wait_for_timeout(2000)
|
||||||
|
|
@ -317,10 +317,10 @@ class TestZTPTemplatesTab:
|
||||||
ztp_templates_tab.should_be_modal_window()
|
ztp_templates_tab.should_be_modal_window()
|
||||||
|
|
||||||
# Проверка соответствия данных модального окна данным из API
|
# Проверка соответствия данных модального окна данным из API
|
||||||
ztp_templates_tab.verify_template_data_with_api(template_name)
|
ztp_templates_tab.verify_template_data_with_api(title)
|
||||||
|
|
||||||
# Закрытие модального окна через кнопку закрытия
|
# Закрытие модального окна через кнопку закрытия
|
||||||
ztp_templates_tab.close_modal_window_by_toolbar_button(template_name)
|
ztp_templates_tab.close_modal_window_by_toolbar_button(title)
|
||||||
|
|
||||||
# Проверяем, что модальное окно закрылось
|
# Проверяем, что модальное окно закрылось
|
||||||
ztp_templates_tab.should_not_be_modal_window()
|
ztp_templates_tab.should_not_be_modal_window()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue