Mercurial > repos > shellac > sam_consensus_v3
diff env/lib/python3.9/site-packages/allure_commons/_core.py @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author | shellac |
---|---|
date | Mon, 22 Mar 2021 18:12:50 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/env/lib/python3.9/site-packages/allure_commons/_core.py Mon Mar 22 18:12:50 2021 +0000 @@ -0,0 +1,25 @@ +import threading +from six import with_metaclass +from pluggy import PluginManager +from allure_commons import _hooks + + +class MetaPluginManager(type): + _storage = threading.local() + + @staticmethod + def get_plugin_manager(): + if not hasattr(MetaPluginManager._storage, 'plugin_manager'): + MetaPluginManager._storage.plugin_manager = PluginManager('allure') + MetaPluginManager._storage.plugin_manager.add_hookspecs(_hooks.AllureUserHooks) + MetaPluginManager._storage.plugin_manager.add_hookspecs(_hooks.AllureDeveloperHooks) + + return MetaPluginManager._storage.plugin_manager + + def __getattr__(cls, attr): + pm = MetaPluginManager.get_plugin_manager() + return getattr(pm, attr) + + +class plugin_manager(with_metaclass(MetaPluginManager)): + pass