Esempio n. 1
0
class DuplicityCheck:

    __e_click_radio_css = Locators.BUTTONS['radio']

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

    def do_not_allow_duplicates(self, button_name):
        try:
            self.wait.web_elements_wait_click(By.CSS_SELECTOR, self.__e_click_radio_css, button_name)
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

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

    def req_duplicity_notifier_dismiss(self):
        try:
            self.notifier.dismiss_message()
            return True
        except Exception as error:
            ui_logger.error(error)
Esempio n. 2
0
class EventConfiguration:

    __e_click_radio_css = Locators.BUTTONS['radio']
    __e_user_id_xpath = Locators.TITLE['title'].format('Current Status')
    __e_search_user_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_save_button_xpath = Locators.BUTTONS['button'].format('save')

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

    def on_off_buttons(self, button_name):
        try:
            time.sleep(1)
            self.wait.web_elements_wait_multiple_click(By.CSS_SELECTOR, self.__e_click_radio_css, button_name)
            return True
        except Exception as error:
            ui_logger.error(error)

    def user_id_chat(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_user_id_xpath, 'chat_user_filed_click')
            return True
        except Exception as error:
            ui_logger.error(error)

    def search_user_chat(self, user_name):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH, self.__e_search_user_xpath, user_name, 'search_chat_user')
            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 enable_disable_button(self, button_name):
        try:
            self.wait.web_elements_wait_click(By.CSS_SELECTOR, self.__e_click_radio_css, button_name)
            return True
        except Exception as error:
            ui_logger.error(error)

    def save_buttons(self, button_name, message):
        try:
            self.wait.web_elements_wait_multiple_click(By.XPATH, self.__e_save_button_xpath, button_name)
            self.notifier.glowing_messages(message)
            self.notifier.dismiss_message()
            return True
        except Exception as error:
            ui_logger.error(error)
