diff --git a/errors.js b/errors.js index fb4b0341d..9078dc866 100644 --- a/errors.js +++ b/errors.js @@ -59,6 +59,11 @@ const ErrUsernameTaken = new APIError('Username already in use', { status: 400 }); +const ErrSameUsernameProvided = new APIError('Username provided for change is the same as current', { + translation_key: 'SAME_USERNAME_PROVIDED', + status: 400 +}); + const ErrSpecialChars = new APIError('No special characters are allowed in a username', { translation_key: 'NO_SPECIAL_CHARACTERS', status: 400 @@ -245,5 +250,6 @@ module.exports = { ErrSettingsNotInit, ErrSpecialChars, ErrUsernameTaken, + ErrSameUsernameProvided, ExtendableError, }; diff --git a/services/users.js b/services/users.js index 0727aca53..f2dfee166 100644 --- a/services/users.js +++ b/services/users.js @@ -281,7 +281,7 @@ class UsersService { } if (!resetAllowed && user.username === username) { - throw errors.ErrUsernameTaken; + throw errors.ErrSameUsernameProvided; } throw new Error('edit username failed for an unexpected reason'); diff --git a/test/server/services/users.js b/test/server/services/users.js index 8be3fc89b..343b73bdf 100644 --- a/test/server/services/users.js +++ b/test/server/services/users.js @@ -238,7 +238,7 @@ describe('services.UsersService', () => { await UsersService[func](user.id, user.username); throw new Error('edit was processed successfully'); } catch (err) { - expect(err).have.property('translation_key', 'USERNAME_IN_USE'); + expect(err).have.property('translation_key', 'SAME_USERNAME_PROVIDED'); } } else { await UsersService[func](user.id, user.username);