def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Cancel_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version, test_cases=self.TestCases)

        excel_headers_1 = ['Event (Applicants)', 'Status', 'Applicant (Status change)', 'Status', 'Interview_1 (Login)',
                           'Status', 'Interview_1 (Cancel Request Raise)', 'Status', 'Admin (login)', 'Status',
                           'Admin (Accept Request)', 'Status', 'Event (search)', 'Status']
        color_headers_1 = ['Status', 'Event (Applicants)', 'Applicant (Status change)', 'Interview_1 (Login)',
                           'Interview_1 (Cancel Request Raise)', 'Admin (login)', 'Admin (Accept Request)',
                           'Event (search)']
        self.xlw.excel_header_by_index(row=1, col=0, excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = ['Applicant (Status change2)', 'Status', 'Interview_2 (Login)', 'Status',
                           'Interview_2 (Cancel Interview)', 'Status']
        color_headers_2 = ['Status', 'Applicant (Status change2)', 'Interview_2 (Login)',
                           'Interview_2 (Cancel Interview)']
        self.xlw.excel_header_by_index(row=17, col=0, excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['Cancel_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Cancel_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name), self.__html_path)
예제 #2
0
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Help_desk_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Requirement (Configuration)', 'Status', 'Default Configuration',
            'Status', 'Job Configuration', 'Status', 'Event Configuration',
            'Status', 'Save configuration', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Requirement (Configuration)', 'Default Configuration',
            'Job Configuration', 'Event Configuration', 'Save configuration'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Candidate (login)', 'Status', 'Query (Admit card)', 'Status',
            'Query (Accommodation)', 'Status', 'Query (Application Filling)',
            'Status'
        ]
        color_headers_2 = [
            'Candidate (login)', 'Query (Admit card)', 'Query (Accommodation)',
            'Query (Application Filling)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=19,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'User_1 Login', 'Status', 'Query Reply', 'Status', 'User_2 Login',
            'Status', 'Query Reply', 'Status', 'User_3 Login', 'Status',
            'Query Reply', 'Status'
        ]
        color_headers_3 = [
            'User_1 Login', 'Query Reply', 'User_2 Login', 'Query Reply',
            'User_3 Login', 'Query Reply', 'Status'
        ]
        self.xlw.excel_header_by_index(row=28,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Help_desk_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Help_desk_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Manage_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event(Search)', 'Status', 'Panel_1(criteria)', 'Status',
            'Panel_2(criteria)', 'Status', 'Send Mail (Nominations)', 'Status'
        ]
        color_headers_1 = [
            'Event(Search)', 'Panel_1(criteria)', 'Panel_2(criteria)',
            'Send Mail (Nominations)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Login(Interviewer1)', 'Status', 'Nomination(Accept)', 'Status',
            'Login(Interviewer2)', 'Status', 'Nomination(Accept)', 'Status'
        ]
        color_headers_2 = [
            'Login(Interviewer1)', 'Nomination(Accept)', 'Login(Interviewer2)',
            'Nomination(Accept)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=10,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'Login(Event Manager)', 'Status', 'Event(Search)', 'Status',
            'Recruiter(Approval)', 'Status', 'Sync(Tag Interviewers)', 'Status'
        ]
        color_headers_3 = [
            'Login(Event Manager)', 'Event(Search)', 'Recruiter(Approval)',
            'Sync(Tag Interviewers)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=18,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['Manage_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Manage_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
예제 #4
0
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Quick_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event (Applicants)', 'Status', 'Quick Interview (screen)',
            'Status', 'Quick Interview (schedule)', 'Status',
            'Interview_1 (Login)', 'Status', 'Event (search)', 'Status',
            'Interview_1 (Feedback)', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Event (Applicants)', 'Quick Interview (screen)',
            'Quick Interview (schedule)', 'Interview_1 (Feedback)',
            'Event (search)', 'Interview_1 (Login)'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interview_2 (Login)', 'Status', 'Event (search)', 'Status',
            'Interview_2 (Partial Submit)', 'Status', 'Interview_2 (Feedback)',
            'Status'
        ]
        color_headers_2 = [
            'Status', 'Interview_2 (Login)', 'Event (search)',
            'Interview_2 (Partial Submit)', 'Interview_2 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=14,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Quick_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH[
            'Quick_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
예제 #5
0
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Live_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event Search', 'Status', 'Live Schedule (for behalf)', 'Status',
            'Behalf of Feedback (admin)', 'Status', 'Live Schedule', 'Status',
            'Interviewer-1 Login', 'Status', 'Applicant (stage feedback)',
            'Status', 'Interviewer-1 (Feedback)', 'Status'
        ]
        color_headers_1 = [
            'Event Search', 'Status', 'Live Schedule (for behalf)',
            'Behalf of Feedback (admin)', 'Live Schedule',
            'Interviewer-1 Login', 'Applicant (stage feedback)',
            'Interviewer-1 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interviewer-2 Login', 'Status', 'Applicant (stage feedback)',
            'Status', 'Interviewer-2 (Save Draft)', 'Status',
            'Interviewer-2 (Feedback)', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Interviewer-2 Login', 'Applicant (stage feedback)',
            'Interviewer-2 (Save Draft)', 'Interviewer-2 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=14,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Live_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Live_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
예제 #6
0
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Mass_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event (Applicant Search)', 'Status', 'Applicant (Change Status)',
            'Status', 'Configurations (Slot/Allocation)', 'Status',
            'Slot Assignment', 'Status', 'Candidate Link (Coping)', 'Status',
            'Room Creation', 'Status', 'Candidate Login', 'Status',
            'Assign Room', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Event (Applicant Search)', 'Applicant (Change Status)',
            'Configurations (Slot/Allocation)', 'Slot Assignment',
            'Candidate Link (Coping)', 'Room Creation', 'Candidate Login',
            'Assign Room'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interviewer-1 Login', 'Status', 'Select Candidate', 'Status',
            'Provide Feedback', 'Status', 'Invite Candidate', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Interviewer-1 Login', 'Select Candidate',
            'Provide Feedback', 'Invite Candidate'
        ]
        self.xlw.excel_header_by_index(row=16,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Mass_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Mass_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
class CancelInterviewOutputReport:

    """ Number of Test cases / use cases name """
    TestCases = 119
    use_case_name = 'CANCEL INTERVIEW FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Cancel_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version, test_cases=self.TestCases)

        excel_headers_1 = ['Event (Applicants)', 'Status', 'Applicant (Status change)', 'Status', 'Interview_1 (Login)',
                           'Status', 'Interview_1 (Cancel Request Raise)', 'Status', 'Admin (login)', 'Status',
                           'Admin (Accept Request)', 'Status', 'Event (search)', 'Status']
        color_headers_1 = ['Status', 'Event (Applicants)', 'Applicant (Status change)', 'Interview_1 (Login)',
                           'Interview_1 (Cancel Request Raise)', 'Admin (login)', 'Admin (Accept Request)',
                           'Event (search)']
        self.xlw.excel_header_by_index(row=1, col=0, excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = ['Applicant (Status change2)', 'Status', 'Interview_2 (Login)', 'Status',
                           'Interview_2 (Cancel Interview)', 'Status']
        color_headers_2 = ['Status', 'Applicant (Status change2)', 'Interview_2 (Login)',
                           'Interview_2 (Cancel Interview)']
        self.xlw.excel_header_by_index(row=17, col=0, excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['Cancel_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Cancel_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name), self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(self.server, self.version, self.start_date_time,
                                                                  self.use_case_name, self.xlw.result,
                                                                  self.xlw.total_cases, self.xlw.pass_cases,
                                                                  self.xlw.failure_cases, self.xlw.percentage,
                                                                  self.xlw.minutes, self.time, self.xlw.date_now,
                                                                  self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time, version=self.version, server=self.server,
                        path=self.__path, excel_save_name=self.use_case_name)

    def event_app_report(self, event_coll):
        testdata_headers = ['Event Tab', 'Advance Search Action', 'Advance Name Field', 'Search Button',
                            'Event Card Click', 'Event validate', 'Event Actions', 'View Applicant Action',
                            'Applicant Advance Search', 'Applicant Name Enter', 'Search Button']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=event_coll,
                                     row=2, i_column=0, o_column=1, path=self.__path)

    def change_status_report(self, status_coll):
        testdata_headers = ['Select Applicant', 'Change Applicant Status', 'Select Stage', 'Select Status',
                            'Select Interviewers', 'Move all Interviewers', 'Done', 'Comment', 'Change Button',
                            'Change Status Notifier', 'Change Status Notifier Dismiss', 'Applicant Get name',
                            'Candidate Status Validate', 'Window Close', 'Switch to Old Window']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=status_coll,
                                     row=2, i_column=2, o_column=3, path=self.__path)

    def interviewer1_login_report(self, int1_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Event Tab', 'Advance Search Action',
                            'Advance Name Field', 'Search Button', 'Event Card Click', 'Event validate']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_coll,
                                     row=2, i_column=4, o_column=5, path=self.__path)

    def interviewer1_request_report(self, int1_coll):
        testdata_headers = ['Event Actions', 'Event Interviews Action', 'Advance Search', 'Applicant Name search',
                            'Search Button', 'Select Applicant', 'Cancellation Request Action', 'Request Reason',
                            'Request Comment', 'Request Confirm', 'Notifier', 'Notifier Dismiss']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_coll,
                                     row=2, i_column=6, o_column=7, path=self.__path)

    def admin_login_report(self, admin_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Event Tab', 'Advance Search Action',
                            'Advance Name Field', 'Search Button', 'Event Card Click', 'Event validate']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=admin_coll,
                                     row=2, i_column=8, o_column=9, path=self.__path)

    def admin_acceptance_report(self, admin_coll):
        testdata_headers = ['Tracking Tab', 'Cancel request Tab', 'Accept Button', 'Comment', 'Confirm acceptance',
                            'Go Ahead button', 'Accept Button', 'Comment', 'Confirm acceptance', 'Notifier',
                            'Notifier Dismiss']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=admin_coll,
                                     row=2, i_column=10, o_column=11, path=self.__path)

    def event_action_report(self, action_coll):
        testdata_headers = ['Event Actions', 'View Applicant Action', 'Applicant Advance Search',
                            'Applicant Name Enter', 'Search Button']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=action_coll,
                                     row=2, i_column=12, o_column=13, path=self.__path)

    def change_status_report2(self, status_coll):
        testdata_headers = ['Select Applicant', 'Change Applicant Status', 'Select Stage', 'Select Status',
                            'Select Interviewers', 'Move all Interviewers', 'Done', 'Comment', 'Change Button',
                            'Change Status Notifier', 'Change Status Notifier Dismiss', 'Applicant Get name',
                            'Candidate Status Validate', 'Window Close', 'Switch to Old Window']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=status_coll,
                                     row=18, i_column=0, o_column=1, path=self.__path)

    def interviewer2_login_report(self, int2_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Event Tab', 'Advance Search Action',
                            'Advance Name Field', 'Search Button', 'Event Card Click', 'Event validate']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int2_coll,
                                     row=18, i_column=2, o_column=3, path=self.__path)

    def interviewer2_cancel_report(self, int1_coll):
        testdata_headers = ['Event Actions', 'Event Interviews Action', 'Advance Search', 'Applicant Name search',
                            'Search Button', 'Select Applicant', 'Cancellation Interview Action',
                            'Request Comment', 'Request Confirm', 'Notifier', 'Notifier Dismiss']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_coll,
                                     row=18, i_column=4, o_column=5, path=self.__path)
