def _combine_suite_xmls(self): result = Result() result.suite.name = self.name for result_path in self.result_paths: new_result = ExecutionResult(result_path) result.suite.suites.append(new_result.suite) result.save(path=path.join(self.config['outputdir'], 'output.xml'))
def _combine_all_devices(self): all_devices = Result() all_devices.suite.name = self.name for device_file in self.device_filenames: current_result = ExecutionResult(path.join(self.config['outputdir'], device_file)) current_result.suite.name = device_file all_devices.suite.suites.append(current_result.suite) all_devices.save(path=path.join(self.config['outputdir'], 'devices.xml'))
def _gather_device_xmls(self): for device_file in self.device_filenames: device_result = Result() device_result.name = device_file.replace('.xml', '') for test_name in self.test_names: current_result_path = path.join(self.config['outputdir'], test_name, device_file) try: current_result = ExecutionResult(current_result_path) current_result.suite.name = test_name device_result.suite.suites.append(current_result.suite) except Exception as e: logger.error('unable to parse log file {}: {}'.format(current_result_path, e)) device_result.save(path=path.join(self.config['outputdir'], device_file))
def _create_suite_xml(self, test_name): dir_path = path.join(self.config['outputdir'], test_name) result = Result() result.suite.name = test_name result_files = listdir(dir_path) result_files = [*filter(lambda result_file: result_file.endswith('.xml'), result_files)] result_files = [*map(lambda result_file: path.join(dir_path, result_file), result_files)] for result_file in result_files: try: new_result = ExecutionResult(result_file) result.suite.suites.append(new_result.suite) except Exception as e: logger.info('could not parse result file {}: {}'.format(result_file, e)) result.save(path.join(self.config['outputdir'], test_name + '.xml'))