def test_add_entry(self): class test: pass RegistryManager.add_entry_in_register('Other', 'test', test) self.assertInEntry('test', test) assert RegistryManager.has_entry_in_register('testEntry', 'Other', 'test')
def test_add_entry(self): class test: pass RegistryManager.add_entry_in_register('Other', 'test', test) self.assertInEntry('test', test) self.assertEqual( RegistryManager.has_entry_in_register('testEntry', 'Other', 'test'), True)
def test_get_entry_properties_in_register(self): class test: pass RegistryManager.add_entry_in_register('Other', 'test', test, property1='test') properties = RegistryManager.get_entry_properties_in_register( 'Other', 'test') hasproperty1 = 'property1' in properties self.assertTrue(hasproperty1) self.assertEqual(properties['property1'], 'test')
def test_get_entry_properties_in_register(self): class test: pass RegistryManager.add_entry_in_register('Other', 'test', test, property1='test') properties = RegistryManager.get_entry_properties_in_register( 'Other', 'test') hasproperty1 = 'property1' in properties assert hasproperty1 assert properties['property1'] == 'test'
def test_remove_entry(self): class test: pass def has_test_in_removed(): core = RegistryManager.loaded_bloks['testEntry']['removed'] if test in core: return True return False RegistryManager.add_entry_in_register('Other', 'test', test) self.assertInEntry('test', test) self.assertFalse(has_test_in_removed()) RegistryManager.remove_in_register(test) self.assertTrue(has_test_in_removed())
def register(cls, parent, name, cls_, **kwargs): """ add new sub registry in the registry :param parent: Existing global registry :param name: Name of the new registry to add it :param cls_: Class Interface to add in registry """ _registryname = parent.__registry_name__ + '.' + name if not hasattr(parent, name): kwargs['__registry_name__'] = _registryname ns = type(name, tuple(), kwargs) setattr(parent, name, ns) if parent is Declarations: return RegistryManager.add_entry_in_register(cls.__name__, _registryname, cls_, **kwargs)
def register(cls, parent, name, cls_, **kwargs): """ add new sub registry in the registry :param parent: Existing global registry :param name: Name of the new registry to add it :param cls_: Class Interface to add in registry """ _registryname = parent.__registry_name__ + '.' + name if not hasattr(parent, name): kwargs['__registry_name__'] = _registryname ns = type(name, tuple(), kwargs) setattr(parent, name, ns) if parent is Declarations: return RegistryManager.add_entry_in_register( cls.__name__, _registryname, cls_, **kwargs)
def register(self, parent, name, cls_, **kwargs): """ add new sub registry in the registry :param parent: Existing global registry :param name: Name of the new registry to add it :param cls_: Class Interface to add in registry """ _registryname = parent.__registry_name__ + '.' + name if 'tablename' in kwargs: tablename = kwargs.pop('tablename') if not isinstance(tablename, str): tablename = tablename.__tablename__ elif hasattr(parent, name): tablename = getattr(parent, name).__tablename__ else: if parent is Declarations or parent is Declarations.Model: tablename = name.lower() elif hasattr(parent, '__tablename__'): tablename = parent.__tablename__ tablename += '_' + name.lower() if not hasattr(parent, name): p = { '__tablename__': tablename, '__registry_name__': _registryname, 'use': lambda x: ModelAttribute(_registryname, x), } ns = type(name, tuple(), p) setattr(parent, name, ns) if parent is Declarations: return kwargs['__registry_name__'] = _registryname kwargs['__tablename__'] = tablename update_factory(kwargs) RegistryManager.add_entry_in_register( 'Model', _registryname, cls_, **kwargs) setattr(cls_, '__anyblok_kwargs__', kwargs)
def register(self, parent, name, cls_, **kwargs): """ add new sub registry in the registry :param parent: Existing global registry :param name: Name of the new registry to add it :param cls_: Class Interface to add in registry """ _registryname = parent.__registry_name__ + '.' + name if 'tablename' in kwargs: tablename = kwargs.pop('tablename') if not isinstance(tablename, str): tablename = tablename.__tablename__ elif hasattr(parent, name): tablename = getattr(parent, name).__tablename__ else: if parent is Declarations or parent is Declarations.Model: tablename = name.lower() elif hasattr(parent, '__tablename__'): tablename = parent.__tablename__ tablename += '_' + name.lower() if not hasattr(parent, name): p = { '__tablename__': tablename, '__registry_name__': _registryname, 'use': lambda x: ModelAttribute(_registryname, x), } ns = type(name, tuple(), p) setattr(parent, name, ns) if parent is Declarations: return kwargs['__registry_name__'] = _registryname kwargs['__tablename__'] = tablename update_factory(kwargs) RegistryManager.add_entry_in_register('Model', _registryname, cls_, **kwargs) setattr(cls_, '__anyblok_kwargs__', kwargs)