diff --git a/src/test/user-test.js b/src/test/user-test.js index 3bd1299e9..28a387f82 100644 --- a/src/test/user-test.js +++ b/src/test/user-test.js @@ -142,6 +142,36 @@ describe('User', function () { }); }); + it('fails due to short username', function (done) { + user.create('Z', PASSWORD, EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { + expect(error).to.be.ok(); + expect(result).to.not.be.ok(); + expect(error.reason).to.equal(UserError.BAD_USERNAME); + + done(); + }); + }); + + it('fails due to long username', function (done) { + user.create(new Array(257).fill('Z').join(''), PASSWORD, EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { + expect(error).to.be.ok(); + expect(result).to.not.be.ok(); + expect(error.reason).to.equal(UserError.BAD_USERNAME); + + done(); + }); + }); + + it('fails due to reserved pattern', function (done) { + user.create('maybe-app', PASSWORD, EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { + expect(error).to.be.ok(); + expect(result).to.not.be.ok(); + expect(error.reason).to.equal(UserError.BAD_USERNAME); + + done(); + }); + }); + it('succeeds and attempts to send invite', function (done) { user.createOwner(USERNAME, PASSWORD, EMAIL, DISPLAY_NAME, AUDIT_SOURCE, function (error, result) { expect(error).not.to.be.ok(); diff --git a/src/user.js b/src/user.js index 62f972296..2f72fb3d1 100644 --- a/src/user.js +++ b/src/user.js @@ -88,7 +88,7 @@ function validateUsername(username) { if (RESERVED_USERNAMES.indexOf(username) !== -1) return new UserError(UserError.BAD_USERNAME, 'Username is reserved'); - if (username.indexOf('-app') !== -1) return UserError(UserError.BAD_USERNAME, 'Username pattern is reserved for apps'); + if (username.indexOf('-app') !== -1) return new UserError(UserError.BAD_USERNAME, 'Username pattern is reserved for apps'); return null; }