class RequirementGetByName: __e_name_xpath = Locators.TITLE['title'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) def req_name_click(self, req_name): try: self.wait.loading() self.wait.web_element_wait_click( By.XPATH, self.__e_name_xpath.format(req_name), 'req_name_click') print('Requirement name - Clicked to open details screen') self.wait.loading() return True except Exception as error: ui_logger.error(error) def req_name_validation(self, req_name): try: self.wait.web_element_wait_text( By.XPATH, self.__e_name_xpath.format(req_name), 'req_name_validation') print('Event Name -', self.wait.text_value) return True except Exception as error: ui_logger.error(error)
class EventGetByName: __e_click_name_xpath = Locators.TITLE['title'].format( 'Click to view full details') __e_event_name_xpath = Locators.TITLE['title'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) def event_name_click(self): try: self.wait.loading() self.wait.web_element_wait_click(By.XPATH, self.__e_click_name_xpath, 'Event_name_click') print('Event name - Clicked to open details screen') self.wait.loading() return True except Exception as error: ui_logger.error(error) def event_name_validation(self, event_name): try: time.sleep(3) self.wait.web_element_wait_text( By.XPATH, self.__e_event_name_xpath.format(event_name), 'Event_name_validation') print('Event Name -', self.wait.text_value) self.wait.loading() return True except Exception as error: ui_logger.error(error)
class AssessmentGetByName: __e_test_name_xpath = Locators.TITLE['title'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) def test_name_click(self, test_name): try: self.wait.web_element_wait_click(By.XPATH, self.__e_test_name_xpath.format(test_name), 'test_name_click') print(f'Clicked on - {test_name}') return True except Exception as error: ui_logger.error(error) def assessment_name_validation(self, assessment_name): try: self.wait.web_element_wait_text(By.XPATH, self.__e_test_name_xpath.format(assessment_name), 'Assessment_name_validation') print(f'Assessment Name - {self.wait.text_value}') self.wait.loading() time.sleep(0.3) return True except Exception as error: ui_logger.error(error)
class CandidateDetailsPage: __e_title_xpath = Locators.TITLE['title'] __e_id_xpath = Locators.CANDIDATE['id'] __e_candidate_float_action_class = Locators.ACTIONS['float_click_class'] __e_manage_task_xpath = Locators.TITLE['title'].format('Manage Task') def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.window = SwitchWindowClose(self.driver) self.candidate_id = '' def candidate_float_actions(self): try: self.wait.web_element_wait_click( By.CLASS_NAME, self.__e_candidate_float_action_class, 'candidate_float_actions') print('Candidate details screen - floating action clicked') return True except Exception as error: ui_logger.error(error) def candidate_manage_task_action(self, window_index): try: time.sleep(1) self.wait.web_element_wait_click(By.XPATH, self.__e_manage_task_xpath, 'candidate_manage_task_action') print('Candidate details screen - floating action - Manage Task') time.sleep(1) self.window.switch_to_window(window_index) self.wait.loading() return True except Exception as error: ui_logger.error(error) def candidate_status(self, changed_status): try: time.sleep(2) self.wait.loading() self.wait.web_element_wait_text( By.XPATH, self.__e_title_xpath.format(changed_status), f'Candidate_status_{changed_status}') if self.wait.text_value == changed_status: print(f'Candidate status changed - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def candidate_id_copy(self): try: self.wait.web_element_wait_text(By.XPATH, self.__e_id_xpath, 'candidate_id') self.candidate_id = self.wait.text_value print(f'candidate id - {self.candidate_id}') return True except Exception as error: ui_logger.error(error)
class JobGetByName: __e_job_name_xpath = Locators.TITLE['title'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.tab = Title(self.driver) self.window = SwitchWindowClose(self.driver) def job_tab_title(self, tab_title): try: self.tab.tab_title(tab_title) return True except Exception as error: ui_logger.error(error) def job_name_click(self, job_name): try: self.wait.web_element_wait_click( By.XPATH, self.__e_job_name_xpath.format(job_name), 'job_name_click') time.sleep(0.5) self.driver.close() self.driver.switch_to.window(self.driver.window_handles[0]) time.sleep(1.5) self.wait.loading() return True except Exception as error: ui_logger.error(error) def job_name_validation(self, job_name): try: self.wait.loading() self.wait.web_element_wait_text( By.XPATH, self.__e_job_name_xpath.format(job_name), 'Job_name_validation') print('Job Name -', self.wait.text_value) return True except Exception as error: ui_logger.error(error)
class Notifier: e_notifier = Locators.NOTIFIER['message'] e_dismiss = Locators.NOTIFIER['dismiss'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) def glowing_messages(self, ui_message): self.wait.web_element_wait_text(By.CLASS_NAME, self.e_notifier, 'Glowing_message') message = self.wait.text_value if message == ui_message: print( '**-------->>> Message/UI notifier validated successfully - {}' .format(message)) else: print('Message/UI notifier validation failed - {} <<<---------**'. format(message)) def dismiss_message(self): self.wait.web_element_wait_click(By.CLASS_NAME, self.e_dismiss, 'Dismiss_message') print('***---------->>> Notifier closed')
class ManageTaskScreen: __e_common_css = Locators.MANAGE_TASK['common_label'] __e_candidate_status_xpath = Locators.MANAGE_TASK['candidate_status'] __e_submit_xpath = Locators.TITLE['tooltip'].format("'", 'Candidate has submitted but not approved.', "'") __e_pending_xpath = Locators.TITLE['tooltip'].format("'", 'Candidate has not submitted.', "'") __e_reject_xpath = Locators.TITLE['tooltip'].format("'", 'Candidate has not corrected the details after the ' 'task(s) got rejected.', "'") __e_approved_xpath = Locators.TITLE['tooltip'].format("'", 'Task(s) are approved.', "'") __e_total_xpath = Locators.MANAGE_TASK['total'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.window = SwitchWindowClose(self.driver) def candidate_name_validate(self, candidate_name): try: value = self.wait.web_elements_wait_text(By.CSS_SELECTOR, self.__e_common_css, candidate_name) if candidate_name in value: print(f'Candidate Name is - {value}') return True except Exception as error: ui_logger.error(error) def candidate_stage_status_validate(self, stage_status): try: self.wait.web_element_wait_text(By.XPATH, self.__e_candidate_status_xpath, stage_status) if self.wait.text_value.strip() == stage_status: print(f'Manage candidate screen verified - {self.wait.text_value.strip()}') return True except Exception as error: ui_logger.error(error) def submitted_task_validate(self, submit_task): try: self.wait.web_element_wait_text(By.XPATH, self.__e_submit_xpath, 'submitted_task_validate') if self.wait.text_value == submit_task: print(f'Submitted tasks are - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def pending_task_validate(self, pending_task): try: self.wait.web_element_wait_text(By.XPATH, self.__e_pending_xpath, 'pending_task_validate') if self.wait.text_value == pending_task: print(f'Pending tasks are - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def rejected_task_validate(self, rejected_task): try: self.wait.web_element_wait_text(By.XPATH, self.__e_reject_xpath, 'rejected_task_validate') if self.wait.text_value == rejected_task: print(f'Rejected tasks are - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def approved_task_validate(self, approved_task): try: self.wait.web_element_wait_text(By.XPATH, self.__e_approved_xpath, 'approved_task_validate') if self.wait.text_value == approved_task: print(f'Approved tasks are - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def total_task_validate(self, total_task): try: self.wait.web_element_wait_text(By.XPATH, self.__e_total_xpath, 'total_task_validate') if self.wait.text_value == total_task: print(f'Total tasks are - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def switch_back_to_old_window(self): try: self.window.window_close() time.sleep(0.5) self.window.switch_to_window(1) time.sleep(0.5) self.window.window_close() time.sleep(0.5) self.window.switch_to_window(0) return True except Exception as error: ui_logger.error(error)
class TagInterviewersPage: __e_job_interviewers_xpath = Locators.JOB['int_panel'] __e_job_int_add_class = Locators.JOB['panel_int_add'] __e_job_int_save_xpath = Locators.BUTTONS['button'].format('Save') __e_job_tag_total_int_css = Locators.JOB['total_owners'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.notifier = Notifier(self.driver) def job_int_panel(self, value): try: self.wait.web_element_wait_send_keys( By.XPATH, self.__e_job_interviewers_xpath, value, 'job_int_panel') print(f'{value} - Selected from job interviewers panel') self.wait.loading() return True except Exception as error: ui_logger.error(error) def job_int_add(self): try: time.sleep(0.5) self.wait.web_element_wait_click(By.CLASS_NAME, self.__e_job_int_add_class, 'job_int_add') print('saved - selection process') return True except Exception as error: ui_logger.error(error) def job_int_save(self): try: time.sleep(0.5) self.wait.web_element_wait_click(By.XPATH, self.__e_job_int_save_xpath, 'job_int_save') print('saved - job interviewers') self.wait.loading() return True except Exception as error: ui_logger.error(error) def job_tag_int_notifier(self, message): try: time.sleep(0.7) self.notifier.glowing_messages(message) return True except Exception as error: ui_logger.error(error) def job_tag_int_notifier_dismiss(self): try: self.notifier.dismiss_message() return True except Exception as error: ui_logger.error(error) def total_tag_interviewers(self, number_of_tag_ints): try: self.wait.loading() self.wait.web_element_wait_text(By.CSS_SELECTOR, self.__e_job_tag_total_int_css, 'total_tag_interviewers') if str(number_of_tag_ints) in self.wait.text_value: print(f'Total tagged Interviewers - {number_of_tag_ints}') return True except Exception as error: ui_logger.error(error)
class LiveIntSchedulePage: __e_live_stage_xpath = Locators.LIVE_INTERVIEW['stage_selection'] __e_live_app_xpath = Locators.PLACEHOLDER['text_ph'].format( 'Candidate Name') __e_live_search_app_xpath = Locators.LIVE_INTERVIEW['app_search'] __e_live_clear_search_app_xpath = Locators.LIVE_INTERVIEW['clear_search'] __e_check_xpath = Locators.CHECKBOX['type'] __e_validate_class = Locators.LIVE_INTERVIEW['int_screen'] __e_select_int_xpath = Locators.LIVE_INTERVIEW['select_int'] __e_live_schedule_select_xpath = Locators.BUTTONS['button'].format( 'Schedule Selected') __e_live_schedule_xpath = Locators.BUTTONS['button'].format(' Schedule') __e_arrow_down_class = Locators.LIVE_INTERVIEW['arrow_down'] __e_feedback_action_xpath = Locators.LIVE_INTERVIEW['feedback_button'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.notifier = Notifier(self.driver) self.switch_window = SwitchWindowClose(self.driver) def stage_selection(self, stage_name): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_live_stage_xpath, stage_name, 'job_int_panel') print(f'{stage_name} - Selected from available stages') self.wait.loading() return True except Exception as error: ui_logger.error(error) def applicant_name_filed(self, applicant_name): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_live_app_xpath, applicant_name, 'applicant_name_filed') print(f'Applicant name {applicant_name} - Entered') self.wait.loading() return True except Exception as error: ui_logger.error(error) def schedule_applicant_search(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_live_search_app_xpath, 'schedule_applicant_search') print('schedule applicant - searched') self.wait.loading() return True except Exception as error: ui_logger.error(error) def clear_applicant_search(self): try: time.sleep(0.7) self.wait.web_element_wait_click( By.XPATH, self.__e_live_clear_search_app_xpath, 'clear_applicant_search') print('clear applicant - searched') self.wait.loading() return True except Exception as error: ui_logger.error(error) def select_live_applicant(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_check_xpath, 'Applicant_check_box') print('Applicant got - selected') return True except Exception as error: ui_logger.error(error) def schedule_select(self): try: time.sleep(2) self.wait.web_element_wait_click( By.XPATH, self.__e_live_schedule_select_xpath, 'schedule_select') self.wait.loading() print('schedule_select button - selected') return True except Exception as error: ui_logger.error(error) def validate_interviewers_screen(self, screen_name): try: time.sleep(0.5) self.wait.web_element_wait_text(By.CLASS_NAME, self.__e_validate_class, 'validate_interviewers_screen') if screen_name in self.wait.text_value.strip(): print(f'Screen name {screen_name} - validating') return True except Exception as error: ui_logger.error(error) def select_interviewers(self): try: time.sleep(1) self.wait.web_elements_wait_click(By.XPATH, self.__e_select_int_xpath, '') print('select_interviewers - selected') return True except Exception as error: ui_logger.error(error) def live_schedule(self): try: time.sleep(0.5) self.wait.web_element_wait_click(By.XPATH, self.__e_live_schedule_xpath, 'live_schedule') self.wait.loading() print('Live schedule - selected') return True except Exception as error: ui_logger.error(error) def live_schedule_notifier(self, message): try: time.sleep(0.7) self.notifier.glowing_messages(message) return True except Exception as error: ui_logger.error(error) def live_schedule_notifier_dismiss(self): try: self.notifier.dismiss_message() time.sleep(0.9) self.wait.loading() return True except Exception as error: ui_logger.error(error) def arrow_down_for_feedback(self): try: time.sleep(0.5) self.wait.web_element_wait_click(By.CLASS_NAME, self.__e_arrow_down_class, 'arrow_down_for_feedback') self.wait.loading() print('Arrow down for feedback- Clicked') return True except Exception as error: ui_logger.error(error) def feedback_provide_action(self): try: time.sleep(1) self.wait.web_element_wait_click(By.XPATH, self.__e_feedback_action_xpath, 'feedback_provide_action') print('Provide feedback Action - Clicked') return True except Exception as error: ui_logger.error(error)
class EventUploadCandidate: __e_upload_xpath = Locators.ATTACHMENT['file'] __e_next_button_xpath = Locators.BUTTONS['button'].format('Next') __e_declare_xpath = Locators.CHECKBOX['type'] __e_signature_xpath = Locators.CANDIDATE['upload_signature'] __e_agree_xpath = Locators.BUTTONS['button'].format('I Agree') __e_edit_info_xpath = Locators.TITLE['title'].format('Edit') __e_name_xpath = Locators.CANDIDATE['name_field'] __e_email_xpath = Locators.CANDIDATE['email_field'] __e_usn_xpath = Locators.CANDIDATE['usn_field'] __e_save_button_xpath = Locators.CANDIDATE['save_info'] __e_save_candidate_xpath = Locators.CANDIDATE['save'] __e_upload_count_css = Locators.CANDIDATE['Upload_count'] __e_close_button_xpath = Locators.BUTTONS['button'].format('Close') __e_close_main_xpath = Locators.BUTTONS['close'] __e_confirm_close_main_xpath = Locators.BUTTONS['all_buttons'].format('OK') def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.notifier = Notifier(self.driver) self.scroll = PageScroll(self.driver) def upload_file(self, upload_file): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_upload_xpath, upload_file, 'upload_file') print('Candidate excel sheet - Uploading') self.wait.uploading() return True except Exception as error: ui_logger.error(error) def next_button(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_next_button_xpath, 'upload_file') print('Candidate scree next button - Clicked') self.wait.loading() return True except Exception as error: ui_logger.error(error) def declare_check(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_declare_xpath, 'declare_check') print('Declare Check - Clicked') return True except Exception as error: ui_logger.error(error) def signature_entry(self): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_signature_xpath, 'VinodKumar', 'signature_entry') print('Signature Entry - Signed') return True except Exception as error: ui_logger.error(error) def agreed_button(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_agree_xpath, 'agreed_button') print('Agreed Button - Clicked') return True except Exception as error: ui_logger.error(error) def edit_excel_information(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_edit_info_xpath, 'edit_excel_information') print('Edit Information button - Clicked') return True except Exception as error: ui_logger.error(error) def name_edit(self, candidate_name): try: self.wait.clear(By.XPATH, self.__e_name_xpath, 'Name_field_clear') self.wait.web_element_wait_send_keys(By.XPATH, self.__e_name_xpath, candidate_name, 'name_edit') print('Name information - Changed') return True except Exception as error: ui_logger.error(error) def email_edit(self, candidate_email): try: self.wait.clear(By.XPATH, self.__e_email_xpath, 'Name_field_clear') self.wait.web_element_wait_send_keys(By.XPATH, self.__e_email_xpath, candidate_email, 'email_edit') print('Email information - Changed') return True except Exception as error: ui_logger.error(error) def usn_edit(self, usn_email): try: self.wait.clear(By.XPATH, self.__e_usn_xpath, 'Name_field_clear') self.wait.web_element_wait_send_keys(By.XPATH, self.__e_usn_xpath, usn_email, 'email_edit') print('Usn information - Changed') return True except Exception as error: ui_logger.error(error) def save_info(self): try: self.scroll.down(0, -50) self.wait.web_element_wait_click(By.XPATH, self.__e_save_button_xpath, 'save_info') print('Save information - Saved') return True except Exception as error: ui_logger.error(error) def save_candidate(self): try: time.sleep(1) self.wait.web_element_wait_click(By.XPATH, self.__e_save_candidate_xpath, 'save_candidate') print('Save Candidate - Saved') return True except Exception as error: ui_logger.error(error) def success_upload(self, message): try: time.sleep(3) self.wait.web_element_wait_text(By.CSS_SELECTOR, self.__e_upload_count_css, 'success_upload') if self.wait.text_value.strip() == message: print(f'Success {self.wait.text_value.strip()} - Count') return True except Exception as error: ui_logger.error(error) def close_candidate_screen(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_close_button_xpath, 'close_candidate_screen') print('Close Candidate Screen - Closed') return True except Exception as error: ui_logger.error(error) def close_main_screen(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_close_main_xpath, 'close_main_screen') print('Close Main Screen - Closed') return True except Exception as error: ui_logger.error(error) def confirm_close_main_screen(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_confirm_close_main_xpath, 'confirm_close_main_screen') print('Confirm Close Main Screen - Closed') self.wait.loading() return True except Exception as error: ui_logger.error(error)
class LoginPage: __e_candidate_id_xpath = Locators.PLACEHOLDER['text_ph'].format( 'Enter Candidate Id') __e_enter_button_xpath = Locators.BUTTONS['button'].format( 'Enter the room') __e_candidate_name_xpath = Locators.CANDIDATE_LOBBY_LOGIN['candidate_name'] __e_almost_message_css = Locators.CANDIDATE_LOBBY_LOGIN['almost-message'] __e_queued_message_xpath = Locators.CANDIDATE_LOBBY_LOGIN['queued-message'] __e_finish_message_xpath = Locators.CANDIDATE_LOBBY_LOGIN[ 'finished-message'] __e_your_message_xpath = Locators.CANDIDATE_LOBBY_LOGIN['your-message'] def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.new_tab = NewTab(self.driver) def open_link(self, link_to_login): try: self.new_tab.open_new_tab(1, link_to_login) return True except Exception as error: ui_logger.error(error) def login_screen(self, candidate_id): try: self.wait.loading() time.sleep(2) self.wait.web_element_wait_send_keys(By.XPATH, self.__e_candidate_id_xpath, candidate_id, 'candidate_login_screen') return True except Exception as error: ui_logger.error(error) def enter_to_room(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_enter_button_xpath, 'enter_to_room_button') self.wait.loading() return True except Exception as error: ui_logger.error(error) def candidate_name_validate(self, candidate_name): try: time.sleep(1) self.wait.web_element_wait_text( By.XPATH, self.__e_candidate_name_xpath.format(candidate_name), 'candidate_name_validation_lobby') if self.wait.text_value in self.wait.text_value: print(f'Lobby Candidate name - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def almost_message(self, message): try: self.wait.web_element_wait_text(By.CSS_SELECTOR, self.__e_almost_message_css, 'almost_message') if self.wait.text_value == message: print(f'Candidate Lobby - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def queued_message(self, message): try: self.wait.web_element_wait_text(By.XPATH, self.__e_queued_message_xpath, 'queued_message') if self.wait.text_value == message: print(f'Candidate Lobby - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def it_is_your_message(self, message): try: self.wait.web_element_wait_text(By.XPATH, self.__e_your_message_xpath, 'it_is_your_message') if self.wait.text_value == message: print(f'Candidate Lobby - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error) def finish_interview_message(self, message): try: self.wait.web_element_wait_text(By.XPATH, self.__e_finish_message_xpath, 'finish_interview_message') if self.wait.text_value == message: print(f'Candidate Lobby - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error)
class LobbyPage: __e_create_button_xpath = Locators.BUTTONS['button'].format('Create Room') __e_room_name_xpath = Locators.PLACEHOLDER['text_ph'].format('Room Name') __e_interviewers_xpath = Locators.TITLE['title'].format( 'Select Interviewers') __e_participants_xpath = Locators.TITLE['title'].format( 'Select Participants') __e_search_xpath = Locators.TITLE['title'].format('Type here to search') __e_select_all_xpath = Locators.MULTI_SELECTIONS['moveAllItemsRight'] __e_done_button = Locators.BUTTONS['all_buttons'].format('Done') __e_created_room_xpath = Locators.BUTTONS['actionClicked'].format( "'", 'createRoom', "'") __e_active_room_xpath = Locators.EVENT_LOBBY['active'] __e_ok_button_xpath = Locators.BUTTONS['all_buttons'].format('OK') __e_un_assign_xpath = Locators.EVENT_LOBBY['un_assign'] __e_assign_room_xpath = Locators.EVENT_LOBBY['assign_room'] __e_room_name_field_xpath = Locators.PLACEHOLDER['text_ph'].format( 'Room Name') __e_room_search_filed_xpath = Locators.TITLE['title'].format('Select Room') __e_search_button_xpath = Locators.BUTTONS['button'].format('Search') __e_room_search_class = Locators.EVENT_LOBBY['room_search'] __e_assigning_room_xpath = Locators.BUTTONS['actionClicked'].format( "'", 'assignCandidateToRoom', "'") __e_candidate_info_xpath = Locators.TITLE['title'].format( 'View Candidate Info') def __init__(self, driver): self.driver = driver self.wait = WebElementWait(self.driver) self.scroll = PageScroll(self.driver) self.message = Notifier(self.driver) self.sub_tab = EventSubTabs(self.driver) def create_room_button(self): try: self.scroll.up(0, 100) self.wait.web_element_wait_click(By.XPATH, self.__e_create_button_xpath, 'room_create_button') self.wait.loading() return True except Exception as error: ui_logger.error(error) def room_name(self, room_name): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_room_name_xpath, room_name, 'room_name_field') return True except Exception as error: ui_logger.error(error) def select_interviewers(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_interviewers_xpath, 'Interviewers_field') return True except Exception as error: ui_logger.error(error) def select_participants(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_participants_xpath, 'Participants_field') return True except Exception as error: ui_logger.error(error) def search(self, key): try: self.wait.web_element_wait_send_keys(By.XPATH, self.__e_search_xpath, key, 'Search_field') return True except Exception as error: ui_logger.error(error) def move_all(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_select_all_xpath, 'Move_all_items') return True except Exception as error: ui_logger.error(error) def done(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_done_button, 'Done_button') return True except Exception as error: ui_logger.error(error) def created_button(self, message): try: time.sleep(1) self.wait.web_element_wait_click(By.XPATH, self.__e_created_room_xpath, 'room_created_button') self.wait.loading() self.message.glowing_messages(message) self.message.dismiss_message() return True except Exception as error: ui_logger.error(error) def active_room(self): try: time.sleep(0.5) self.wait.web_element_wait_click(By.XPATH, self.__e_active_room_xpath, 'room_created_button') return True except Exception as error: ui_logger.error(error) def ok_button(self, message): try: self.wait.web_element_wait_click(By.XPATH, self.__e_ok_button_xpath, 'room_created_button') time.sleep(0.5) self.message.glowing_messages(message) self.message.dismiss_message() return True except Exception as error: ui_logger.error(error) def un_assign_room(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_un_assign_xpath, 'Un_assign_from_room') return True except Exception as error: ui_logger.error(error) def ok_buttons(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_ok_button_xpath, 'un_assign_ok_buttons') time.sleep(1) return True except Exception as error: ui_logger.error(error) def assign_room_action(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_assign_room_xpath, 'assign_room_action') self.wait.loading() return True except Exception as error: ui_logger.error(error) def room_name_field(self, room_name): try: self.wait.web_element_wait_send_keys( By.XPATH, self.__e_room_name_field_xpath, room_name, 'room_name_field') self.wait.drop_down_selection() return True except Exception as error: ui_logger.error(error) def room_assigning_action(self): try: time.sleep(1) self.wait.web_element_wait_click(By.XPATH, self.__e_assigning_room_xpath, 'room_assign') self.wait.loading() return True except Exception as error: ui_logger.error(error) def room_search_filed(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_room_search_filed_xpath, 'room_search_filed') return True except Exception as error: ui_logger.error(error) def search_button(self): try: self.wait.web_element_wait_click(By.XPATH, self.__e_search_button_xpath, 'search_button') return True except Exception as error: ui_logger.error(error) def no_candidate_message(self, message): try: time.sleep(1) self.wait.web_element_wait_text(By.CLASS_NAME, self.__e_room_search_class, 'tag_room_search_candidate') if self.wait.text_value.strip() == message: print( f'No candidate tagged to room message - {self.wait.text_value}' ) self.driver.refresh() self.wait.loading() return True except Exception as error: ui_logger.error(error) def candidate_info(self, candidate_name): try: self.wait.web_element_wait_text(By.XPATH, self.__e_candidate_info_xpath, 'candidate_info') if self.wait.text_value == candidate_name: print(f'Candidate name - {self.wait.text_value}') return True except Exception as error: ui_logger.error(error)