diff options
Diffstat (limited to 'plugins/python/regress/plugin_errorstr.py')
-rw-r--r-- | plugins/python/regress/plugin_errorstr.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/plugins/python/regress/plugin_errorstr.py b/plugins/python/regress/plugin_errorstr.py new file mode 100644 index 0000000..fcbd71d --- /dev/null +++ b/plugins/python/regress/plugin_errorstr.py @@ -0,0 +1,18 @@ +import sudo + + +# The purpose of this class is that all methods you call on its object +# raises a PluginError with a message containing the name of the called method. +# Eg. if you call "ErrorMsgPlugin().some_method()" it will raise +# "Something wrong in some_method" +class ErrorMsgPlugin(sudo.Plugin): + def __getattr__(self, name): + def raiser_func(*args): + raise sudo.PluginError("Something wrong in " + name) + + return raiser_func + + +class ConstructErrorPlugin(sudo.Plugin): + def __init__(self, **kwargs): + raise sudo.PluginError("Something wrong in plugin constructor") |