class MultiSelectValues:

    __e_search_xpath = Locators.TITLE['title'].format('Type here to search')
    __e_select_search_item_xpath = Locators.MULTI_SELECTIONS['moveAllItemsRight']
    __e_done_button_xpath = Locators.BUTTONS['done']

    def __init__(self, driver):
        self.driver = driver
        self.wait = WebElementWait(self.driver)

    def search(self, search_value):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH, self.__e_search_xpath, search_value, 'Multi_value_search')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_clear(self):
        try:
            self.wait.clear(By.XPATH, self.__e_search_xpath, 'search_clear')
            return True
        except Exception as error:
            ui_logger.error(error)

    def move_all_items(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_select_search_item_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_xpath, 'Done_button')
            return True
        except Exception as error:
            ui_logger.error(error)
Example #2
0
class JobCreationPage:
    """
    ----------------- WEB ELEMENT REFERENCE CLASS PRIVATE VARIABLES TO EASY ACCESS ------>>>>
    """
    __e_create = Locators.BUTTONS['create']
    __e_job_names = Locators.JOB['job_name']
    __e_anchor_tag = Locators.TAG['anchor']
    __e_file_path = Locators.ATTACHMENT['file']
    __e_description = Locators.JOB['description']
    __e_location = Locators.PLACEHOLDER['text_ph'].format('Location')
    __e_hm = Locators.PLACEHOLDER['text_ph'].format('Hiring Manager')
    __e_bu = Locators.PLACEHOLDER['text_ph'].format('Business Unit')
    __e_openings = Locators.JOB['openings']
    __e_male = Locators.PLACEHOLDER['num_ph'].format('Male')
    __e_female = Locators.PLACEHOLDER['num_ph'].format('Female')
    __e_job_create = Locators.BUTTONS['button'].format('Create')

    def __init__(self, driver):
        self.driver = driver
        self.wait = WebElementWait(self.driver)
        self.notifier = Notifier(self.driver)

    def create_button(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_create, 'Job Create Button')
            print('***--------->>> Clicked on job created button')
            self.wait.loading()
            return True

        except Exception as error:
            ui_logger.error(error)

    def job_name(self, name):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH, self.__e_job_names, name, 'Job_name_field')
            return True

        except Exception as error:
            ui_logger.error(error)

    def job_attachment(self, file_path):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH, self.__e_file_path, file_path, 'Job_attachment')
            time.sleep(0.5)
            self.wait.uploading()
            return True

        except Exception as error:
            ui_logger.error(error)

    def job_attachment_notifier(self, message):
        try:
            self.notifier.glowing_messages(message)
            self.notifier.dismiss_message()
            return True

        except Exception as error:
            ui_logger.error(error)

    def job_description(self, description):
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_description, description, 'Job_description')
        self.wait.drop_down_selection()
        return True

    def job_location(self, location):
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_location, location, 'Job_location_field')
        self.wait.drop_down_selection()
        return True

    def job_hiring_manager(self, hm):
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_hm, hm, 'job_hm_field')
        self.wait.drop_down_selection()
        return True

    def job_business_unit(self, bu):
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_bu, bu, 'Job_bu_field')
        self.wait.drop_down_selection()
        return True

    def job_openings(self, openings):
        self.wait.clear(By.NAME, self.__e_openings, 'Job_openings_field')
        self.wait.web_element_wait_send_keys(By.NAME, self.__e_openings, openings, 'Job_openings_field')
        return True

    def job_male_diversity(self, male_diversity):
        self.wait.clear(By.XPATH, self.__e_male, 'Job_male_field')
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_male, male_diversity, 'Job_male_field')
        return True

    def job_female_diversity(self, female_diversity):
        self.wait.clear(By.XPATH, self.__e_female, 'Job_female_field')
        self.wait.web_element_wait_send_keys(By.XPATH, self.__e_female, female_diversity, 'Job_female_field')
        return True

    def job_create(self):
        self.wait.web_element_wait_click(By.XPATH, self.__e_job_create, 'Job_create_button')
        self.wait.loading()
        return True

    def job_create_notifier(self, message):
        try:
            self.notifier.glowing_messages(message)
            return True
        except Exception as error:
            ui_logger.error(error)

    def job_create_notifier_dismiss(self):
        try:
            self.notifier.dismiss_message()
            self.wait.loading()
            time.sleep(0.2)
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)
Example #3
0
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 EventMangeInterviewersPage:
    __e_add_criteria_xpath = Locators.BUTTONS['add_criteria']
    __e_panel_entry_xpath = Locators.NOMINATIONS['panel_1']
    __e_panel2_entry_xpath = Locators.NOMINATIONS['panel_2']
    __e_skill1_search_xpath = Locators.BUTTONS['nomination_int_search']
    __e_skill2_search_xpath = Locators.NOMINATIONS['search']
    __e_skill1_required_int_xpath = Locators.NOMINATIONS['skill1_int']
    __e_skill2_required_int_xpath = Locators.NOMINATIONS['skill2_int']
    __e_skill1_required_nom_xpath = Locators.NOMINATIONS['skill1_nom']
    __e_skill2_required_nom_xpath = Locators.NOMINATIONS['skill2_nom']
    __e_send_mail_xpath = Locators.BUTTONS['nomination_mail']
    __e_confirm_button_xpath = Locators.BUTTONS['all_buttons'].format('OK')

    def __init__(self, driver):
        self.driver = driver
        self.wait = WebElementWait(self.driver)
        self.scroll = PageScroll(self.driver)
        self.notifier = Notifier(self.driver)

    def add_criteria(self):
        try:
            time.sleep(1.5)
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_add_criteria_xpath,
                                             'add_criteria')
            print('Add new criteria - Clicked')
            return True
        except Exception as error:
            ui_logger.error(error)

    def panel_skill1_select(self, panel):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_panel_entry_xpath,
                                                 panel, 'panel_skill1_select')
            self.wait.drop_down_selection()
            print('Skill-1 to panel - Selected')
            return True
        except Exception as error:
            ui_logger.error(error)

    def panel_skill2_select(self, panel):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_panel2_entry_xpath,
                                                 panel, 'panel_skill2_select')
            self.wait.drop_down_selection()
            print('Skill-2 to panel - Selected')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_skill1_interviewers(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_skill1_search_xpath,
                                             'search_skill1_interviewers')
            print('Skill-1 interviewers - Searched')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_skill2_interviewers(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_skill2_search_xpath,
                                             'search_skill2_interviewers')
            print('Skill-2 interviewers - Searched')
            return True
        except Exception as error:
            ui_logger.error(error)

    def skill1_required_interviewers(self, count):
        try:
            self.wait.clear(By.XPATH, self.__e_skill1_required_int_xpath,
                            'skill1_required_int')
            self.wait.web_element_wait_send_keys(
                By.XPATH, self.__e_skill1_required_int_xpath, count,
                'search_skill2_interviewers')
            print('Skill-1 interviewers count - Entered')
            return True
        except Exception as error:
            ui_logger.error(error)

    def skill2_required_interviewers(self, count):
        try:
            self.wait.clear(By.XPATH, self.__e_skill2_required_int_xpath,
                            'skill2_required_int')
            self.wait.web_element_wait_send_keys(
                By.XPATH, self.__e_skill2_required_int_xpath, count,
                'search_skill2_interviewers')
            print('Skill-2 interviewers count - Entered')
            return True
        except Exception as error:
            ui_logger.error(error)

    def skill1_required_nomination(self, count):
        try:
            self.wait.clear(By.XPATH, self.__e_skill1_required_nom_xpath,
                            'skill1_required_nomination')
            self.wait.web_element_wait_send_keys(
                By.XPATH, self.__e_skill1_required_nom_xpath, count,
                'search_skill2_interviewers')
            print('Skill-1 nominations count - Entered')
            return True
        except Exception as error:
            ui_logger.error(error)

    def skill2_required_nomination(self, count):
        try:
            self.wait.clear(By.XPATH, self.__e_skill2_required_nom_xpath,
                            'skill2_required_nomination')
            self.wait.web_element_wait_send_keys(
                By.XPATH, self.__e_skill2_required_nom_xpath, count,
                'search_skill2_interviewers')
            print('Skill-2 nominations count - Entered')
            return True
        except Exception as error:
            ui_logger.error(error)

    def send_mail_interviewers(self):
        try:
            time.sleep(1)
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_send_mail_xpath,
                                             'send_mail_interviewers')
            print('Send mail to interviewers - Sent')
            return True
        except Exception as error:
            ui_logger.error(error)

    def confirm_button(self):
        try:
            time.sleep(1)
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_confirm_button_xpath,
                                             'send_mail_interviewers')
            print('Ok confirmation - Confirmed')
            return True
        except Exception as error:
            ui_logger.error(error)

    def criteria_notifier(self, message):
        try:
            self.wait.loading()
            self.notifier.glowing_messages(message)
            return True
        except Exception as error:
            ui_logger.error(error)

    def criteria_notifier_dismiss(self):
        try:
            self.notifier.dismiss_message()
            self.wait.loading()
            self.scroll.up(0, 70)
            return True
        except Exception as error:
            ui_logger.error(error)
