def verify_create_update(self, response, dct_expected): self.step_desc = 'Verify Project Create/Update' self.step_input = 'Expected values: %s' % dct_expected self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) project_key = None err_msg = self.parse_wrapper.get_values(response.text, node='b:ErrorMessage')[0] general_err_msg = self.parse_wrapper.get_values( response.text, node='a:GeneralErrorMessage')[0] if err_msg or general_err_msg or response.status_code != 200: error_message = str(err_msg) + str(general_err_msg) self.remarks += 'Project creation/updation failed with error: %s' % { 'error_message': error_message, 'response': response.text } self.status = False else: project_key = self.parse_wrapper.get_values(response.text)[0] read_resp = self.read(project_key) dct_actual = self.construct_pve_dct_actual(read_resp, dct_expected) self.status, verify_remarks = self.asserter.verify( dct_actual, expected=dct_expected) self.remarks += verify_remarks self.db_logger.log_into_steps(self) assert self.status, self.remarks return project_key
def verify_delete(self, project_key): self.status = False self.step_desc = 'Verify Project Delete' self.step_input = 'Input value: %s' % project_key self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) read_resp = self.read(project_key) status_code = read_resp.status_code if status_code == 200: project_scode = helper.get_scode(project_key) expected_msg = 'Unable to find project: {}'.format(project_scode) actual_msg = self.parse_wrapper.get_values( read_resp.text, node='b:ErrorMessage')[0] self.status, remarks = self.asserter.verify( actual_msg, expected=expected_msg, condition='is_equal_to_ignoring_case') self.remarks += remarks else: self.remarks += 'Project Read API failed with status code: {0} and response: {1}'.format( status_code, read_resp.text) self.db_logger.log_into_steps(self) assert self.status, self.remarks
def verify_move(self, card_id, response, dct_expected): self.status = False self.step_desc = 'Leankit Card Move verification' self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_input = 'Input value card_id: {0}'.format(card_id) if response.status_code == 200: read_resp = self.read(card_id) if read_resp.status_code == 200: dct_expected, dct_actual = self.construct_expected_actual_dct( dct_expected, read_resp) self.status, remarks = self.asserter.verify( dct_actual, expected=dct_expected) self.remarks += remarks else: self.remarks += "Read Response failed with status code: {0} and response: {1}".format( read_resp.status_code, read_resp.text) else: self.remarks += "Card Move failed with status code: {0} and response: {1}".format( response.status_code, response.text) self.db_logger.log_into_steps(self) assert self.status, self.remarks return card_id
def verify_create_update(self, response, dct_expected): self.status = False self.step_desc = 'Leankit Card create/update verification' self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_input = 'Expected response is {}'.format(dct_expected) card_id = None if response.status_code in (200, 201): card_id = response.json().get('id') read_resp = self.read(card_id) if read_resp.status_code == 200: dct_expected, dct_actual = self.construct_expected_actual_dct( dct_expected, read_resp) self.status, remarks = self.asserter.verify( dct_actual, expected=dct_expected) self.remarks += remarks else: self.remarks += "Read Response failed with status code: {0} and response: {1}".format( read_resp.status_code, read_resp.text) else: self.remarks += "Card Creation/update failed with status code: {0} and response: {1}".format( response.status_code, response.text) self.db_logger.log_into_steps(self) assert self.status, self.remarks return card_id
def verify_update(self, response, board_id, lane_id, dct_expected): self.status = False self.step_desc = 'Leankit Board Lane Update verification' self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_input = 'Input value board_id: {0}, lane_id: {1}'.format( board_id, lane_id) if response.status_code == 200: read_resp = self.read(board_id) if read_resp.status_code == 200: dct_actual = objectpath_wrapper.get_dct_containing_condition( 'id', lane_id, read_resp) self.status, remarks = self.asserter.verify( dct_actual, expected=dct_expected) self.remarks += remarks else: self.remarks += "Read Response failed with status code: {0} and response: {1}".format( read_resp.status_code, read_resp.text) else: self.remarks += "Board Lane update failed with status code: {0} and response: {1}".format( response.status_code, response.text) self.db_logger.log_into_steps(self) assert self.status
def project_details(self, project_id, dct_expected): self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_desc = 'Verifying Project Details after Integration' self.step_input = 'Expected values: %s' % dct_expected dct_actual = self.qhandler.select_project_details(project_id) self.status, remarks = self.asserter.verify(dct_actual, expected=dct_expected) self.remarks += remarks self.db_logger.log_into_steps(self) assert self.status
def project_name(self, project_id, expected_name): self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_desc = 'Verifying Project Name after Integration' self.step_input = 'Expected Name: %s' % expected_name if project_id: actual_name = self.qhandler.select_project_name(project_id) self.status, remarks = self.asserter.verify( actual_name, expected=expected_name, condition='is_equal_to_ignoring_case') self.remarks += remarks else: self.status = False self.remarks += 'Invalid Project Id : {}'.format(project_id) self.db_logger.log_into_steps(self) assert self.status
def project_description(self, project_id, expected_description): self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_desc = 'Verifying Project Description after Integration' self.step_input = 'Expected Description: %s' % expected_description actual_description = '' description = self.qhandler.select_project_description(project_id) # Logic to concatenate the work description as they are stored in multiple rows when they are more than 1000 characters if description: desc_generator = (''.join(row[0]) for row in description) actual_description = ''.join(desc_generator) self.status, remarks = self.asserter.verify( actual_description, expected=expected_description, condition='is_equal_to_ignoring_case') self.remarks += remarks self.db_logger.log_into_steps(self) assert self.status
def verify_delete(self, card_id): self.status = False self.step_desc = 'Leankit Card delete verification' self.remarks = '\n Inside feature class: %s method: %s \n' % ( core_helper.get_invoking_method_name()) self.step_input = 'Input value {}'.format(card_id) read_resp = self.read(card_id) if read_resp.status_code == 404: expected_msg = 'Not found.' actual_msg = read_resp.json()['message'] self.status, remarks = self.asserter.verify( actual_msg, expected=expected_msg, condition='is_equal_to') self.remarks += remarks else: self.remarks += 'Card is not deleted' self.db_logger.log_into_steps(self) assert self.status, self.remarks