Skip to content

Commit 89c05b5

Browse files
Created new page objects for analysers
1 parent cee24b5 commit 89c05b5

File tree

3 files changed

+53
-1
lines changed

3 files changed

+53
-1
lines changed
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
from playwright.sync_api import Page
2+
from pages.base_page import BasePage
3+
4+
5+
class CreateNewAnalyserPage(BasePage):
6+
"""Create New Analyser page locators and methods for interacting with the page."""
7+
8+
def __init__(self, page: Page):
9+
super().__init__(page)
10+
self.page = page
11+
# Create New Analyser - page locators, methods
12+
self.analyser_code_textbox = page.get_by_role("textbox", name="Analyser Code")
13+
self.analyser_name_textbox = page.get_by_role("textbox", name="Analyser Name")
14+
self.serial_number_textbox = page.get_by_role("textbox", name="Serial Number")
15+
self.start_date_textbox = page.get_by_role("textbox", name="Start Date")
16+
self.software_version_textbox = page.get_by_role(
17+
"textbox", name="Software Version"
18+
)
19+
self.software_start_date_textbox = page.locator("#softwareStartDate")
20+
self.software_start_time_textbox = page.locator("#softwarestarttime")
21+
self.end_date_textbox = page.get_by_role("textbox", name="End Date")
22+
self.lookup_link = page.get_by_role("link", name="Lookup")
23+
self.save_button = page.get_by_role("button", name="Save")
24+
25+
def verify_create_new_analyser_title(self) -> None:
26+
"""Verify the Create New Analyser page title is displayed correctly."""
27+
self.bowel_cancer_screening_page_title_contains_text("Create New Analyser")
28+
29+
def select_analyser_from_lookup(self, analyser_type: str) -> None:
30+
"""Presses lookup link and selects the Analyser Type specified"""
31+
self.lookup_link.click()
32+
self.page.locator(
33+
f"input[type='radio'][onclick*=\"'{analyser_type}'\"]"
34+
).check()
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
from playwright.sync_api import Page
2+
from pages.fit_test_kits.create_new_analyser_page import CreateNewAnalyserPage
3+
4+
5+
class EditAnalyserPage(CreateNewAnalyserPage):
6+
"""Edit Analyser page locators and methods for interacting with the page."""
7+
8+
def __init__(self, page: Page):
9+
super().__init__(page)
10+
self.page = page
11+
12+
def verify_edit_analyser_title(self) -> None:
13+
"""Verify the Edit Analyser page title is displayed correctly."""
14+
self.bowel_cancer_screening_page_title_contains_text("Edit Analyser")

pages/fit_test_kits/maintain_analysers_page.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from playwright.sync_api import Page, expect
1+
from playwright.sync_api import Page
22
from pages.base_page import BasePage
33

44

@@ -9,6 +9,10 @@ def __init__(self, page: Page):
99
super().__init__(page)
1010
self.page = page
1111
# Maintain Analysers - page locators, methods
12+
self.analysers_table = page.locator("#analyserTableDiv")
13+
self.create_new_analyser_button = page.get_by_role(
14+
"button", name="Create New Analyser"
15+
)
1216

1317
def verify_maintain_analysers_title(self) -> None:
1418
"""Verify the Maintain Analysers page title is displayed correctly."""

0 commit comments

Comments
 (0)