Example #5
0
class CandidateQueryReplyPage:
    __e_search_xpath = Locators.PLACEHOLDER['place_holder'].format('Find')
    __e_subject_xpath = Locators.TITLE['title']
    __e_reply_message_xpath = Locators.PLACEHOLDER['all_place_holder'].format(
        'Your message here...')
    __e_mark_close_xpath = Locators.BUTTONS['button'].format('Mark as Closed')
    __e_ok_xpath = Locators.BUTTONS['button'].format('OK')
    __e_reply_button_xpath = Locators.TITLE['title'].format('Reply')
    __e_status_bucket_xpath = Locators.QUERY['status_bucket']

    def __init__(self, driver):
        self.driver = driver
        self.wait = WebElementWait(self.driver)
        self.notifier = Notifier(self.driver)

    def search_candidate_query(self, candidate_name):
        try:
            self.wait.embrace_loading()
            self.wait.clear(By.XPATH, self.__e_search_xpath, 'more_queries')
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_search_xpath,
                                                 candidate_name,
                                                 'more_queries')
            print('Searching for proper record')
            return True
        except Exception as error:
            ui_logger.error(error)

    def select_proper_query_based_on_subject(self, subject):
        try:
            time.sleep(1)
            self.wait.web_element_wait_click(
                By.XPATH, self.__e_subject_xpath.format(subject),
                'select_proper_query_based_on_subject')
            self.wait.embrace_loading()
            print('Proper block based on proper subject - Selected')
            return True
        except Exception as error:
            ui_logger.error(error)

    def reply_message_entry(self, message):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_reply_message_xpath,
                                                 message,
                                                 'reply_message_entry')
            print('reply_message_entry - Entered')
            return True
        except Exception as error:
            ui_logger.error(error)

    def reply_to_query(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_reply_button_xpath,
                                             'reply_to_query')
            print('reply_to_query - Clicked')
            time.sleep(0.5)
            return True
        except Exception as error:
            ui_logger.error(error)

    def in_progress_tab(self):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_status_bucket_xpath,
                                                 'In Progress',
                                                 'in_progress_tab')
            self.wait.embrace_loading()
            print('in_progress_tab - Selected')
            return True
        except Exception as error:
            ui_logger.error(error)

    def mark_as_closed(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_mark_close_xpath,
                                             'mark_as_closed')
            print('mark_as_closed - Clicked')
            return True
        except Exception as error:
            ui_logger.error(error)

    def confirm_button(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_ok_xpath,
                                             'confirm_button')
            print('confirm_button - Clicked')
            return True
        except Exception as error:
            ui_logger.error(error)