Esempio n. 3
0
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)
Esempio n. 4
0
class Login:
    """
    ----------------- WEB ELEMENT REFERENCE CLASS PRIVATE VARIABLES TO EASY ACCESS ------>>>>
    """
    __e_tenant_name = Locators.LOGIN['alias']
    __e_next_button_css = Locators.LOGIN['next']
    __e_login_name_l = Locators.LOGIN['login_name']
    __e_password_xpath = Locators.LOGIN['password']
    __e_login_button_css = Locators.LOGIN['login']
    __e_anchor_tag = Locators.TAG['anchor']
    __e_logout_id = Locators.LOGIN['logout']
    __e_click_xpath = Locators.LOGIN['click_to_login']

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

    def tenant(self, tenant_name):
        self.wait.web_element_wait_send_keys(By.NAME, self.__e_tenant_name,
                                             tenant_name, 'login_tenant_field')

    def next_button(self):
        self.wait.web_element_wait_click(By.CSS_SELECTOR,
                                         self.__e_next_button_css,
                                         'login_next_button')

    def login_name(self, login_name):
        try:
            time.sleep(1.5)
            self.wait.web_element_wait_send_keys(By.NAME,
                                                 self.__e_login_name_l,
                                                 login_name,
                                                 'login_name_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def password(self, password):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_password_xpath,
                                                 password,
                                                 'login_password_field')
            return True
        except Exception as error:
            ui_logger.error(error)

    def login_button(self):
        try:
            self.wait.web_element_wait_click(By.CLASS_NAME,
                                             self.__e_login_button_css,
                                             'login_button')
            return True
        except Exception as error:
            ui_logger.error(error)

    def login_account_name_verification(self, user_name):
        try:
            self.wait.loading()
            assert self.wait.web_elements_wait_text(By.TAG_NAME, self.__e_anchor_tag, user_name) == user_name, \
                'Logged in different account please check the details'
            return True
        except Exception as error:
            ui_logger.error(error)

    def login_account_click(self, user_name):
        try:
            self.wait.web_elements_wait_click(By.TAG_NAME, self.__e_anchor_tag,
                                              user_name)
            print(f'Current account name is - {user_name}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def login_out(self):
        try:
            time.sleep(0.5)
            self.scroll.up(0, 60)
            time.sleep(0.5)
            self.wait.web_element_wait_click(By.ID, self.__e_logout_id,
                                             'Logout from account')
            print('Logging Out - from application')
            return True
        except Exception as error:
            ui_logger.error(error)

    def click_here_to_login(self):
        try:
            time.sleep(2)
            self.wait.web_element_wait_click(By.XPATH, self.__e_click_xpath,
                                             'Logout from account')
            print('Re-login - Clicked for login screen')
            return True
        except Exception as error:
            ui_logger.error(error)
class InterviewFeedback:

    __e_provide_select_drop_css = Locators.FEEDBACK['new_form_drop_down']
    __e_provide_comment_xpath = Locators.PLACEHOLDER['all_place_holder'].format('Enter text here')
    __e_provide_overall_xpath = Locators.FEEDBACK['overall']
    __e_decision_button_xpath = Locators.BUTTONS['all_buttons']
    __e_feedback_submit_xpath = Locators.BUTTONS['button'].format('Submit Feedback')
    __e_agree_xpath = Locators.BUTTONS['button'].format('Agree and Submit')
    __e_save_draft_xpath = Locators.BUTTONS['button'].format('Save as Draft')

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

    def feedback_select_drop_down(self, value):
        try:
            time.sleep(5)
            self.wait.loading()
            self.wait.web_elements_wait_send_keys(By.XPATH, self.__e_provide_select_drop_css, value)
            print(f'Selected Rating - {value}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def feedback_comments(self, comment):
        try:
            time.sleep(0.5)
            self.wait.web_elements_wait_send_keys(By.XPATH, self.__e_provide_comment_xpath, comment)
            print(f'Given Comment - {comment}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def feedback_decision(self, decision):
        try:
            self.wait.web_elements_wait_click(By.XPATH, self.__e_decision_button_xpath.format(decision), decision)
            print(f'Selected Decision - {decision}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def overall_comment(self, comment):
        try:
            self.wait.web_element_wait_send_keys(By.XPATH,
                                                 self.__e_provide_overall_xpath, comment, 'overall_comment')
            print(f'Given Overall Comment - {comment}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def save_draft_new_feedback(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_save_draft_xpath, 'submit_feedback_button')
            print('Save Draft - Submitted')
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

    def submit_feedback(self):
        try:
            self.wait.web_element_wait_click(By.XPATH, self.__e_feedback_submit_xpath, 'submit_feedback_button')
            print('Feedback - Submitted')
            return True
        except Exception as error:
            ui_logger.error(error)

    def agree_and_submit(self):
        try:
            time.sleep(0.7)
            self.wait.web_element_wait_click(By.XPATH, self.__e_agree_xpath, 'feedback_form_validation')
            print('Agree and submit - Submitted')
            time.sleep(1)
            return True
        except Exception as error:
            ui_logger.error(error)

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

    def save_draft_notifier_dismiss(self):
        try:
            self.notifier.dismiss_message()
            return True
        except Exception as error:
            ui_logger.error(error)
Esempio n. 6
0
class InterviewFeedback:

    __e_provide_select_drop_css = Locators.FEEDBACK['select_drop_down']
    __e_provide_comment_xpath = Locators.FEEDBACK['comments']
    __e_provide_overall_xpath = Locators.FEEDBACK['overall']
    __e_decision_button_xpath = Locators.FEEDBACK['decision_button']
    __e_feedback_submit_xpath = Locators.FEEDBACK['submit']
    __e_update_submit_xpath = Locators.FEEDBACK['update']
    __e_agree_xpath = Locators.BUTTONS['button'].format('Agree and Submit')
    __e_select_int_xpath = Locators.FEEDBACK['select_int']
    __e_save_draft_xpath = Locators.FEEDBACK['save_draft']
    __e_partial_submission_xpath = Locators.FEEDBACK['partial']

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

    def feedback_decision(self, decision):
        try:
            time.sleep(5)
            self.wait.loading()
            self.wait.web_elements_wait_click(By.XPATH,
                                              self.__e_decision_button_xpath,
                                              decision)
            print(f'Selected Decision - {decision}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def feedback_select_drop_down(self, value):
        try:
            time.sleep(0.5)
            self.wait.web_elements_wait_send_keys(
                By.XPATH, self.__e_provide_select_drop_css, value)
            print(f'Selected Rating - {value}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def feedback_comments(self, comment):
        try:
            time.sleep(0.5)
            self.wait.web_elements_wait_send_keys(
                By.XPATH, self.__e_provide_comment_xpath, comment)
            print(f'Given Comment - {comment}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def behalf_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 overall_comment(self, comment):
        try:
            self.wait.web_element_wait_send_keys(
                By.XPATH, self.__e_provide_overall_xpath, comment,
                'overall_comment')
            print(f'Given Overall Comment - {comment}')
            return True
        except Exception as error:
            ui_logger.error(error)

    def partial_submission(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_partial_submission_xpath,
                                             'partial_submission')
            print('Partial - Submitted')
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

    def submit_feedback(self):
        try:
            self.wait.loading()
            self.scroll.down(0, -80)
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_feedback_submit_xpath,
                                             'submit_feedback_button')
            print('Feedback - Submitted')
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

    def update_feedback(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_update_submit_xpath,
                                             'update_feedback')
            print('Update - Submitted')
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

    def save_draft_old_feedback(self):
        try:
            self.wait.web_element_wait_click(By.XPATH,
                                             self.__e_save_draft_xpath,
                                             'submit_feedback_button')
            print('Save Draft - Submitted')
            self.wait.loading()
            return True
        except Exception as error:
            ui_logger.error(error)

    def agree_and_submit(self):
        try:
            time.sleep(1)
            self.wait.web_element_wait_click(By.XPATH, self.__e_agree_xpath,
                                             'feedback_form_validation')
            print('Agree and submit - Submitted')
            time.sleep(1.7)
            return True
        except Exception as error:
            ui_logger.error(error)

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

    def save_draft_notifier_dismiss(self):
        try:
            self.notifier.dismiss_message()
            return True
        except Exception as error:
            ui_logger.error(error)