From 24de2ed107b306c547e810b204dfdab3fa49bd47 Mon Sep 17 00:00:00 2001 From: InnaLia Date: Tue, 20 Jan 2026 16:56:55 -0800 Subject: [PATCH] Add tests 20-26 --- .../test_duplicate_item_error_message_il.py | 28 +++++++++++++++++++ .../test_enter_an_item_name_field_il.py | 15 ++++++++++ ...field_accepts_characters_underscores_il.py | 23 +++++++++++++++ ...est_new_item_is_visible_on_dashboard_il.py | 24 ++++++++++++++++ .../test_new_item_page_redirection_il.py | 11 ++++++++ tests/old_tests/test_ok_button_disabled_il.py | 15 ++++++++++ tests/test_list_of_item_types_displayed.py | 26 +++++++++++++++++ 7 files changed, 142 insertions(+) create mode 100644 tests/old_tests/test_duplicate_item_error_message_il.py create mode 100644 tests/old_tests/test_enter_an_item_name_field_il.py create mode 100644 tests/old_tests/test_field_accepts_characters_underscores_il.py create mode 100644 tests/old_tests/test_new_item_is_visible_on_dashboard_il.py create mode 100644 tests/old_tests/test_new_item_page_redirection_il.py create mode 100644 tests/old_tests/test_ok_button_disabled_il.py create mode 100644 tests/test_list_of_item_types_displayed.py diff --git a/tests/old_tests/test_duplicate_item_error_message_il.py b/tests/old_tests/test_duplicate_item_error_message_il.py new file mode 100644 index 0000000..4bc61ed --- /dev/null +++ b/tests/old_tests/test_duplicate_item_error_message_il.py @@ -0,0 +1,28 @@ +from faker import Faker +from playwright.sync_api import expect + +fake = Faker() + +def test_duplicate_item_error_message(page): + item_name = fake.user_name() + + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//input[@id="name"]').fill(item_name) + freestyle = page.locator('//li[contains(@class,"hudson_model_FreeStyleProject")]') + expect(freestyle).to_be_visible() + freestyle.click() + + page.locator('//button[@id="ok-button"]').click() + + page.get_by_role("link", name="Jenkins", exact=True).click() + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//input[@id="name"]').fill(item_name) + + + error_message = page.locator('//div[@id="itemname-invalid"]') + expect(error_message).to_be_visible() + expect(error_message).to_contain_text("A job already exists with the name") diff --git a/tests/old_tests/test_enter_an_item_name_field_il.py b/tests/old_tests/test_enter_an_item_name_field_il.py new file mode 100644 index 0000000..159e679 --- /dev/null +++ b/tests/old_tests/test_enter_an_item_name_field_il.py @@ -0,0 +1,15 @@ +from playwright.sync_api import expect + +def test_enter_an_item_name_field(page): + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//a[@href="/view/all/newJob"]') + + item_name_page = page.locator('//label[contains(text(), "Enter an item name")]') + expect(item_name_page).to_have_text("Enter an item name") + + input_field = page.locator('//input[@id="name"]') + expect(input_field).to_be_visible() + diff --git a/tests/old_tests/test_field_accepts_characters_underscores_il.py b/tests/old_tests/test_field_accepts_characters_underscores_il.py new file mode 100644 index 0000000..1f519b0 --- /dev/null +++ b/tests/old_tests/test_field_accepts_characters_underscores_il.py @@ -0,0 +1,23 @@ +from playwright.sync_api import expect + +def test_enter_an_item_name_field(page): + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//a[@href="/view/all/newJob"]') + + item_name_input = page.locator('//input[@id="name"]') + + valid_names = [ + "Item1", + "item_name", + "ITEM_123", + "itemName_2024" + ] + + for name in valid_names: + item_name_input.fill("") + item_name_input.fill(name) + + expect(item_name_input).to_have_value(name) diff --git a/tests/old_tests/test_new_item_is_visible_on_dashboard_il.py b/tests/old_tests/test_new_item_is_visible_on_dashboard_il.py new file mode 100644 index 0000000..f313a87 --- /dev/null +++ b/tests/old_tests/test_new_item_is_visible_on_dashboard_il.py @@ -0,0 +1,24 @@ +from faker import Faker +from playwright.sync_api import expect + +fake = Faker() + +def test_duplicate_item_error_message(page): + item_name = fake.user_name() + + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//input[@id="name"]').fill(item_name) + freestyle = page.locator('//li[contains(@class,"hudson_model_FreeStyleProject")]') + expect(freestyle).to_be_visible() + freestyle.click() + + page.locator('//button[@id="ok-button"]').click() + + page.get_by_role("link", name="Jenkins", exact=True).click() + + item_span = page.locator(f"//span[text()='{item_name}']") + expect(item_span).to_be_visible() + diff --git a/tests/old_tests/test_new_item_page_redirection_il.py b/tests/old_tests/test_new_item_page_redirection_il.py new file mode 100644 index 0000000..a3f843e --- /dev/null +++ b/tests/old_tests/test_new_item_page_redirection_il.py @@ -0,0 +1,11 @@ +from playwright.sync_api import expect + +def test_new_item_page_redirection(page): + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//a[@href="/view/all/newJob"]') + + new_item_page = page.locator('//span[contains(text(), "New Item")]') + expect(new_item_page).to_have_text("New Item") \ No newline at end of file diff --git a/tests/old_tests/test_ok_button_disabled_il.py b/tests/old_tests/test_ok_button_disabled_il.py new file mode 100644 index 0000000..58d2215 --- /dev/null +++ b/tests/old_tests/test_ok_button_disabled_il.py @@ -0,0 +1,15 @@ +from playwright.sync_api import expect + +def test_enter_an_item_name_field(page): + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//a[@href="/view/all/newJob"]') + + item_name_input = page.locator('//input[@id="name"]') + expect(item_name_input).to_have_text("") + + ok_button = page.locator('//button[@id="ok-button"]') + expect(ok_button).to_be_disabled() + diff --git a/tests/test_list_of_item_types_displayed.py b/tests/test_list_of_item_types_displayed.py new file mode 100644 index 0000000..4f19a2b --- /dev/null +++ b/tests/test_list_of_item_types_displayed.py @@ -0,0 +1,26 @@ +from playwright.sync_api import expect + +def test_list_of_item_types_displayed(page): + page.goto('/') + + page.locator("a[href='/view/all/newJob']").click() + + page.locator('//a[@href="/view/all/newJob"]') + + item_name_freestyle_project = page.locator('//span[contains(text(),"Freestyle project")]') + expect(item_name_freestyle_project).to_have_text("Freestyle project") + + item_name_pipeline = page.locator('(//span[contains(text(),"Pipeline")])[1]') + expect(item_name_pipeline).to_have_text("Pipeline") + + item_name_multi_configuration_project = page.locator('//span[contains(text(),"Multi-configuration project")]') + expect(item_name_multi_configuration_project).to_have_text("Multi-configuration project") + + item_name_folder = page.locator('//span[normalize-space(text())="Folder"]') + expect(item_name_folder).to_have_text("Folder") + + item_name_multibranch_pipeline = page.locator('//span[contains(text(),"Multibranch Pipeline")]') + expect(item_name_multibranch_pipeline).to_have_text("Multibranch Pipeline") + + item_name_organization_folder = page.locator('//span[contains(text(),"Organization Folder")]') + expect(item_name_organization_folder).to_have_text("Organization Folder")