11import pytest
22from playwright .sync_api import Page , expect
3- from utils .click_helper import click
43from pages .base_page import BasePage
4+ from pages .screening_practitioner_appointments import ScreeningPractitionerAppointmentsPage
5+ from pages .bowel_scope_appointments_page import BowelScopeAppointments
6+ from pages .colonoscopy_assessment_appointments_page import ColonoscopyAssessmentAppointments
57from utils .user_tools import UserTools
68
79
@@ -25,21 +27,21 @@ def test_screening_practitioner_appointments_page_navigation(page: Page) -> None
2527 and clickable (where the user has required permissions).
2628 """
2729 # Verify View appointments page opens as expected
28- click (page , page . get_by_role ( "link" , name = "View appointments" ) )
29- expect (page . locator ( "#ntshPageTitle" )). to_contain_text ( "Appointment Calendar" )
30- click (page , page . get_by_role ( "link" , name = "Back" ) )
30+ ScreeningPractitionerAppointmentsPage (page ). go_to_view_appointments_page ( )
31+ BowelScopeAppointments (page ). verify_page_title ( )
32+ BowelScopeAppointments (page ). click_back_button ( )
3133
3234 # Verify Patients that Require Colonoscopy Assessment Appointments page opens as expected
33- click (page , page .get_by_role ("link" , name = "Patients that Require" ))
34- expect (page .locator ("#page-title" )).to_contain_text ("Patients that Require Colonoscopy Assessment Appointments" )
35- click (page , page .get_by_role ("link" , name = "Back" ))
35+ ScreeningPractitionerAppointmentsPage (page ).go_to_patients_that_require_page ()
36+ ColonoscopyAssessmentAppointments (page ).verify_page_header ()
3637
37- # Verify below links are visible (not clickable due to user role permissions)
38- expect (page .get_by_text ("Patients that Require Colonoscopy Assessment Appointments - Bowel Scope" )).to_be_visible ()
39- expect (page .get_by_text ("Patients that Require Surveillance Appointments" )).to_be_visible ()
40- expect (page .get_by_text ("Patients that Require Post-" )).to_be_visible ()
41- expect (page .get_by_text ("Set Availability" )).to_be_visible ()
38+ ColonoscopyAssessmentAppointments (page ).click_back_button ()
39+
40+ expect (ScreeningPractitionerAppointmentsPage (page ).patients_that_require_colonoscopy_assessment_appointments_bowel_scope_link ).to_be_visible ()
41+ expect (ScreeningPractitionerAppointmentsPage (page ).patients_that_require_surveillance_appointment_link ).to_be_visible ()
42+ expect (ScreeningPractitionerAppointmentsPage (page ).patients_that_require_post ).to_be_visible ()
43+ expect (ScreeningPractitionerAppointmentsPage (page ).set_availability_link ).to_be_visible ()
4244
4345 # Return to main menu
44- click (page , page . get_by_role ( "link" , name = "Main Menu" ) )
45- expect (page . locator ( "#ntshPageTitle" )). to_contain_text ( "Main Menu" )
46+ ScreeningPractitionerAppointmentsPage (page ). click_main_menu_link ( )
47+ ScreeningPractitionerAppointmentsPage (page ). main_menu_header_is_displayed ( )
0 commit comments