def load(self):
        module_name, obj_name = self.location.split(':')
        try:
            module = importlib.import_module(module_name)
        except ImportError:
            raise Exception('Plugin {} module `{}` not found.'.format(
                self.category, module_name))
        try:
            obj = getattr(module, obj_name)
        except AttributeError:
            raise Exception('Plugin {}:{} module `{}` has no {}.'.format(
                self.category, self.name, module_name, obj_name))
        return obj
Test the basic messaging
dataset/ETHPy150Open pydoit/doit/doit/plugin.py/PluginEntry.load--crossover with--dataset/ETHPy150Open AliLozano/django-messages-extends/messages_extends/tests.py/MessagesTests.test_persist_message_levels