def test_find_c_plugin_libs(self, direction, plugin_name, plugin_type, libs): with patch('os.walk') as mockwalk: mockwalk.return_value = [('', plugin_name, []), ('', [], libs)] assert plugin_name, plugin_type == utils.find_c_plugin_libs( direction)
def fetch_c_plugins_installed(cls, plugin_type, is_config): libs = utils.find_c_plugin_libs(plugin_type) configs = [] for name, _type in libs: try: if _type == 'binary': jdoc = utils.get_plugin_info(name, dir=plugin_type) if jdoc: if 'flag' in jdoc: if common_utils.bit_at_given_position_set_or_unset( jdoc['flag'], common_utils.DEPRECATED_BIT_POSITION): raise DeprecationWarning plugin_config = { 'name': name, 'type': plugin_type, 'description': jdoc['config']['plugin']['description'], 'version': jdoc['version'] } if is_config: plugin_config.update({'config': jdoc['config']}) configs.append(plugin_config) else: # for c-hybrid plugin hybrid_plugin_config = common.load_and_fetch_c_hybrid_plugin_info( name, is_config) if hybrid_plugin_config: configs.append(hybrid_plugin_config) except DeprecationWarning: _logger.warning('"{}" plugin is deprecated'.format(name)) except Exception as ex: _logger.exception(ex) return configs
def fetch_c_plugins_installed(cls, plugin_type, is_config): libs = utils.find_c_plugin_libs(plugin_type) configs = [] for l in libs: try: jdoc = utils.get_plugin_info(l, dir=plugin_type) if bool(jdoc): plugin_config = {'name': l, 'type': plugin_type, 'description': jdoc['config']['plugin']['description'], 'version': jdoc['version'] } if is_config: plugin_config.update({'config': jdoc['config']}) configs.append(plugin_config) except Exception as ex: _logger.exception(ex) return configs
def test_find_c_plugin_libs_if_empty(self, direction): with patch('os.walk') as mockwalk: mockwalk.return_value = [([], [], [])] assert [] == utils.find_c_plugin_libs(direction)