From 2f12ef0473f7e5d7d1796e8acb74a909d35ffe1e Mon Sep 17 00:00:00 2001 From: Julien Malik Date: Thu, 17 Nov 2016 14:57:00 +0100 Subject: [PATCH] [enh] better error messages and valid errno --- locales/en.json | 3 ++- src/yunohost/alias.py | 16 +++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/locales/en.json b/locales/en.json index b34245770..470334a2a 100644 --- a/locales/en.json +++ b/locales/en.json @@ -246,7 +246,8 @@ "alias_creation_failed" : "Unable to create alias", "alias_deletion_failed" : "Unable to delete alias", "alias_deleted" : "Alias successfully deleted", - "alias_unknown" : "Unknown alias", + "alias_invalid" : "Invalid alias '{alias:s}' : an alias is a mail address and must contain at least @ sign", + "alias_unknown" : "Unknown alias '{alias:s}'", "alias_updated" : "Alias successfully updated", "alias_update_failed" : "Unable to update alias", "alias_info_failed" : "Unable to retrieve alias information" diff --git a/src/yunohost/alias.py b/src/yunohost/alias.py index 4e57e4665..e4cfdc339 100644 --- a/src/yunohost/alias.py +++ b/src/yunohost/alias.py @@ -75,7 +75,7 @@ def alias_create(auth, alias, mailforward): success = auth.add(rdn, attr_dict) if not success: - raise MoulinetteError(169, m18n.n('alias_creation_failed')) + raise MoulinetteError(errno.EREMOTEIO, m18n.n('alias_creation_failed')) msignals.display(m18n.n('alias_created'), 'success') return {'alias': alias, 'maildrop': attr_dict['maildrop']} @@ -105,13 +105,12 @@ def alias_update(auth, alias, add_mailforward=None, remove_mailforward=None): if len(alias.split('@')) == 2: ldap_filter = 'mail=%s' % alias else: - # TODO better error message - raise MoulinetteError(167, m18n.n('alias_info_failed')) + raise MoulinetteError(errno.EINVAL, m18n.n('alias_invalid', alias)) result = auth.search('ou=aliases,dc=yunohost,dc=org', ldap_filter, alias_attrs) if not result: - raise MoulinetteError(errno.EINVAL, m18n.n('alias_unknown')) + raise MoulinetteError(errno.EINVAL, m18n.n('alias_unknown', alias)) current_alias_info = result[0] @@ -128,7 +127,7 @@ def alias_update(auth, alias, add_mailforward=None, remove_mailforward=None): success = auth.update('mail=%s,ou=aliases' % alias, current_alias_info) if not success: - raise MoulinetteError(169, m18n.n('alias_update_failed')) + raise MoulinetteError(errno.EREMOTEIO, m18n.n('alias_update_failed')) msignals.display(m18n.n('alias_updated'), 'success') return alias_info(auth, alias) @@ -146,7 +145,7 @@ def alias_delete(auth, alias): success = auth.remove('mail=%s,ou=aliases' % alias) if not success: - raise MoulinetteError(169, m18n.n('alias_deletion_failed')) + raise MoulinetteError(errno.EREMOTEIO, m18n.n('alias_deletion_failed')) msignals.display(m18n.n('alias_deleted'), 'success') @@ -168,13 +167,12 @@ def alias_info(auth, alias): if len(alias.split('@')) is 2: filter = 'mail=' + alias else: - # TODO better error message - raise MoulinetteError(167, m18n.n('alias_info_failed')) + raise MoulinetteError(errno.EINVAL, m18n.n('alias_invalid', alias)) result = auth.search('ou=aliases,dc=yunohost,dc=org', filter, alias_attrs) if not result: - raise MoulinetteError(errno.EINVAL, m18n.n('alias_unknown')) + raise MoulinetteError(errno.EINVAL, m18n.n('alias_unknown', alias)) return result[0]