Skip to content

Commit 62bb63b

Browse files
committed
Additional password reset unit tests for API and REST
- strongloop#944
1 parent 9ac620c commit 62bb63b

File tree

1 file changed

+38
-1
lines changed

1 file changed

+38
-1
lines changed

test/user.test.js

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -804,9 +804,17 @@ describe('User', function() {
804804

805805
describe('Password Reset', function() {
806806
describe('User.resetPassword(options, cb)', function() {
807+
var email = '[email protected]';
808+
809+
it('Requires email address to reset password', function(done) {
810+
User.resetPassword({ }, function(err) {
811+
assert(err);
812+
done();
813+
});
814+
});
815+
807816
it('Creates a temp accessToken to allow a user to change password', function(done) {
808817
var calledBack = false;
809-
var email = '[email protected]';
810818

811819
User.resetPassword({
812820
email: email
@@ -826,6 +834,35 @@ describe('User', function() {
826834
});
827835
});
828836
});
837+
838+
it('Password reset over REST rejected without email address', function(done) {
839+
request(app)
840+
.post('/users/reset')
841+
.expect('Content-Type', /json/)
842+
.expect(400)
843+
.send({ })
844+
.end(function(err, res) {
845+
if (err) {
846+
return done(err);
847+
}
848+
done();
849+
});
850+
});
851+
852+
it('Password reset over REST requires email address', function(done) {
853+
request(app)
854+
.post('/users/reset')
855+
.expect('Content-Type', /json/)
856+
.expect(204)
857+
.send({ email: email })
858+
.end(function(err, res) {
859+
if (err) {
860+
return done(err);
861+
}
862+
assert.deepEqual(res.body, { });
863+
done();
864+
});
865+
});
829866
});
830867
});
831868

0 commit comments

Comments
 (0)