예제 #8
0
class E2EOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 269
    use_case_name = 'E2E REGRESSION FLOW'

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['E2E_output']
        self.xlw = excelWrite.ExcelReportWrite(version=self.version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Create Job', 'Status', 'Job (SP / EC)', 'Status', 'Job (Task)',
            'Status', 'Job Interviewers', 'Status', 'Job (Old Form)', 'Status',
            'Settings - NewForm (ON/OFF)', 'Status', 'Job (New Form)',
            'Status', 'Job Automations', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Create Job', 'Job (SP / EC)', 'Job (Task)',
            'Job (Old Form)', 'Job (New Form)', 'Settings - NewForm (ON/OFF)',
            'Job Interviewers', 'Job Automations'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Create Requirement', 'Status', 'Clone Assessment', 'Status',
            'Create Event', 'Status', 'Configuration (Task)', 'Status',
            'Configuration (Tag Test / Owners)', 'Status',
            'Event Upload Candidates', 'Status', 'Applicant (hopping status)',
            'Status', 'Applicant Status Change', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Create Requirement', 'Clone Assessment', 'Create Event',
            'Configuration (Task)', 'Configuration (Tag Test / Owners)',
            'Event Upload Candidates', 'Applicant (hopping status)',
            'Applicant Status Change'
        ]
        self.xlw.excel_header_by_index(row=20,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'Candidate (Manage Task)', 'Status',
            'Embrace (Behalf Of Submission)', 'Status',
            'Candidate (After Submission status)', 'Status'
        ]
        color_headers_3 = [
            'Status', 'Candidate (Manage Task)',
            'Embrace (Behalf Of Submission)',
            'Candidate (After Submission status)'
        ]
        self.xlw.excel_header_by_index(row=39,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['E2E_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['E2E_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def job_creation_report(self, job_creation_coll):
        testdata_headers = [
            'Job Tab', 'Job Create Button', 'Job Name', 'Job Attachment',
            'Job Notifier', 'Description', 'Location Field',
            'Hiring Manager Field', 'Business Unit Field', 'Opening Field',
            'Male Diversity Field', 'Female Diversity Field',
            'Job created Button', 'Job created Notifier',
            'Job created Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_creation_coll,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def job_getby_report(self, job_getby_coll):
        testdata_headers = ['Tab Validation', 'Job Name Validation']
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_getby_coll,
                                     row=17,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def job_sp_report(self, job_sp_coll):
        testdata_headers = [
            'Job Actions', 'Tag Selection Process Action',
            'Select Selection Process', 'Save', 'Tagged Notifier',
            'Page Refresh'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_sp_coll,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def job_ec_report(self, job_ec_coll):
        testdata_headers = [
            'Configuration Tab', 'Ec Configure', 'Enter EC',
            'Enter Positive stage', 'Enter Positive status',
            'Enter Negative stage', 'Enter Negative status', 'Save EC',
            'EC Notifier validate', 'EC Notifier Dismissed'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_ec_coll,
                                     row=8,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def job_task_report(self, job_ec_coll):
        testdata_headers = [
            'Task Configure', 'Task New Row', 'Assign Stage_Status',
            'Positive Stage_Status', 'Negative Stage_Status',
            'Activity Field Enter', 'Task Field', 'Search Task',
            'Move all Items', 'Done', 'Task Save', 'Task Notifier Validate',
            'Task Notifier Dismissed'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_ec_coll,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def job_tag_int_report(self, job_int_coll):
        testdata_headers = [
            'Job Actions', 'Tag Interviewers Action',
            'Interviewer Panel selection', 'Interviewer Panel Add',
            'Interviewer Panel Save', 'Notifier Validate', 'Notifier Dismiss',
            'Owner Tab', 'Validate owners count'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_int_coll,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def job_automations_report(self, job_new_feed_coll):
        testdata_headers = [
            'Automations Tab', 'Registration stage for Hop', 'Hop - Eligible',
            'Hop - Pending', 'Eligibility stage for Hop', 'Hop - Aptitude',
            'Hop - Pending', 'Offer stage for Hop', 'Hop - Interview',
            'Hop - Ready for self schedule', 'All toggle - ON',
            'Automations - Save', 'Save - Notifier', 'Notifier - Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_new_feed_coll,
                                     row=2,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def job_feed_report1(self, job_feed_coll):
        testdata_headers = [
            'Job Actions', 'Configure Feedback Action', 'Select Stage - Form1',
            'Search stage - Form1', 'Search - Form1', 'Use Form1',
            'Overall Mandatory - Form1', 'Reject Overall Mandatory - Form1',
            'Save - Form1', 'Clear stage - Form1'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_feed_coll,
                                     row=2,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def job_feed_report2(self, job_feed_coll):
        testdata_headers = [
            'Select Stage - Form2', 'Search stage - Form2', 'Search - Form2',
            'Use Form2', 'Overall Mandatory - Form2',
            'Reject Overall Mandatory - Form2', 'Save - Form2'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_feed_coll,
                                     row=12,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def job_new_form_on_report(self, job_new_form_on_coll):
        testdata_headers = [
            'Account Name', 'Settings', 'Interview Module',
            'New Form Settings', 'New Form - On', 'Notifier Validate',
            'Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_new_form_on_coll,
                                     row=2,
                                     i_column=12,
                                     o_column=13,
                                     path=self.__path)

    def job_new_form_off_report(self, job_new_form_off_coll):
        testdata_headers = [
            'Account Name', 'Settings', 'Interview Module',
            'New Form Settings', 'New Form - Off', 'Notifier Validate',
            'Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_new_form_off_coll,
                                     row=9,
                                     i_column=12,
                                     o_column=13,
                                     path=self.__path)

    def job_new_feed_report(self, job_new_feed_coll):
        testdata_headers = [
            'Job Tab', 'Advance Search', 'Job Name Enter', 'Search By Name',
            'Job Name Click', 'Job Name Validation', 'Job Actions',
            'Configure Feedback Action', 'Select Stage - NewForm',
            'Search stage - NewForm', 'Search - NewForm', 'Use NewForm',
            'Overall Mandatory - NewForm',
            'Reject Overall Mandatory - NewForm', 'Edit - NewForm',
            'Update - NewForm', 'Update - Notifier', 'Notifier - Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=job_new_feed_coll,
                                     row=2,
                                     i_column=14,
                                     o_column=15,
                                     path=self.__path)

    def req_creation_report(self, req_creation_coll):
        testdata_headers = [
            'Requirement Tab', 'Requirement Create Button', 'Requirement Name',
            'Requirement Job Name', 'Job Search', 'Move All Items', 'Done',
            'Hiring Track', 'College Type', 'Requirement created Button',
            'Requirement created Notifier', 'Requirement Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=req_creation_coll,
                                     row=21,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def req_configuration_report(self, req_creation_coll):
        testdata_headers = [
            'Configurations Tab', 'Duplicity Check tab',
            'Duplicity - Do not Allow', 'Duplicity Notifier',
            'Duplicity Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=req_creation_coll,
                                     row=33,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def test_clone_report(self, test_clone_coll):
        testdata_headers = [
            'Assessment Tab', 'Advance search', 'Old Test name Enter',
            'Search Button', 'Name Click', 'Assessment Name validation',
            'Assessment Actions', 'Clone Assessment Action', 'New Test NAME',
            'From Date', 'To Date', 'Clone Button Click',
            'Clone Assessment Notifier', 'Clone Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=test_clone_coll,
                                     row=21,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def event_create_report(self, create_event_coll):
        testdata_headers = [
            'Event Tab', 'New Event Create', 'New Event Name',
            'Requirement Name', 'Job Name Click', 'Job Name search',
            'Event job selected', 'Selection Done', 'Event Slot',
            'Event From Date', 'Event To Date', 'Event Reporting Date',
            'Event manager selected', 'Event College Selected',
            'Event EC enabled', 'Event Created', 'Event create Notifier',
            'Event create  Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=create_event_coll,
                                     row=21,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def event_task_config_report(self, config_coll):
        testdata_headers = [
            'Event Name Validation', 'Configurations Tab', 'Task Configure',
            'Task New Row', 'Task Job Name', 'Assign Stage_Status',
            'Positive Stage_Status', 'Negative Stage_Status',
            'Activity Field Enter', 'Task Field', 'Move all Items', 'Done',
            'Task Save', 'Task Notifier Validate', 'Task Notifier Dismissed'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=config_coll,
                                     row=21,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def event_test_config_report(self, config_coll):
        testdata_headers = [
            'Test Configure', 'Test Job Name', 'Test Stage', 'Test Assessment',
            'Test Active', 'Save Test Config', 'Test Config Notifier',
            'Test Config  Notifier Dismiss', 'Cancel Test Config'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=config_coll,
                                     row=21,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def event_owners_config_report(self, owners_coll):
        testdata_headers = [
            'Event Actions', 'Manage Event Owners Action', 'Move all Owners',
            'Owners Update', 'Owners Notifier', 'Owners Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=owners_coll,
                                     row=30,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def event_upload_candidate_report(self, upload_candidate_coll):
        testdata_headers = [
            'Event Actions', 'Upload Candidate Action',
            'Upload Candidate File', 'Next Button', 'Declare Check',
            'Signature Entry', 'Agree Button', 'Edit information', 'Name Edit',
            'Email Edit', 'USN Edit', 'Save Information', 'Save Candidate',
            'Upload Count Validate', 'Close Upload screen',
            'Close Main Screen', 'Confirm - OK'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=upload_candidate_coll,
                                     row=21,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def event_applicant_hop_status_report(self, applicant_hop_coll):
        testdata_headers = [
            'Event Tab', 'Advance Search', 'Event Name Enter', 'Search Button',
            'Event GetBy Name', 'Event Name Validation', 'Event Actions',
            'View Candidates', 'Advance Search', 'Applicant Name Enter',
            'Search Button', 'Applicant Name Click', 'Candidate Hop status',
            'Close Window', 'Switch To Old window'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=applicant_hop_coll,
                                     row=21,
                                     i_column=12,
                                     o_column=13,
                                     path=self.__path)

    def event_applicant_status_report(self, applicant_status_coll):
        testdata_headers = [
            'Applicant select', 'Applicant Change Status',
            'Applicant stage Entry', 'Applicant status Entry', 'Comment',
            'Change Button', 'Change Notifier', 'Change Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=applicant_status_coll,
                                     row=21,
                                     i_column=14,
                                     o_column=15,
                                     path=self.__path)

    def event_applicant_manage_report(self, applicant_status_coll):
        testdata_headers = [
            'Applicant Name click', 'Status Validate',
            'Candidate Floating Actions', 'Manage Task Action',
            'Candidate Name Validate', 'Submitted - 0', 'Pending - 1',
            'Rejected - 0', 'Approved - 0', 'Total - 1',
            'Switch Back Old Window'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=applicant_status_coll,
                                     row=40,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def event_embrace_report(self, embrace_coll):
        testdata_headers = [
            'More Tab', 'Embrace Tab', 'Switch To New Window',
            'Candidate Module', 'Advance Search', 'Candidate Behalf of action',
            'Candidate acceptance - Yes', 'Submit Task', 'Task Notifier',
            'Task Notifier Dismiss', 'Close Window', 'Switch To Old Window'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=embrace_coll,
                                     row=40,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def event_applicant_manage_task_report(self, applicant_status_coll):
        testdata_headers = [
            'Applicant Name click', 'Status Validate',
            'Candidate Floating Actions', 'Manage Task Action',
            'Candidate Name Validate', 'Submitted - 1', 'Pending - 12',
            'Rejected - 0', 'Approved - 1', 'Total - 13',
            'Switch Back Old Window'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=applicant_status_coll,
                                     row=40,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)
예제 #9
0
    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['E2E_output']
        self.xlw = excelWrite.ExcelReportWrite(version=self.version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Create Job', 'Status', 'Job (SP / EC)', 'Status', 'Job (Task)',
            'Status', 'Job Interviewers', 'Status', 'Job (Old Form)', 'Status',
            'Settings - NewForm (ON/OFF)', 'Status', 'Job (New Form)',
            'Status', 'Job Automations', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Create Job', 'Job (SP / EC)', 'Job (Task)',
            'Job (Old Form)', 'Job (New Form)', 'Settings - NewForm (ON/OFF)',
            'Job Interviewers', 'Job Automations'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Create Requirement', 'Status', 'Clone Assessment', 'Status',
            'Create Event', 'Status', 'Configuration (Task)', 'Status',
            'Configuration (Tag Test / Owners)', 'Status',
            'Event Upload Candidates', 'Status', 'Applicant (hopping status)',
            'Status', 'Applicant Status Change', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Create Requirement', 'Clone Assessment', 'Create Event',
            'Configuration (Task)', 'Configuration (Tag Test / Owners)',
            'Event Upload Candidates', 'Applicant (hopping status)',
            'Applicant Status Change'
        ]
        self.xlw.excel_header_by_index(row=20,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'Candidate (Manage Task)', 'Status',
            'Embrace (Behalf Of Submission)', 'Status',
            'Candidate (After Submission status)', 'Status'
        ]
        color_headers_3 = [
            'Status', 'Candidate (Manage Task)',
            'Embrace (Behalf Of Submission)',
            'Candidate (After Submission status)'
        ]
        self.xlw.excel_header_by_index(row=39,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['E2E_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['E2E_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)
class ManageInterviewersOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 75
    use_case_name = 'MANAGE INTERVIEWERS FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Manage_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event(Search)', 'Status', 'Panel_1(criteria)', 'Status',
            'Panel_2(criteria)', 'Status', 'Send Mail (Nominations)', 'Status'
        ]
        color_headers_1 = [
            'Event(Search)', 'Panel_1(criteria)', 'Panel_2(criteria)',
            'Send Mail (Nominations)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Login(Interviewer1)', 'Status', 'Nomination(Accept)', 'Status',
            'Login(Interviewer2)', 'Status', 'Nomination(Accept)', 'Status'
        ]
        color_headers_2 = [
            'Login(Interviewer1)', 'Nomination(Accept)', 'Login(Interviewer2)',
            'Nomination(Accept)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=10,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'Login(Event Manager)', 'Status', 'Event(Search)', 'Status',
            'Recruiter(Approval)', 'Status', 'Sync(Tag Interviewers)', 'Status'
        ]
        color_headers_3 = [
            'Login(Event Manager)', 'Event(Search)', 'Recruiter(Approval)',
            'Sync(Tag Interviewers)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=18,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['Manage_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Manage_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def event_search_report(self, collection):
        testdata_headers = [
            'Event Tab', 'Advance Search', 'Event Name Field', 'Search Button',
            'Event name GetByid', 'Event Name Validation',
            'Event Actions Clicked', 'Manage Interviewers Action'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def skill1_search_report(self, collection):
        testdata_headers = [
            'Add Criteria', 'Panel(Technical Java)', 'Search(Interviewers)',
            'Interviewer(Count)', 'Nominations(Count)'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def skill2_search_report(self, collection):
        testdata_headers = [
            'Panel(Technical Java)', 'Search(Interviewers)',
            'Interviewer(Count)', 'Nominations(Count)'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def send_mail_report(self, collection):
        testdata_headers = [
            'Send Mail Interviewers', 'Confirm(Event Level On)',
            'Confirm(Send mail)', 'Confirm(Event is Today)',
            'Criteria Notifier', 'Notifier Dismiss', 'Nomination Tab',
            'Header validation'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def interviewer1_login_report(self, collection):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=11,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def interviewer1_confirm_report(self, collection):
        testdata_headers = [
            'Nomination Tab', 'Validate Job role', 'Confirm by Interviewers',
            'Ok - Confirmation', 'Validate acceptance'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=11,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def interviewer2_login_report(self, collection):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=11,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def interviewer2_confirm_report(self, collection):
        testdata_headers = [
            'Nomination Tab', 'Validate Job role', 'Confirm by Interviewers',
            'Ok - Confirmation', 'Validate acceptance'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=11,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def recruiter_login_report(self, collection):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=19,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def event_report(self, collection):
        testdata_headers = [
            'Event Tab', 'Advance Search', 'Event Name Field', 'Search Button',
            'Event name GetByid', 'Event Name Validation',
            'Event Actions Clicked', 'Manage Interviewers Action'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=19,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def approval_report(self, collection):
        testdata_headers = [
            'Panel(Technical Java)', 'Select Applicant', 'Actions', 'Approve',
            'Panel(Technical NodeJs)', 'Select Applicant', 'Actions', 'Approve'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=19,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def sync_report(self, collection):
        testdata_headers = [
            'Sync(approved interviewers)', 'Sync Notifier', 'notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=19,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)
예제 #11
0
class QuickOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 96
    use_case_name = 'QUICK INTERVIEW FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Quick_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event (Applicants)', 'Status', 'Quick Interview (screen)',
            'Status', 'Quick Interview (schedule)', 'Status',
            'Interview_1 (Login)', 'Status', 'Event (search)', 'Status',
            'Interview_1 (Feedback)', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Event (Applicants)', 'Quick Interview (screen)',
            'Quick Interview (schedule)', 'Interview_1 (Feedback)',
            'Event (search)', 'Interview_1 (Login)'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interview_2 (Login)', 'Status', 'Event (search)', 'Status',
            'Interview_2 (Partial Submit)', 'Status', 'Interview_2 (Feedback)',
            'Status'
        ]
        color_headers_2 = [
            'Status', 'Interview_2 (Login)', 'Event (search)',
            'Interview_2 (Partial Submit)', 'Interview_2 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=14,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Quick_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH[
            'Quick_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def event_app_report(self, event_coll):
        testdata_headers = [
            'Event Tab', 'Advance Search Action', 'Advance Name Field',
            'Search Button', 'Event Card Click', 'Event validate',
            'Event Actions', 'View Applicant Action',
            'Applicant Advance Search', 'Applicant Name Enter', 'Search Button'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=event_coll,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def quick_report(self, quick_coll):
        testdata_headers = [
            'Select Applicant', 'More Actions', 'Quick Interview Action',
            'Select Interviewers Field', 'Search Interviewer_1',
            'Move Interviewer_1', 'Clear Search', 'Search Interviewer_2',
            'Move Interviewer_2', 'Done selection'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=quick_coll,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def quick_schedule_report(self, quick_schedule_coll):
        testdata_headers = [
            'Interview Stage selection', 'Quick Comment', 'Quick Schedule',
            'Quick Schedule Notifier', 'Quick Schedule Notifier Dismiss',
            'Applicant Name Click', 'Candidate status - Schedule',
            'Window Close', 'Switch to Old screen'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=quick_schedule_coll,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def interviewer1_login_report(self, int1_coll):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate', 'Advance Search Action',
            'Advance Name Field', 'Search Button', 'Event Card Click',
            'Event validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_coll,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def interviewer1_feedback_action_report(self, int1_action_coll):
        testdata_headers = [
            'Event Actions', 'Event Interviews Action', 'Advance Search',
            'Applicant Name search', 'Search Button', 'Select Applicant',
            'Feedback Provide Action', 'Switch to new tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_action_coll,
                                     row=2,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def interviewer1_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = [
            'shortlist - decision', 'Ratings', 'comments', 'overall comment',
            'Submit Feedback', 'Feedback validation Agree', 'Review Feedback',
            'Close Tab', 'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_pf_coll,
                                     row=2,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def interviewer2_login_report(self, int2_coll):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate', 'Advance Search Action',
            'Advance Name Field', 'Search Button', 'Event Card Click',
            'Event validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int2_coll,
                                     row=15,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def interviewer2_feedback_action_report(self, int1_action_coll):
        testdata_headers = [
            'Event Actions', 'Event Interviews Action', 'Advance Search',
            'Applicant Name search', 'Search Button', 'Select Applicant',
            'Feedback Provide Action', 'Switch to new tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_action_coll,
                                     row=15,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def interviewer2_partial_report(self, int1_pf_coll):
        testdata_headers = [
            'shortlist - decision', 'Ratings', 'comments', 'overall comment',
            'Partial Submission', 'Feedback validation Agree', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_pf_coll,
                                     row=15,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def interviewer2_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = [
            'Partial Bucket', 'Select Applicant', 'Feedback Provide Action',
            'Switch to new tab', 'Submit feedback',
            'Feedback validation Agree', 'Review Feedback', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_pf_coll,
                                     row=15,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)
예제 #12
0
class LiveOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 105
    use_case_name = 'LIVE INTERVIEW FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Live_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event Search', 'Status', 'Live Schedule (for behalf)', 'Status',
            'Behalf of Feedback (admin)', 'Status', 'Live Schedule', 'Status',
            'Interviewer-1 Login', 'Status', 'Applicant (stage feedback)',
            'Status', 'Interviewer-1 (Feedback)', 'Status'
        ]
        color_headers_1 = [
            'Event Search', 'Status', 'Live Schedule (for behalf)',
            'Behalf of Feedback (admin)', 'Live Schedule',
            'Interviewer-1 Login', 'Applicant (stage feedback)',
            'Interviewer-1 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interviewer-2 Login', 'Status', 'Applicant (stage feedback)',
            'Status', 'Interviewer-2 (Save Draft)', 'Status',
            'Interviewer-2 (Feedback)', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Interviewer-2 Login', 'Applicant (stage feedback)',
            'Interviewer-2 (Save Draft)', 'Interviewer-2 (Feedback)'
        ]
        self.xlw.excel_header_by_index(row=14,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Live_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Live_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def event_name_report(self, event_coll):
        testdata_headers = [
            'Event Tab', 'Advance Search', 'Event Name Field', 'Search Button',
            'Event name GetByid', 'Event Name Validation',
            'Event Actions Clicked', 'Live Interview Schedule Action'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=event_coll,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def live_schedule_report(self, live_coll):
        testdata_headers = [
            'Stage Selection', 'Applicant Name search', 'Search',
            'Select Applicant', 'Schedule select', 'Validate Screen',
            'Select Interviewers', 'Live Schedule', 'Notifier',
            'Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=live_coll,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def behalf_report(self, live_coll):
        testdata_headers = [
            'Arrow Down', 'Feedback Provide Action', 'Switch to new tab',
            'shortlist - decision', 'Ratings', 'comments',
            'Select All interviewers', 'overall comment', 'Submit Feedback',
            'Feedback validation Agree', 'Review Feedback', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=live_coll,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def live_schedule2_report(self, live_coll):
        testdata_headers = [
            'Stage Selection', 'Applicant Name search', 'Search',
            'Select Applicant', 'Schedule select', 'Validate Screen',
            'Select Interviewers', 'Live Schedule', 'Notifier',
            'Notifier Dismiss'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=live_coll,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def interviewer1_login_report(self, int1_coll):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate', 'Advance Search Action',
            'Advance Name Field', 'Search Button', 'Event Card Click',
            'Event validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_coll,
                                     row=2,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def interviewer1_feedback_action_report(self, int1_action_coll):
        testdata_headers = [
            'Event Actions', 'Live Interview Schedule Action',
            'Stage Selection', 'Applicant Name search', 'Search', 'Arrow Down',
            'Feedback Provide Action', 'Switch to new tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_action_coll,
                                     row=2,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def interviewer1_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = [
            'shortlist - decision', 'Ratings', 'comments', 'overall comment',
            'Submit Feedback', 'Feedback validation Agree', 'Review Feedback',
            'Close Tab', 'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_pf_coll,
                                     row=2,
                                     i_column=12,
                                     o_column=13,
                                     path=self.__path)

    def interviewer2_login_report(self, int2_coll):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate', 'Advance Search Action',
            'Advance Name Field', 'Search Button', 'Event Card Click',
            'Event validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int2_coll,
                                     row=15,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def interviewer2_feedback_action_report(self, int1_action_coll):
        testdata_headers = [
            'Event Actions', 'Live Interview Schedule Action',
            'Stage Selection', 'Applicant Name search', 'Search', 'Arrow Down',
            'Feedback Provide Action', 'Switch to new tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_action_coll,
                                     row=15,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def draft_report(self, collection):
        testdata_headers = [
            'shortlist - decision', 'Ratings', 'comments', 'overall comment',
            'Save Draft', 'Draft Notifier', 'Draft Notifier Dismiss',
            'Close Tab', 'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=15,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def interviewer2_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = [
            'Feedback Provide Action', 'Switch to new tab', 'Submit Feedback',
            'Feedback validation Agree', 'Review Feedback', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int1_pf_coll,
                                     row=15,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)
예제 #13
0
    def html_css(self, environment, sprint, date_time, use_case, result, total, success, fail, fail_color,
                 sprint_names, qa_data, beta_data, prod_data, india_data, qa_time, beta_time, prod_time,
                 india_time, success_percentage, execution_time, download_file):

        self.amazon_s3 = AWS('{}.xls'.format(sprint), download_file)
        self.amazon_s3.file_handler()

        print('**----->> Start the Printing of HTML report')
        self.file.write("""
        <html>
        <head>
        <title>""" + use_case + """</title>
        <link rel="icon" type="image/x-icon" href="https://image.flaticon.com/icons/png/512/858/858799.png"/>
        <!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<script type="text/javascript">
const myChartData = {
    type: 'doughnut',
    data: {
        labels: ["PASS", "FAIL"],
        datasets: [{
            label: "Test",
            data: """ '[' + str(success) + ',' + str(fail) + ']' + """,
            backgroundColor: [
                'green',
                'red'
            ],
            borderColor: [
                'white',
                'white'
            ],
            borderWidth: 1
        }]
    },
    options: {
      
title: {
display: true,
text: "Last run summary "
},
      animation: {
        animateScale: true,
        animateRotate: true
},
      responsive: true,
      maintainAspectRatio: false,
        
      legend: {
        position: 'right',
        labels:{
          boxWidth: 10,
          padding: 12
        }},
}};
var barChartData = {
  labels: ['AMSIN', 'BETA', 'AMS', 'INDIA'],
  datasets: [
    {
      label: """ + '"' + sprint_names[0] + '"' + """,
      backgroundColor: "#9caad6",
      borderColor: "#9caad6",
      borderWidth: 1,
      data: """ '[' + str(qa_data[0]) + ',' + str(beta_data[0]) + ',' + str(prod_data[0]) + ',' +
                        str(india_data[0]) + ']' + """
      
    },
    {
      label: """ + '"' + sprint_names[1] + '"' + """,
      backgroundColor: "#d88589",
      borderColor: "#d88589",
      borderWidth: 1,
      data: """ '[' + str(qa_data[1]) + ',' + str(beta_data[1]) + ',' + str(prod_data[1]) + ',' +
                        str(india_data[1]) + ']' + """
    },
    {
      label: """ + '"' + sprint_names[2] + '"' + """,
      backgroundColor: "#98e1d2",
      borderColor: "#98e1d2",
      borderWidth: 1,
      data: """ '[' + str(qa_data[2]) + ',' + str(beta_data[2]) + ',' + str(prod_data[2]) + ',' +
                        str(india_data[2]) + ']' + """
    },
    {
     label: """ + '"' + sprint_names[3] + '"' + """,
      backgroundColor: "#b9de94",
      borderColor: "#b9de94",
      borderWidth: 1,
      data: """ '[' + str(qa_data[3]) + ',' + str(beta_data[3]) + ',' + str(prod_data[3]) + ',' +
                        str(india_data[3]) + ']' + """
    },
    {
     label: """ + '"' + sprint_names[4] + '"' + """,
      backgroundColor: "pink",
      borderColor: "pink",
      borderWidth: 1,
      data: """ '[' + str(qa_data[4]) + ',' + str(beta_data[4]) + ',' + str(prod_data[4]) + ',' +
                        str(india_data[4]) + ']' + """
    }
  ]
};
var timer_barChartData = {
  labels: ['AMSIN', 'BETA', 'AMS', 'INDIA'],
  datasets: [
    {
      label: """ + '"' + sprint_names[0] + '"' + """,
      backgroundColor: "#9caad6",
      borderColor: "#9caad6",
      borderWidth: 1,
      data: """ '[' + str(qa_time[0]) + ',' + str(beta_time[0]) + ',' + str(prod_time[0]) + ',' +
                        str(india_time[0]) + ']' + """
    },
    {
      label: """ + '"' + sprint_names[1] + '"' + """,
      backgroundColor: "#d88589",
      borderColor: "#d88589",
      borderWidth: 1,
      data: """ '[' + str(qa_time[1]) + ',' + str(beta_time[1]) + ',' + str(prod_time[1]) + ',' +
                        str(india_time[1]) + ']' + """
    },
    {
      label: """ + '"' + sprint_names[2] + '"' + """,
      backgroundColor: "#98e1d2",
      borderColor: "#98e1d2",
      borderWidth: 1,
      data: """ '[' + str(qa_time[2]) + ',' + str(beta_time[2]) + ',' + str(prod_time[2]) + ',' +
                        str(india_time[2]) + ']' + """
    },
    {
     label: """ + '"' + sprint_names[3] + '"' + """,
      backgroundColor: "#b9de94",
      borderColor: "#b9de94",
      borderWidth: 1,
      data: """ '[' + str(qa_time[3]) + ',' + str(beta_time[3]) + ',' + str(prod_time[3]) + ',' +
                        str(india_time[3]) + ']' + """
    },
    {
     label: """ + '"' + sprint_names[4] + '"' + """,
      backgroundColor: "pink",
      borderColor: "pink",
      borderWidth: 1,
      data: """ '[' + str(qa_time[4]) + ',' + str(beta_time[4]) + ',' + str(prod_time[4]) + ',' +
                        str(india_time[4]) + ']' + """
    }
  ]
};
var chartOptions = {
  responsive: true,
  legend: {
    position: "bottom"
  },
  egend: {
      position: 'bottom',
      labels: {
         usePointStyle: true
      }
   },
  title: {
    display: true,
    text: "Last 5 Sprints (Use Cases) Report"
  },
  scales: {
    yAxes: [{
    scaleLabel: {
        display: true,
        labelString: 'Use Cases'
      },
      ticks: {
        beginAtZero: true
      }
    }]
  }
}
var chart_time_Options = {
  responsive: true,
  legend: {
    position: "bottom"
  },
  title: {
    display: true,
    text: "Last 5 Sprints (Time Taken) Report"
  },
  scales: {
    yAxes: [{
    scaleLabel: {
        display: true,
        labelString: 'Time (min)'
      },
      ticks: {
        beginAtZero: true
      }
    }]
  }
}
window.onload = function() {
  var ctx = document.getElementById("canvas").getContext("2d");
  var ctx_time = document.getElementById("canvas_time").getContext("2d");
  var myChart123 = document.getElementById("myChart123").getContext("2d");
  window.myBar = new Chart(ctx, {
    type: "bar",
    data: barChartData,
    options: chartOptions
  });
  window.myBar = new Chart(ctx_time, {
    type: "bar",
    data: timer_barChartData,
    options: chart_time_Options
  });
  window.myBar = new Chart(myChart123, {
    type: myChartData.type,
    data: myChartData.data,
    options: myChartData.options
  });
};

</script> 
<style>

    body {
        font-family: Inter, Segoe UI, Roboto, Arial, verdana, geneva, sans-serif;
        background: #f5f2f2;

    }
.tableStyle{
width: 100%;
max-width: 100%;
margin-bottom: 20px;
font-family: Inter,Segoe UI,Roboto,Arial,verdana,geneva,sans-serif;
font-size: 12px;
font-style: normal;
font-weight: 600;
line-height: 16px;
text-align: left;
color: #6b6b6b;
}
.alink {
cursor: pointer;
color: #0265d2;
text-decoration: none;
}
.tbltd{
word-break:break-all;word-wrap:break-word;overflow:hidden;font-family:Inter,Segoe UI,Roboto,Arial,verdana,geneva,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:16px;text-align:left;color:#000
}
.custBtn{
background: #1f8ae7 !important;
border-color: #1f8ae7 !important;
font-weight: 600;
z-index: 9999;
}
.subHeader{
margin-top: 1rem;
font-size:20px;
font-weight:700;
line-height:24px;
text-align:left;
letter-spacing:-.56px;
color: #6b6b6b;
}
.footer{
font-size: 11px;
font-weight: 400;
line-height: 18px;
text-align: left;
color: #a6a6a6;
margin-top: 1rem;
margin-bottom: 3rem;
}
.summHeader {
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: -.12px;
    text-align: left
}
.Pass{
color: green;
font-size: 17px !important;
font-weight: bold !important;
}
.Fail{
    color: red;
    font-size: 17px !important;
    font-weight: bold !important;
}
.summaryPass{
color: green;
font-weight: bold !important;
}
.summaryFail{
color: red;
font-weight: bold !important;
}
.gradient-border {
  --borderWidth: 3px;
  background: #1D1F20;
  position: relative;
  border-radius: var(--borderWidth);
}
.gradient-border:after {
  content: '';
  position: absolute;
  top: calc(-1 * var(--borderWidth));
  left: calc(-1 * var(--borderWidth));
  height: calc(100% + var(--borderWidth) * 2);
  width: calc(100% + var(--borderWidth) * 2);
  background: linear-gradient(
60deg
, #f79533, #f37055, #4ec9ef, #58e70b, #eaf107, #1098ad, #07b39b, #6fba82);
  border-radius: calc(2 * var(--borderWidth));
  z-index: -1;
  animation: animatedgradient 3s ease alternate infinite;
  background-size: 300% 300%;
}

@keyframes animatedgradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
</style>
</head>
<body>
<div class="container" style="position: relative; 
background: #ffff !important;border: 1px solid #76ee68;margin-top: 1rem; margin-bottom: 1rem;">
<div class="row" style="    padding: 20px;">
<a>
<img width="142"
src="https://hirepro.in/wp-content/uploads/2020/08/hirepro-new-logo-dark-slim.png"
style="border:0;display:block;outline:0;text-decoration:none;height:auto">
</a>
    <div class="row" style="margin-top: 3rem">
<div class="col-xs-12 col-sm-12 col-lg-6 subHeader"> Automated Test Reporting
</div>
<div class="col-xs-12 col-sm-12 col-lg-6">
<div class="btn-toolbar" style="float: right;">

<!-- <a href=""  
type="button" id="btnSubmit" title="HTML Web Report" class="btn btn-primary btn-sm custBtn gradient-border"><img  
src="https://image.flaticon.com/icons/png/512/2353/2353373.png" width="25" height="25"/> View Run Results</a> -->


<a href=""" + self.amazon_s3.one_day_link + """ target="_blank" 
type="button" id="btnCancel" title="Download Excel Report" class="btn btn-primary btn-sm custBtn"><img  
src="https://image.flaticon.com/icons/png/512/1053/1053166.png" width="25" height="25"/> Excel Download</a>


<a style="margin-left: 15px;"  title="sprint wise automation reports" 
href="https://drive.google.com/drive/u/1/folders/186nL7DWI_ZoMklgcwIUykC4tSQuECtGH" target="_blank" type="button" 
id="btnCancel" class="btn btn-primary btn-sm custBtn"><img  
src="https://image.flaticon.com/icons/png/512/2965/2965323.png" width="25" height="25"/> Google Drive</a>
				</div>
        	</div>
            </div>
		</div>
      <div class="row row-offcanvas row-offcanvas-right">

        <div class="col-xs-12 col-sm-12">
          <p class="pull-right visible-xs">
            <button type="button" class="btn btn-primary btn-xs" data-toggle="offcanvas">Toggle nav</button>
          </p>
         
          <div class="row">
            <div class="col-xs-12 col-lg-6 ">
             <table class="table table-sm tableStyle" >
			  
			  <tbody>
			    <tr>			     
			      <td>Monitor</td>
			      <td>	
			      	<div class="tbltd">
                        <a class="alink">Vinod Eraganaboina</a>
                    </div>
				  </td>
			    </tr>
			    <tr>
			      
			      <td>Workspace</td>
					<td>	
			      	<div class="tbltd">
                        <a class="alink">UI Automation</a>
                    </div>
				  </td>
			    </tr>
			    <tr>
			      
			      <td>Environment</td>
			      <td>	
	
					<div class="tbltd">
                        <a class="alink">""" + environment + """</a>
                    </div>
					</td>
			      
			    </tr>
			     <tr>
			      
			      <td>Sprint</td>
			      <td>	
					<div class="tbltd">
                        <a class="alink">""" + sprint + """</a>
                    </div>
                	</td>
			      
			    </tr> 
			    <tr style="border-bottom: 1px solid #ddd;"> 		      
			      <td>Run Date&Time</td>
			      <td>	
					<div class="tbltd">
                        <a class="alink">""" + str(date_time) + """</a>
                    </div>
                </td>
			    </tr>
			  </tbody>
			</table>
            </div>
            <div class="col-xs-12 col-lg-6">
              <table class="table table-sm tableStyle" >
			  
			  <tbody>
			    <tr>			     
			      <td>Collection</td>
			      <td>	
			      	<div class="tbltd">
                        <a class="alink">""" + use_case + """</a>
                    </div>
				  </td>
			    </tr>
			    <tr>
			      
			      <td>Execution Time</td>
					<td>	
			      	<div class="tbltd">
                        <a class="alink">""" + str(execution_time) + """ min</a>
                    </div>
				  </td>
			    </tr>
			    <tr>
			      <td>Total Cases</td>
			      <td>	
	
					<div class="tbltd">
                        <a class="alink">""" + str(total) + """</a>
                    </div>
					</td>
			    </tr>
			    <tr>
			      <td>Success %</td>
			      <td>	

					<div class="tbltd">
						<div style="font-size:12px;font-style:normal;line-height:16px;
						text-align:left" class=""" + result + """>""" + str(success_percentage) + """  %</div>
					</td>
			    </tr>
			    <tr style="border-bottom: 1px solid #ddd;"> 
			      <td>Result</td>
			      <td>	
					<div class="tbltd">
                        <div style="font-size:12px;font-style:normal;line-height:16px;
                        text-align:left" class=""" + result + """>""" + result + """</div>
                    </div>
                </td>
			    </tr>
			  </tbody>
			</table>
            </div>
          </div>
        </div>
      </div>
     
       <div class="row row-offcanvas row-offcanvas-right">
       <div style="margin-bottom: 0rem;text-align: left;margin-top: 3rem;margin-left: 2rem;">
         <div class="summHeader" style="color: #6b6b6b;">Historical Summary</div>
     	</div>
	        <div class="col-xs-12 col-sm-12 col-lg-6">
			<div style="padding:32px 48px 0px 40px;">
				<div id="container" style="margin-top:2rem;height: 300px; width: 100%;">
					<canvas id="canvas"></canvas>
					<!-- <div style="font-size:12px;font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
					font-weight: 600;text-align: center;"> <p> Chart legends are clickable to view the specific items </p> </div> -->
				</div>
			</div>
	        </div>
	        <div class="col-xs-12 col-sm-12 col-lg-6">
	        	<div style="padding:32px 48px 0px 40px;">
                <div id="container" style="margin-top:2rem;height: 300px; width: 100%;">
                  <canvas id="canvas_time"></canvas>
                  <!-- <div style="font-size:12px;font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
    font-weight: 600;text-align: center;"> <p> Chart legends are clickable to view the specific items </p> </div> -->
                </div>
            </div>
    	</div>
  </div>
   <div class="row row-offcanvas row-offcanvas-right">
   	<div class="col-xs-12 col-sm-12 col-lg-6">
   		<div style="margin-bottom: 3rem;text-align: left;margin-top: 0rem;">
         <div class="summHeader" style="color: #6b6b6b;"> Last run summary</div>
     	</div>
   		<table class="table table-sm tableStyle" >
			 <tbody>
                <tr>
                    <td class="emptyCell">
                        &nbsp;</td>
                    <td class="summaryHeads"> Passed</td>
                    <td class="summaryHeads">Failed</td>
                    <td class="summaryHeads">Total</td>
                </tr>
                <tr>
                <td class="summaryHeads" style="border-bottom:1px solid #ededed;">Tests</td>
                <td class="summaryRow summaryPass" style="border-bottom:1px solid #ededed;">""" + str(success) + """</td>
                <td style="border-bottom:1px solid #ededed;" class="summaryRow """ + fail_color + """ ">""" + str(fail) + """</td>
                <td style="border-bottom:1px solid #ededed;" class="summaryRow" style="font-weight:bold;color: black;">""" + str(total) + """</td>
                </tr>
            </tbody>
			</table>
   	</div>
   	<div class="col-xs-12 col-sm-12 col-lg-6"> 
   		<div style="padding:32px 48px 0px 40px;">
                <div id="container" style="height: 150px; width: 100%;">
                  <canvas id="myChart123"></canvas>
                  <!-- <div style="font-size:12px;font-family: 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;
    font-weight: 600;text-align: center;"> <p> Chart legends are clickable to view the specific items </p> </div> -->
                </div>
            </div>
   	</div>
   </div>
<div style="padding:2rem 0 15px 0;">
                                <p style="border-top:solid 2px #ededed;font-size:1px;margin:0 auto;width:100%">
                                </p>
                            </div>
<footer class="footer">
      <div class="container">
        <span class="text-muted">© 2021 HirePro . All rights reserved.
<span>Plot No. 53, Kariyammana Agrahara Road,Devarabisana Halli, Bengaluru – 560 103</span>
        </span>
      </div>
    </footer>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.3.0/Chart.bundle.js"></script>
</body>
</html>
        """)
예제 #14
0
class MassOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 154
    use_case_name = 'MASS INTERVIEW FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Mass_Interview_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Event (Applicant Search)', 'Status', 'Applicant (Change Status)',
            'Status', 'Configurations (Slot/Allocation)', 'Status',
            'Slot Assignment', 'Status', 'Candidate Link (Coping)', 'Status',
            'Room Creation', 'Status', 'Candidate Login', 'Status',
            'Assign Room', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Event (Applicant Search)', 'Applicant (Change Status)',
            'Configurations (Slot/Allocation)', 'Slot Assignment',
            'Candidate Link (Coping)', 'Room Creation', 'Candidate Login',
            'Assign Room'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Interviewer-1 Login', 'Status', 'Select Candidate', 'Status',
            'Provide Feedback', 'Status', 'Invite Candidate', 'Status'
        ]
        color_headers_2 = [
            'Status', 'Interviewer-1 Login', 'Select Candidate',
            'Provide Feedback', 'Invite Candidate'
        ]
        self.xlw.excel_header_by_index(row=16,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Mass_Interview_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Mass_Interview_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def event_app_report(self, event_coll):
        testdata_headers = [
            'Event Tab', 'Advance Search Action', 'Advance Name Field',
            'Search Button', 'Event Card Click', 'Event validate',
            'Event Actions', 'View Applicant Action',
            'Applicant Advance Search', 'Applicant Name Enter', 'Search Button'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=event_coll,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def event_applicant_report(self, event_app_coll):
        testdata_headers = [
            'Select Applicant', 'Change Status Action', 'Stage Field',
            'Status Field', 'Comment', 'Change Button',
            'Change Status Notifier', 'Change Status Notifier Dismiss',
            'Applicant Name Click', 'Applicant status Validate',
            'Candidate Id Copied', 'Close window', 'Switch to original window'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=event_app_coll,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def auto_allocation_report(self, auto_allocation_coll):
        testdata_headers = [
            'Event Tab', 'Advance Search Action', 'Advance Name Field',
            'Search Button', 'Event Card Click', 'Event validate',
            'Configurations Tab', 'Allocation - On', 'Chat - Click',
            'Search chat user', 'Enable chat', 'Save Button'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=auto_allocation_coll,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def slot_config_report(self, slot_config_coll):
        testdata_headers = [
            'Event Actions', 'Event Slot Action', 'Click to select stage',
            'Entered Stage-Status', 'Go Button', 'Enter No.of Slots',
            'Go Button', 'Date Field', 'Count Field', 'Clear time Field',
            'Enter time Field', 'Assign slot button', 'Assign slot - Ok',
            'Communicate slot - Ok', 'Search Id', 'Search Button',
            'Link action', 'LoginLink - Copied', 'Cancel Button'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=slot_config_coll,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def link_copy_report(self, link_coll):
        testdata_headers = [
            'Search Id', 'Search Button', 'Link action', 'LoginLink - Copied',
            'Cancel Button'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=link_coll,
                                     row=2,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def create_room_report(self, room_coll):
        testdata_headers = [
            'Event Actions', 'Interview Lobby', 'Create room',
            'Room Name Field', 'Select interviewers', 'Search Interviewers',
            'Move all', 'Done', 'Select Participants', 'Search Participants',
            'Move all', 'Done', 'Created Room Button', 'Activate Room Action',
            'Activated-Ok'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=room_coll,
                                     row=2,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)

    def candidate_login_report(self, candidate_login_coll):
        testdata_headers = [
            'Open Link-1st time', 'Enter Id', 'Enter Button',
            'Name Validation', 'Almost there-Message', 'Close Tab',
            'Switch to tab', 'Manage Candidate Tab', 'Un assign room action',
            'Confirmation-Ok', 'Unassigned-Ok', 'Open Link-2nd time',
            'Enter Id', 'Enter Button', 'Name Validation',
            'wait to be queued-Message', 'Close Tab', 'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=candidate_login_coll,
                                     row=2,
                                     i_column=12,
                                     o_column=13,
                                     path=self.__path)

    def room_tag_report(self, room_tag_coll):
        testdata_headers = [
            'Advance Search', 'Room search Filed', 'Enter room name',
            'Move all', 'Done', 'Search Button', 'No candidate message',
            'Assign room Action', 'Room name filed', 'Assign room button',
            'Confirmed-Ok', 'Advance Search', 'Room search Filed',
            'Enter room name', 'Move all', 'Done', 'Search Button',
            'Applicant name validate'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=room_tag_coll,
                                     row=2,
                                     i_column=14,
                                     o_column=15,
                                     path=self.__path)

    def interviewer_login_report(self, int_coll):
        testdata_headers = [
            'Account Name Click', 'Logout', 'Click Here Login',
            'Login Name Field', 'Password Field', 'Next Button',
            'Account Name Validate', 'Advance Search Action',
            'Advance Name Field', 'Search Button', 'Event Card Click',
            'Event validate', 'Event Actions', 'Interviewer Panel'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int_coll,
                                     row=17,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def select_candidate_report(self, int_coll):
        testdata_headers = [
            'Select Candidate', 'Open Link-1st time', 'Enter Id',
            'Enter Button', 'Name Validation', 'Your turn-Message',
            'Close Tab', 'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int_coll,
                                     row=17,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def feedback_report(self, feed_coll):
        testdata_headers = [
            'Provide Feedback action', 'Switch to tab', 'shortlist - decision',
            'Ratings', 'comments', 'overall comment', 'Submit Feedback',
            'Feedback validation Agree', 'Review Feedback', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=feed_coll,
                                     row=17,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def invite_candidate_report(self, int_coll):
        testdata_headers = [
            'Invite Button', 'Confirmation check', 'Proceed invite',
            'Switch to tab', 'Close Tab', 'Switch to tab', 'Finish Interview',
            'Confirm Finish', 'Open Link-1st time', 'Enter Id', 'Enter Button',
            'Name Validation', 'Interview Finish-Message', 'Close Tab',
            'Switch to tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=int_coll,
                                     row=17,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)
예제 #15
0
class HelpDeskOutputReport:
    """ Number of Test cases / use cases name """
    TestCases = 124
    use_case_name = 'QUERY HELP DESK FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Help_desk_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version,
                                               test_cases=self.TestCases)

        excel_headers_1 = [
            'Requirement (Configuration)', 'Status', 'Default Configuration',
            'Status', 'Job Configuration', 'Status', 'Event Configuration',
            'Status', 'Save configuration', 'Status'
        ]
        color_headers_1 = [
            'Status', 'Requirement (Configuration)', 'Default Configuration',
            'Job Configuration', 'Event Configuration', 'Save configuration'
        ]
        self.xlw.excel_header_by_index(row=1,
                                       col=0,
                                       excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = [
            'Candidate (login)', 'Status', 'Query (Admit card)', 'Status',
            'Query (Accommodation)', 'Status', 'Query (Application Filling)',
            'Status'
        ]
        color_headers_2 = [
            'Candidate (login)', 'Query (Admit card)', 'Query (Accommodation)',
            'Query (Application Filling)', 'Status'
        ]
        self.xlw.excel_header_by_index(row=19,
                                       col=0,
                                       excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        excel_headers_3 = [
            'User_1 Login', 'Status', 'Query Reply', 'Status', 'User_2 Login',
            'Status', 'Query Reply', 'Status', 'User_3 Login', 'Status',
            'Query Reply', 'Status'
        ]
        color_headers_3 = [
            'User_1 Login', 'Query Reply', 'User_2 Login', 'Query Reply',
            'User_3 Login', 'Query Reply', 'Status'
        ]
        self.xlw.excel_header_by_index(row=28,
                                       col=0,
                                       excel_headers_list=excel_headers_3,
                                       color_headers_list=color_headers_3)
        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH[
            'Help_desk_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Help_desk_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(
            self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name),
                             self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(
            self.server, self.version, self.start_date_time,
            self.use_case_name, self.xlw.result, self.xlw.total_cases,
            self.xlw.pass_cases, self.xlw.failure_cases, self.xlw.percentage,
            self.xlw.minutes, self.time, self.xlw.date_now, self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time,
                        version=self.version,
                        server=self.server,
                        path=self.__path,
                        excel_save_name=self.use_case_name)

    def req_config_report(self, collection):
        testdata_headers = [
            'Requirement Tab', 'Advance Search Action', 'Advance Name Field',
            'Search Button', 'Requirement Card Click', 'Requirement validate',
            'Configurations Tab', 'Query Tab'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def default_query_report(self, collection):
        testdata_headers = [
            'Admit card Category', 'Search', 'Select', 'Done', 'User',
            'Search', 'Select', 'Done', 'SLA'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def job_query_report(self, collection):
        testdata_headers = [
            'Accommodation card Category', 'Search', 'Select', 'Done', 'Job',
            'Search', 'Select', 'Done', 'User', 'Search', 'Select', 'Done',
            'SLA'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def event_query_report(self, collection):
        testdata_headers = [
            'Application Filling Category', 'Search', 'Select', 'Done', 'Job',
            'Search', 'Select', 'Done', 'Event', 'Search', 'Done', 'Select',
            'User', 'Search', 'Select', 'Done', 'SLA'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def save_query_report(self, collection):
        testdata_headers = [
            'Save Query Config', 'Validate Notifier', 'Dismiss Notifier'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=2,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def candidate_login_report(self, collection):
        testdata_headers = [
            'Login Url Entered', 'Login Name', 'Password', 'Login',
            'Validate Account name'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=20,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def query_1_report(self, collection):
        testdata_headers = [
            'Help Menu', 'More Queries', 'Category select', 'Subject Entry',
            'Message Entry', 'Query Raise', 'Validate Notifier',
            'Dismiss Notifier'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=20,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def query_2_report(self, collection):
        testdata_headers = [
            'Help Menu', 'More Queries', 'Category select', 'Subject Entry',
            'Message Entry', 'Query Raise', 'Validate Notifier',
            'Dismiss Notifier'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=20,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def query_3_report(self, collection):
        testdata_headers = [
            'Help Menu', 'More Queries', 'Category select', 'Subject Entry',
            'Message Entry', 'Query Raise', 'Validate Notifier',
            'Dismiss Notifier'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=20,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def user_1_login_report(self, collection):
        testdata_headers = [
            'Login Url Entered', 'Login Name', 'Password', 'Login',
            'Validate Account name'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=0,
                                     o_column=1,
                                     path=self.__path)

    def reply_1_query_report(self, collection):
        testdata_headers = [
            'Query Search', 'Click on Query Card', 'Message Entry', 'Reply',
            'In Progress Tab', 'Query Search', 'Click on Query Card',
            'Message Entry', 'Mark as closed', 'Confirm'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=2,
                                     o_column=3,
                                     path=self.__path)

    def user_2_login_report(self, collection):
        testdata_headers = [
            'Login Url Entered', 'Login Name', 'Password', 'Login',
            'Validate Account name'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=4,
                                     o_column=5,
                                     path=self.__path)

    def reply_2_query_report(self, collection):
        testdata_headers = [
            'Query Search', 'Click on Query Card', 'Message Entry', 'Reply',
            'In Progress Tab', 'Query Search', 'Click on Query Card',
            'Message Entry', 'Mark as closed', 'Confirm'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=6,
                                     o_column=7,
                                     path=self.__path)

    def user_3_login_report(self, collection):
        testdata_headers = [
            'Login Url Entered', 'Login Name', 'Password', 'Login',
            'Validate Account name'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=8,
                                     o_column=9,
                                     path=self.__path)

    def reply_3_query_report(self, collection):
        testdata_headers = [
            'Query Search', 'Click on Query Card', 'Message Entry', 'Reply',
            'In Progress Tab', 'Query Search', 'Click on Query Card',
            'Message Entry', 'Mark as closed', 'Confirm'
        ]
        self.xlw.input_output_report(testdata_headers=testdata_headers,
                                     collection=collection,
                                     row=29,
                                     i_column=10,
                                     o_column=11,
                                     path=self.__path)
class UnlockUpdateOutputReport:

    """ Number of Test cases / use cases name """
    TestCases = 165
    use_case_name = 'UNLOCK/UPDATE INTERVIEW FLOW'
    fail_color = ''

    def __init__(self, version, server, start_date_time):
        self.version = version
        self.server = server
        self.start_date_time = start_date_time
        self.time = datetime.now()
        self.__path = outputFile.OUTPUT_PATH['Unlock_update_output']
        self.xlw = excelWrite.ExcelReportWrite(version=version, test_cases=self.TestCases)

        excel_headers_1 = ['Event (Applicants)', 'Status', 'Applicant (Status change)', 'Status', 'Interview_1 (Login)',
                           'Status', 'Interview_1 (Feedback)', 'Status', 'Interview_2 (Login)', 'Status',
                           'Interview_2 (Feedback)', 'Status']
        color_headers_1 = ['Event (Applicants)', 'Applicant (Status change)', 'Interview_1 (Login)',
                           'Interview_1 (Feedback)', 'Interview_2 (Login)', 'Interview_2 (Feedback)', 'Status']
        self.xlw.excel_header_by_index(row=1, col=0, excel_headers_list=excel_headers_1,
                                       color_headers_list=color_headers_1)

        excel_headers_2 = ['Admin (Login)', 'Status', 'Admin (Unlock Feedback)', 'Status', 'Interview_1 (Login)',
                           'Status',  'Interview_1 (Update Decision/Feedback)', 'Status', 'Interview_2 (Login)',
                           'Status', 'Interview_2 (Update Decision/Feedback)', 'Status']
        color_headers_2 = ['Admin (Login)', 'Admin (Unlock Feedback)', 'Interview_1 (Login)',
                           'Interview_1 (Update Decision/Feedback)', 'Interview_2 (Login)',
                           'Interview_2 (Update Decision/Feedback)', 'Status']
        self.xlw.excel_header_by_index(row=17, col=0, excel_headers_list=excel_headers_2,
                                       color_headers_list=color_headers_2)

        """ <<<================== HTML / History Report Generator ==============================>>> """
        self.__history_path = outputFile.OUTPUT_PATH['Unlock_update_output_history']
        self.__html_path = outputFile.OUTPUT_PATH['Unlock_update_output_html']
        self.history_data_with_html_report = HistoryDataHTMLGenerator(self.__history_path, self.__html_path)
        self.amazon_s3 = AWS('{}.html'.format(self.use_case_name), self.__html_path)

    def history_html_generator(self):
        self.history_data_with_html_report.html_report_generation(self.server, self.version, self.start_date_time,
                                                                  self.use_case_name, self.xlw.result,
                                                                  self.xlw.total_cases, self.xlw.pass_cases,
                                                                  self.xlw.failure_cases, self.xlw.percentage,
                                                                  self.xlw.minutes, self.time, self.xlw.date_now,
                                                                  self.__path)
        self.amazon_s3.file_handler()

    def overall_status(self):
        self.xlw.status(start_date_time=self.start_date_time, version=self.version, server=self.server,
                        path=self.__path, excel_save_name=self.use_case_name)

    def event_app_report(self, event_coll):
        testdata_headers = ['Event Tab', 'Advance Search Action', 'Advance Name Field', 'Search Button',
                            'Event Card Click', 'Event validate', 'Event Actions', 'View Applicant Action',
                            'Applicant Advance Search', 'Applicant Name Enter', 'Search Button']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=event_coll,
                                     row=2, i_column=0, o_column=1, path=self.__path)

    def change_status_report(self, status_coll):
        testdata_headers = ['Select Applicant', 'Change Applicant Status', 'Select Stage', 'Select Status',
                            'Select Interviewers', 'Move all Interviewers', 'Done', 'Comment', 'Change Button',
                            'Change Status Notifier', 'Change Status Notifier Dismiss', 'Applicant Get name',
                            'Candidate Status Validate', 'Window Close', 'Switch to Old Window']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=status_coll,
                                     row=2, i_column=2, o_column=3, path=self.__path)

    def interviewer1_login_report(self, int1_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Advance Search Action', 'Advance Name Field',
                            'Search Button', 'Event Card Click', 'Event validate', 'Event Actions',
                            'Event Interviews Action']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_coll,
                                     row=2, i_column=4, o_column=5, path=self.__path)

    def interviewer1_feedback_action_report(self, int1_action_coll):
        testdata_headers = ['Advance Search', 'Applicant Name search', 'Search Button', 'Select Applicant',
                            'Feedback Provide Action', 'Switch to new tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_action_coll,
                                     row=2, i_column=6, o_column=7, path=self.__path)

    def interviewer1_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = ['Pending - decision', 'Ratings', 'comments', 'overall comment', 'Submit Feedback',
                            'Feedback validation Agree', 'Review Feedback', 'Close Tab', 'Switch to tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_pf_coll,
                                     row=8, i_column=6, o_column=7, path=self.__path)

    def interviewer2_login_report(self, int2_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Advance Search Action', 'Advance Name Field',
                            'Search Button', 'Event Card Click', 'Event validate', 'Event Actions',
                            'Event Interviews Action']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int2_coll,
                                     row=2, i_column=8, o_column=9, path=self.__path)

    def interviewer2_feedback_action_report(self, int1_action_coll):
        testdata_headers = ['Advance Search', 'Applicant Name search', 'Search Button', 'Select Applicant',
                            'Feedback Provide Action', 'Switch to new tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_action_coll,
                                     row=2, i_column=10, o_column=11, path=self.__path)

    def interviewer2_provide_feedback_report(self, int1_pf_coll):
        testdata_headers = ['Pending - decision', 'Ratings', 'comments', 'overall comment', 'Submit Feedback',
                            'Feedback validation Agree', 'Review Feedback', 'Close Tab', 'Switch to tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_pf_coll,
                                     row=8, i_column=10, o_column=11, path=self.__path)

    def admin_login_report(self, admin_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Event Tab', 'Advance Search Action',
                            'Advance Name Field', 'Search Button', 'Event Card Click', 'Event validate']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=admin_coll,
                                     row=18, i_column=0, o_column=1, path=self.__path)

    def admin_unlock_report(self, admin_coll):
        testdata_headers = ['Event Actions', 'Event Interviews Action', 'Completed Bucket', 'Select Applicant',
                            'Unlock Feedback Action', 'Select Interviewers', 'Unlock Button', 'Unlock Comment',
                            'Confirm Button', 'Unlock Notifier', 'Unlock Notifier Dismiss', 'Close Unlock screen']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=admin_coll,
                                     row=18, i_column=2, o_column=3, path=self.__path)

    def interviewer1_login_report1(self, int1_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Advance Search Action', 'Advance Name Field',
                            'Search Button', 'Event Card Click', 'Event validate', 'Event Actions',
                            'Event Interviews Action']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_coll,
                                     row=18, i_column=4, o_column=5, path=self.__path)

    def interviewer1_feedback_action_report1(self, int1_action_coll):
        testdata_headers = ['Advance Search', 'Applicant Name search', 'Search Button', 'Select Applicant',
                            'Feedback Provide Action', 'Switch to new tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_action_coll,
                                     row=19, i_column=6, o_column=7, path=self.__path)

    def bucket1_report(self, collection):
        testdata_headers = ['Completed Interviews']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=collection,
                                     row=18, i_column=6, o_column=7, path=self.__path)

    def interviewer1_provide_feedback_report1(self, int1_pf_coll):
        testdata_headers = ['shortlist - Update decision', 'Ratings', 'comments', 'overall comment', 'Update Feedback',
                            'Feedback validation Agree', 'Review Feedback', 'Close Tab', 'Switch to tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_pf_coll,
                                     row=25, i_column=6, o_column=7, path=self.__path)

    def interviewer2_login_report1(self, int2_coll):
        testdata_headers = ['Account Name Click', 'Logout', 'Click Here Login', 'Login Name Field', 'Password Field',
                            'Next Button', 'Account Name Validate', 'Advance Search Action', 'Advance Name Field',
                            'Search Button', 'Event Card Click', 'Event validate', 'Event Actions',
                            'Event Interviews Action']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int2_coll,
                                     row=18, i_column=8, o_column=9, path=self.__path)

    def interviewer2_feedback_action_report1(self, int1_action_coll):
        testdata_headers = ['Advance Search', 'Applicant Name search', 'Search Button', 'Select Applicant',
                            'Feedback Provide Action', 'Switch to new tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int1_action_coll,
                                     row=19, i_column=10, o_column=11, path=self.__path)

    def bucket2_report(self, collection):
        testdata_headers = ['Completed Interviews']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=collection,
                                     row=18, i_column=10, o_column=11, path=self.__path)

    def interviewer2_provide_feedback_report1(self, int2_pf_coll):
        testdata_headers = ['shortlist - update decision', 'Ratings', 'comments', 'overall comment', 'Update Feedback',
                            'Feedback validation Agree', 'Review Feedback', 'Close Tab', 'Switch to tab']
        self.xlw.input_output_report(testdata_headers=testdata_headers, collection=int2_pf_coll,
                                     row=25, i_column=10, o_column=11, path=self.__path)