class EventSlot:

    __e_current_status_xpath = Locators.TITLE['title'].format('Current Status')
    __e_search_status_xpath = Locators.TITLE['title'].format(
        'Type here to search')
    __e_select_search_item_xpath = Locators.MULTI_SELECTIONS[
        'moveAllItemsRight']
    __e_done_button_xpath = Locators.BUTTONS['done']
    __e_slot_number_xpath = Locators.PLACEHOLDER['num_ph'].format(
        'No. Of Slots')
    __e_go_button_xpath = Locators.BUTTONS['button'].format('Go')
    __e_date_field_xpath = Locators.PLACEHOLDER['place_holder'].format(
        'From Date')
    __e_time_field_xpath = Locators.PLACEHOLDER['place_holder'].format(
        'From Time')
    __e_count_field_xpath = Locators.PLACEHOLDER['num_ph'].format('Count')
    __e_assign_button_xpath = Locators.EVENT_LOBBY['assign_slot']
    __e_ok_button_xpath = Locators.BUTTONS['all_buttons'].format('OK')
    __e_cancel_button_xpath = Locators.BUTTONS['all_buttons'].format('CANCEL')
    __e_candidate_id_xpath = Locators.PLACEHOLDER['place_holder'].format(
        'Candidate Id(s) (Eg: 1234, 2312,...)')
    __e_search_button_xpath = Locators.BUTTONS['button'].format(' Search')
    __e_login_link_xpath = Locators.TITLE['title'].format(
        'View Interview Lobby Link')
    __e_header_tag = Locators.TAG['h4']
    __e_anchor_tag = Locators.TAG['anchor']
    __e_href_tag = Locators.TAG['href']

    def __init__(self, driver):
        self.driver = driver
        self.wait = WebElementWait(self.driver)
        self.page_scroll = PageScroll.PageScroll(self.driver)

        self.candidate_login_link = ''

    def current_applicant_status_choose(self):
        try:
            self.wait.loading()
            self.wait.web_element_wait_click(
                By.XPATH, self.__e_current_status_xpath,
                'Slot_applicant_current_status_click')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_status_select(self, stage_status):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_search_status_xpath,
                                                 stage_status,
                                                 'Entered_status')
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_select_search_item_xpath,
                                             'Move_all_items')
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_done_button_xpath,
                                             'Done_button')
            return True
        except Exception as error:
            ui_logger.error(error)

    def slot_number(self, number_of_slots):
        try:
            time.sleep(1)
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_slot_number_xpath,
                                                 number_of_slots,
                                                 'Entered_status')
            return True
        except Exception as error:
            ui_logger.error(error)

    def go_button(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_go_button_xpath,
                                             'Go_button')
            return True
        except Exception as error:
            ui_logger.error(error)

    def date_field(self, date):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_date_field_xpath,
                                                 date, 'date_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def time_field(self, clock):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_time_field_xpath,
                                                 clock, 'time_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def count_field(self, count):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_count_field_xpath,
                                                 count, 'count_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def clear_time_field(self):
        try:
            self.wait.clear(By.XPATH, self.__e_time_field_xpath,
                            'clear_time_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def assign_slot_button(self):
        try:
            self.wait.loading()
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_assign_button_xpath,
                                             'assign_slot_button')
            return True
        except Exception as error:
            ui_logger.error(error)

    def ok_button(self):
        try:
            self.wait.loading()
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_ok_button_xpath,
                                             'ok_button')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_id(self, candidate_id):
        try:
            self.wait.loading()
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_candidate_id_xpath,
                                                 candidate_id,
                                                 'candidate_id_field')
            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 login_link_action(self):
        try:
            time.sleep(1)
            self.page_scroll.down(0, -100)
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_login_link_xpath,
                                             'Copy_login_link_action')
            return True
        except Exception as error:
            ui_logger.error(error)

    def copy_candidate_login_link(self, candidate_id):
        try:
            time.sleep(2)
            self.wait.web_element_wait_click(By.TAG_NAME, self.__e_header_tag,
                                             'Link_Block')
            time.sleep(1.5)
            self.wait.web_elements_wait(By.TAG_NAME, self.__e_anchor_tag)
            lists = self.wait.perform
            for i in lists:
                if i.get_attribute(self.__e_href_tag) is not None:
                    if candidate_id in i.get_attribute(self.__e_href_tag):
                        self.candidate_login_link = i.get_attribute(
                            self.__e_href_tag)
                        print(
                            f'candidate login link - {self.candidate_login_link}'
                        )
            return True
        except Exception as error:
            ui_logger.error(error)

    def cancel_button(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_cancel_button_xpath,
                                             'link_cancel_button')
            return True
        except Exception as error:
            ui_logger.error(error)