def test_result_parser_plugins(self): """Check basic result parser structure.""" plugins.initialize_plugins(self.pav_cfg) regex = result_parsers.get_plugin('regex') plugins._reset_plugins()
def _result_parsers_cmd(_, args, outfile=sys.stdout): if args.config: try: res_plugin = result_parsers.get_plugin(args.config) except result_parsers.ResultParserError: utils.fprint( "Invalid result parser '{}'.".format(args.config), color=utils.RED ) return errno.EINVAL config_items = res_plugin.get_config_items() class Loader(yaml_config.YamlConfigLoader): ELEMENTS = config_items Loader().dump(sys.stdout) else: rps = [] for rp_name in result_parsers.list_plugins(): res_plugin = result_parsers.get_plugin(rp_name) desc = " ".join(res_plugin.__doc__.split()) rps.append({ 'name': rp_name, 'description': desc, 'path': res_plugin.path }) fields = ['name', 'description'] if args.verbose: fields.append('path') utils.draw_table( outfile, field_info={}, fields=fields, rows=rps, title="Available Result Parsers" )
def _result_parsers_cmd(self, _, args): """Show all the result parsers.""" if args.config: try: res_plugin = result_parsers.get_plugin(args.config) except result_parsers.ResultParserError: output.fprint("Invalid result parser '{}'.".format( args.config), color=output.RED) return errno.EINVAL config_items = res_plugin.get_config_items() class Loader(yaml_config.YamlConfigLoader): """Loader for just a result parser's config.""" ELEMENTS = config_items Loader().dump(self.outfile) else: rps = [] for rp_name in result_parsers.list_plugins(): res_plugin = result_parsers.get_plugin(rp_name) desc = " ".join(str(res_plugin.__doc__).split()) rps.append({ 'name': rp_name, 'description': desc, 'path': res_plugin.path }) fields = ['name', 'description'] if args.verbose: fields.append('path') output.draw_table(self.outfile, field_info={}, fields=fields, rows=rps, title="Available Result Parsers")
def test_result_parser_plugins(self): """Check basic result parser structure.""" # Get an empty pavilion config and set some config dirs on it. pav_cfg = config.PavilionConfigLoader().load_empty() plugins.initialize_plugins(pav_cfg) # We're loading multiple directories of plugins - AT THE SAME TIME! pav_cfg.config_dirs = [ os.path.join(self.TEST_DATA_ROOT, 'pav_config_dir') ] # We should have exactly one test plugin. self.assertEqual(len(result_parsers.list_plugins()), 1) regex = result_parsers.get_plugin('regex') plugins._reset_plugins()