Skip to content

Commit 8a9a491

Browse files
Adding utils for compartment 5 and fixed some logging for other compartments
1 parent 98c6bf0 commit 8a9a491

File tree

10 files changed

+225
-178
lines changed

10 files changed

+225
-178
lines changed

pages/screening_practitioner_appointments/appointment_detail_page.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ def __init__(self, page: Page):
1010
self.attendance_radio = self.page.get_by_role("radio", name="Attendance")
1111
self.attendented_check_box = self.page.locator("#UI_ATTENDED")
1212
self.calendar_button = self.page.get_by_role("button", name="Calendar")
13-
self.save_button = self.page.get_by_role("button", name="Save").click()
13+
self.save_button = self.page.get_by_role("button", name="Save")
1414

1515
def check_attendance_radio(self) -> None:
1616
self.attendance_radio.check()
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,20 @@
11
from playwright.sync_api import Page
22
from pages.base_page import BasePage
33

4+
45
class ScreeningPractitionerDayView(BasePage):
56
def __init__(self, page: Page):
67
super().__init__(page)
78
self.page = page
89
# Screening Practitioner Day View - page locators
910
self.calendar_button = page.get_by_role("button", name="Calendar")
11+
self.practitioner_dropdown = self.page.locator("#UI_PRACTITIONER_NDV")
1012

1113
def click_calendar_button(self) -> None:
1214
self.click(self.calendar_button)
1315

1416
def click_patient_link(self, patient_name: str) -> None:
1517
self.click(self.page.get_by_role("link", name=patient_name))
18+
19+
def select_practitioner_dropdown_option(self, practitioner: str | list) -> None:
20+
self.practitioner_dropdown.select_option(label=practitioner)

pages/screening_subject_search/advance_fobt_screening_episode_page.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from playwright.sync_api import Page, expect, Locator
22
from pages.base_page import BasePage
3+
import logging
4+
import pytest
35

46

57
class AdvanceFOBTScreeningEpisode(BasePage):
@@ -53,10 +55,15 @@ def get_latest_event_status_cell(self, latest_event_status: str) -> Locator:
5355
return self.page.get_by_role("cell", name=latest_event_status, exact=True)
5456

5557
def verify_latest_event_status_value(self, latest_event_status: str) -> None:
58+
logging.info(f"Verifying subject has the status: {latest_event_status}")
5659
latest_event_status_cell = self.get_latest_event_status_cell(
5760
latest_event_status
5861
)
59-
expect(latest_event_status_cell).to_be_visible()
62+
try:
63+
expect(latest_event_status_cell).to_be_visible()
64+
logging.info(f"Subject has the status: {latest_event_status}")
65+
except Exception:
66+
pytest.fail(f"Subject does not have the status: {latest_event_status}")
6067

6168
def click_record_other_post_investigation_contact_button(self) -> None:
6269
self.click(self.record_other_post_investigation_contact_button)

pages/screening_subject_search/subject_screening_summary.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from playwright.sync_api import Page, expect, Locator
22
from pages.base_page import BasePage
33
from enum import Enum
4+
import logging
45
import pytest
56

67

@@ -76,10 +77,15 @@ def verify_latest_event_status_header(self) -> None:
7677
expect(self.latest_event_status).to_be_visible()
7778

7879
def verify_latest_event_status_value(self, latest_event_status: str) -> None:
80+
logging.info(f"Verifying subject has the status: {latest_event_status}")
7981
latest_event_status_cell = self.get_latest_event_status_cell(
8082
latest_event_status
8183
)
82-
expect(latest_event_status_cell).to_be_visible()
84+
try:
85+
expect(latest_event_status_cell).to_be_visible()
86+
logging.info(f"Subject has the status: {latest_event_status}")
87+
except Exception:
88+
pytest.fail(f"Subject does not have the status: {latest_event_status}")
8389

8490
def click_subjects_events_notes(self) -> None:
8591
self.click(self.subjects_events_notes)
@@ -130,7 +136,12 @@ def click_datasets_link(self) -> None:
130136
self.click(self.datasets_link)
131137

132138
def click_advance_fobt_screening_episode_button(self) -> None:
133-
self.click(self.advance_fobt_screening_episode_button)
139+
logging.info("Advancing the episode")
140+
try:
141+
self.click(self.advance_fobt_screening_episode_button)
142+
logging.info("Episode successfully advanced")
143+
except Exception as e:
144+
pytest.fail(f"Unable to advance the episode: {e}")
134145

135146

136147
class ChangeScreeningStatusOptions(Enum):

tests/smokescreen/bcss_smokescreen_tests.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@
8585
# ----------------------------------
8686
# compartment 5
8787
# ----------------------------------
88-
# c5_eng_number_of_screening_appts_to_attend=5
88+
c5_eng_number_of_screening_appts_to_attend=2
8989

9090
# ----------------------------------
9191
# compartment 6

tests/smokescreen/test_compartment_2.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,9 @@ def test_compartment_2(page: Page, smokescreen_properties: dict) -> None:
5656
pytest.fail(f"{fit_device_id} unsuccessfully logged: {str(e)}")
5757

5858
nhs_no = subjectdf["subject_nhs_number"].iloc[0]
59-
try:
60-
verify_subject_event_status_by_nhs_no(
61-
page, nhs_no, "S43 - Kit Returned and Logged (Initial Test)"
62-
)
63-
logging.info(
64-
f"Successfully verified NHS number {nhs_no} with status S43 - Kit Returned and Logged (Initial Test)"
65-
)
66-
except Exception as e:
67-
pytest.fail(f"Verification failed for NHS number {nhs_no}: {str(e)}")
59+
verify_subject_event_status_by_nhs_no(
60+
page, nhs_no, "S43 - Kit Returned and Logged (Initial Test)"
61+
)
6862

6963
BasePage(page).click_main_menu_link()
7064
BasePage(page).go_to_fit_test_kits_page()

tests/smokescreen/test_compartment_3.py

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -66,16 +66,7 @@ def test_compartment_3(page: Page, smokescreen_properties: dict) -> None:
6666
f"Verifying NHS number: {nhs_number} with expected status: {expected_status}"
6767
)
6868

69-
try:
70-
verify_subject_event_status_by_nhs_no(page, nhs_number, expected_status)
71-
logging.info(
72-
f"Successfully verified NHS number {nhs_number} with status {expected_status}"
73-
)
74-
except Exception as e:
75-
logging.error(
76-
f"Verification failed for NHS number {nhs_number} with status {expected_status}: {str(e)}"
77-
)
78-
raise
69+
verify_subject_event_status_by_nhs_no(page, nhs_number, expected_status)
7970

8071
# Process S2 batch
8172
batch_processing(

0 commit comments

Comments
 (0)