# TestLicenseTab - Документация тестов eNODE-Мониторинг

Skip to content

# TestLicenseTab

Модуль тестов вкладки 'Лицензии'.

Содержит тесты для проверки функциональности и содержимого вкладки лицензий.

## `TestLicenseTab`

Класс тестов для проверки вкладки 'Лицензии'.

Тесты покрывают следующие сценарии: 1. test_lisence_tab_content: Проверяет содержимое вкладки 'Лицензии' 2. test_license_tab_input_form_and_check_alert: Проверяет форму ввода лицензии и отображение алертов

Source code in `tests\e2e\test_license_tab.py`

    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88

    class TestLicenseTab:
        """Класс тестов для проверки вкладки 'Лицензии'.

        Тесты покрывают следующие сценарии:
        1. test_lisence_tab_content: Проверяет содержимое вкладки 'Лицензии'
        2. test_license_tab_input_form_and_check_alert: Проверяет форму ввода лицензии и отображение алертов
        """

        @pytest.fixture(scope="function", autouse=True)
        def setup(self, browser: Page) -> None:
            """Настраивает тестовое окружение перед каждым тестом.

            Args:
                browser: Экземпляр страницы Playwright.
            """

            lp = LoginPage(browser)
            lp.do_login()

            mp = MainPage(browser)
            mp.should_be_navigation_panel()
            mp.click_main_navigation_panel_item("Настройки")
            mp.click_subpanel_item("Лицензии")

        # @pytest.mark.develop
        def test_lisence_tab_content(self, browser: Page) -> None:
            """Проверяет содержимое вкладки 'Лицензии'.

            Args:
                browser: Экземпляр страницы Playwright.
            """

            lt = LicenseTab(browser)
            lt.check_content()

        def test_license_tab_input_form_and_check_alert(self, browser: Page) -> None:
            """Проверяет форму ввода лицензии и отображение алертов.

            Args:
                browser: Экземпляр страницы Playwright.
            """

            def gen_test_data() -> List[str]:
                """Генерирует тестовые данные для проверки формы.

                Returns:
                    List[str]: Список тестовых строк лицензий.
                """

                data = []
                for i in range(3):
                    data.append(uuid.uuid4().hex)

                lowercase_str = uuid.uuid4().hex
                data.append(lowercase_str.upper())
                data.append(lowercase_str + "fffffffff")
                data.append("0")
                data.append("000000000000000000000000000000000000000000000000")
                data.append("-1")

                return data

            lt = LicenseTab(browser)
            lt.should_be_empty_input_form()

            lt.fill_license_input_form("")
            lt.should_be_error_alert_window_with_text("Неверный лицензионный ключ")

            data = gen_test_data()

            for data_string in data:
                lt.fill_license_input_form(data_string)
                lt.should_be_error_alert_window_with_text("Ошибка обновления лицензии")

### `setup(browser)`

Настраивает тестовое окружение перед каждым тестом.

Parameters:

Name | Type | Description | Default
--- | --- | --- | ---
`browser` | `Page` | Экземпляр страницы Playwright. | required

Source code in `tests\e2e\test_license_tab.py`

    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38

    @pytest.fixture(scope="function", autouse=True)
    def setup(self, browser: Page) -> None:
        """Настраивает тестовое окружение перед каждым тестом.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        lp = LoginPage(browser)
        lp.do_login()

        mp = MainPage(browser)
        mp.should_be_navigation_panel()
        mp.click_main_navigation_panel_item("Настройки")
        mp.click_subpanel_item("Лицензии")

### `test_license_tab_input_form_and_check_alert(browser)`

Проверяет форму ввода лицензии и отображение алертов.

Parameters:

Name | Type | Description | Default
--- | --- | --- | ---
`browser` | `Page` | Экземпляр страницы Playwright. | required

Source code in `tests\e2e\test_license_tab.py`

    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88

    def test_license_tab_input_form_and_check_alert(self, browser: Page) -> None:
        """Проверяет форму ввода лицензии и отображение алертов.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        def gen_test_data() -> List[str]:
            """Генерирует тестовые данные для проверки формы.

            Returns:
                List[str]: Список тестовых строк лицензий.
            """

            data = []
            for i in range(3):
                data.append(uuid.uuid4().hex)

            lowercase_str = uuid.uuid4().hex
            data.append(lowercase_str.upper())
            data.append(lowercase_str + "fffffffff")
            data.append("0")
            data.append("000000000000000000000000000000000000000000000000")
            data.append("-1")

            return data

        lt = LicenseTab(browser)
        lt.should_be_empty_input_form()

        lt.fill_license_input_form("")
        lt.should_be_error_alert_window_with_text("Неверный лицензионный ключ")

        data = gen_test_data()

        for data_string in data:
            lt.fill_license_input_form(data_string)
            lt.should_be_error_alert_window_with_text("Ошибка обновления лицензии")

### `test_lisence_tab_content(browser)`

Проверяет содержимое вкладки 'Лицензии'.

Parameters:

Name | Type | Description | Default
--- | --- | --- | ---
`browser` | `Page` | Экземпляр страницы Playwright. | required

Source code in `tests\e2e\test_license_tab.py`

    41
    42
    43
    44
    45
    46
    47
    48
    49

    def test_lisence_tab_content(self, browser: Page) -> None:
        """Проверяет содержимое вкладки 'Лицензии'.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        lt = LicenseTab(browser)
        lt.check_content()