def get_component(componenttype: str): '''Get component function by type name (e.g. "Senza::MyComponent")''' prefix, _, componenttype = componenttype.partition('::') root_package = camel_case_to_underscore(prefix) module_name = camel_case_to_underscore(componenttype) try: module = importlib.import_module('{}.components.{}'.format(root_package, module_name)) except ImportError: # component (module) not found return None function_name = 'component_{}'.format(module_name) return getattr(module, function_name)
def get_component(componenttype: str): '''Get component function by type name (e.g. "Senza::MyComponent")''' prefix, _, componenttype = componenttype.partition('::') root_package = camel_case_to_underscore(prefix) module_name = camel_case_to_underscore(componenttype) try: module = importlib.import_module('{}.components.{}'.format( root_package, module_name)) except ImportError: # component (module) not found return None function_name = 'component_{}'.format(module_name) return getattr(module, function_name)
def test_camel_case_to_underscore(): assert camel_case_to_underscore( 'CamelCaseToUnderscore') == 'camel_case_to_underscore' assert camel_case_to_underscore('ThisIsABook') == 'this_is_a_book' assert camel_case_to_underscore('InstanceID') == 'instance_id'
def test_camel_case_to_underscore(): assert camel_case_to_underscore("CamelCaseToUnderscore") == "camel_case_to_underscore" assert camel_case_to_underscore("ThisIsABook") == "this_is_a_book" assert camel_case_to_underscore("InstanceID") == "instance_id"
def test_camel_case_to_underscore(): assert camel_case_to_underscore('CamelCaseToUnderscore') == 'camel_case_to_underscore' assert camel_case_to_underscore('ThisIsABook') == 'this_is_a_book' assert camel_case_to_underscore('InstanceID') == 'instance_id'
def test_camel_case_to_underscore(): assert camel_case_to_underscore('CamelCaseToUnderscore') == 'camel_case_to_underscore'