test(user_modal): добавлены аннотации типов для тестов модальных окон

- Добавлены аннотации типов для параметров:
  * browser: Page в setup(), test_edit_user_window_scrolling() и test_add_user_window_scrolling()

- Добавлены возвращаемые типы:
  * -> None для всех тестовых методов

Изменения улучшают статическую проверку типов и документирование тестов.
Radislav 2025-07-22 08:53:33 +03:00
parent 62c7f87466
commit f057a9dfa8
1 changed files with 8 additions and 71 deletions

View File

@ -1,133 +1,70 @@
from pages.login_page import LoginPage
from pages.main_page import MainPage
from pages.users_tab import UsersTab
from playwright.sync_api import Page
import pytest
class TestUsersModalWindow:
"""Тесты для проверки модальных окон работы с пользователями.
"""Тесты для проверки модальных окон работы с пользователями."""
Содержит тесты для проверки:
- Прокрутки модальных окон (вертикальной и горизонтальной)
- Видимости элементов после прокрутки
- Функциональности окон редактирования и добавления пользователей
"""
# @pytest.mark.smoke
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser):
"""Фикстура для настройки тестового окружения.
Выполняет:
1. Авторизацию в системе
2. Переход на главную страницу
3. Проверку видимости панели навигации
4. Переход на вкладку 'Пользователи'
Args:
browser: Фикстура браузера
"""
# Авторизация в системе
def setup(self, browser: Page) -> None:
"""Фикстура для настройки тестового окружения."""
lp = LoginPage(browser)
lp.do_login()
# Переход на главную страницу
mp = MainPage(browser)
# Проверка видимости панели навигации
mp.should_be_navigation_panel()
# Клик по пункту "Настройки" в главном меню
mp.click_main_navigation_panel_item("Настройки")
# Клик по пункту "Пользователи" в меню конфигурации
mp.click_configuration_navigation_panel_item("Пользователи")
@pytest.mark.develop
def test_edit_user_window_scrolling(self, browser):
"""Тест проверки прокрутки окна редактирования пользователя.
Проверяет:
1. Возможность вертикальной и горизонтальной прокрутки
2. Видимость кнопок после прокрутки
3. Корректность работы прокрутки в разных направлениях
Args:
browser: Фикстура браузера
"""
# Инициализация страницы работы с пользователями
def test_edit_user_window_scrolling(self, browser: Page) -> None:
"""Тест проверки прокрутки окна редактирования пользователя."""
ut = UsersTab(browser)
# Открытие окна редактирования пользователя
user_name, role = ut.open_edit_user_page_by_index(0)
# Получение модального окна
modal_window = ut.get_modal_window(user_name)
# Проверка вертикальной прокрутки
is_scrollable_vertically = modal_window.check_window_vertical_scrolling()
assert is_scrollable_vertically, "Should be vertical scrolling"
# Прокрутка вниз и проверка кнопки "close"
modal_window.scroll_window_down()
modal_window.check_button_presence("close")
ut.wait_for_timeout(3000)
# Прокрутка вверх и проверка кнопки "close" в тулбаре
modal_window.scroll_window_up()
modal_window.check_toolbar_button_presence("close")
ut.wait_for_timeout(3000)
# Проверка горизонтальной прокрутки
is_scrollable_horizontally = modal_window.check_window_horizontal_scrolling()
assert is_scrollable_horizontally, "Should be horizontal scrolling"
# Прокрутка вправо и влево
modal_window.scroll_window_right()
ut.wait_for_timeout(3000)
modal_window.scroll_window_left()
ut.wait_for_timeout(2000)
def test_add_user_window_scrolling(self, browser):
"""Тест проверки прокрутки окна добавления пользователя.
Проверяет:
1. Возможность вертикальной и горизонтальной прокрутки
2. Видимость кнопок после прокрутки
3. Корректность работы прокрутки в разных направлениях
Args:
browser: Фикстура браузера
"""
# Инициализация страницы работы с пользователями
def test_add_user_window_scrolling(self, browser: Page) -> None:
"""Тест проверки прокрутки окна добавления пользователя."""
ut = UsersTab(browser)
# Открытие окна добавления пользователя
ut.open_add_user_window()
# Получение модального окна
modal_window = ut.get_modal_window("add_user")
# Проверка вертикальной прокрутки
is_scrollable_vertically = modal_window.check_window_vertical_scrolling()
assert is_scrollable_vertically, "Should be vertical scrolling"
# Прокрутка вниз и проверка кнопки "close"
modal_window.scroll_window_down()
modal_window.check_button_presence("close")
ut.wait_for_timeout(3000)
# Прокрутка вверх и проверка кнопки "close" в тулбаре
modal_window.scroll_window_up()
modal_window.check_toolbar_button_presence("close")
ut.wait_for_timeout(3000)
# Проверка горизонтальной прокрутки
is_scrollable_horizontally = modal_window.check_window_horizontal_scrolling()
assert is_scrollable_horizontally, "Should be horizontal scrolling"
# Прокрутка вправо и влево
modal_window.scroll_window_right()
ut.wait_for_timeout(3000)
modal_window.scroll_window_left()