def test_plugin_container_wrapping_external_authentications(self): """pluginutils - wrapping external authentications""" def plugin_builder(plugin_name, plugin_code): for name in dir(plugin_code): candidate = getattr(plugin_code, name) try: if issubclass(candidate, ExternalAuth): return candidate except TypeError: pass raise ValueError( '%s is not a valid external authentication plugin' % plugin_name) external_authentications = PluginContainer( os.path.join(CFG_PYLIBDIR, 'invenio', 'external_authentication_*.py'), plugin_signature=ExternalAuth, plugin_builder=plugin_builder) self.failUnless( issubclass(external_authentications['external_authentication_sso'], ExternalAuth)) self.failIf( external_authentications.get( 'external_authentication_cern_wrapper')) self.failUnless(len(external_authentications) >= 1) self.failUnless( len(external_authentications.get_broken_plugins()) >= 2)
def setUp(self): """Load plugin""" search_service_plugins = PluginContainer( os.path.join(CFG_SEARCH_SERVICES_PATH, '*Service.py'), api_version=__required_plugin_API_version__, plugin_signature=SearchService) self.plugin = search_service_plugins.get( 'SubmissionNameSearchService')()
def setUp(self): """Load plugin.""" search_service_plugins = PluginContainer( os.path.join(CFG_SEARCH_SERVICES_PATH, '*Service.py'), api_version=__required_plugin_API_version__, plugin_signature=SearchService ) self.plugin = search_service_plugins.get('JournalHintService')()
def test_plugin_container_wrapping_websubmit_functions(self): """pluginutils - wrapping websubmit functions""" websubmit_functions = PluginContainer(os.path.join(CFG_PYLIBDIR, 'invenio', 'websubmit_functions', '*.py')) self.failUnless(websubmit_functions['Is_Referee']) self.failUnless(websubmit_functions['CaseEDS']) self.failUnless(callable(websubmit_functions['CaseEDS'])) self.failUnless(len(websubmit_functions) >= 62) ## Retrieve_Data and Shared_Functions are not real plugins self.failUnless(len(websubmit_functions.get_broken_plugins()) >= 2) self.failIf(websubmit_functions.get('Shared_Functions')) self.failUnless('Shared_Functions' in websubmit_functions.get_broken_plugins())
def test_plugin_container_wrapping_websubmit_functions(self): """pluginutils - wrapping websubmit functions""" websubmit_functions = PluginContainer(os.path.join(CFG_PYLIBDIR, 'invenio', 'websubmit_functions', '*.py')) self.failUnless(websubmit_functions['Is_Referee']) self.failUnless(websubmit_functions['CaseEDS']) self.failUnless(callable(websubmit_functions['CaseEDS'])) self.failUnless(len(websubmit_functions) >= 62, 'There should exist at least 62 websubmit_functions. Found: %s' % len(websubmit_functions)) ## Retrieve_Data and Shared_Functions are not real plugins self.failUnless(len(websubmit_functions.get_broken_plugins()) >= 2) self.failIf(websubmit_functions.get('Shared_Functions')) self.failUnless('Shared_Functions' in websubmit_functions.get_broken_plugins())
def test_plugin_container_wrapping_websubmit_functions(self): """pluginutils - wrapping websubmit functions""" websubmit_functions = PluginContainer(os.path.join(CFG_PYLIBDIR, "invenio", "websubmit_functions", "*.py")) self.failUnless(websubmit_functions["Is_Referee"]) self.failUnless(websubmit_functions["CaseEDS"]) self.failUnless(callable(websubmit_functions["CaseEDS"])) self.failUnless( len(websubmit_functions) >= 62, "There should exist at least 62 websubmit_functions. Found: %s" % len(websubmit_functions), ) ## Retrieve_Data and Shared_Functions are not real plugins self.failUnless(len(websubmit_functions.get_broken_plugins()) >= 2) self.failIf(websubmit_functions.get("Shared_Functions")) self.failUnless("Shared_Functions" in websubmit_functions.get_broken_plugins())
def test_plugin_container_wrapping_external_authentications(self): """pluginutils - wrapping external authentications""" def plugin_builder(plugin_name, plugin_code): for name in dir(plugin_code): candidate = getattr(plugin_code, name) try: if issubclass(candidate, ExternalAuth): return candidate except TypeError: pass raise ValueError('%s is not a valid external authentication plugin' % plugin_name) external_authentications = PluginContainer(os.path.join(CFG_PYLIBDIR, 'invenio', 'external_authentication_*.py'), plugin_signature=ExternalAuth, plugin_builder=plugin_builder) self.failUnless(issubclass(external_authentications['external_authentication_sso'], ExternalAuth)) self.failIf(external_authentications.get('external_authentication_cern_wrapper')) self.failUnless(len(external_authentications) >= 1) self.failUnless(len(external_authentications.get_broken_plugins()) >= 2)