mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-07-14 21:22:46 +02:00
Merge remote-tracking branch 'origin/master' into develop
This commit is contained in:
56
test/user.js
56
test/user.js
@@ -399,19 +399,22 @@ describe('User', function () {
|
||||
});
|
||||
|
||||
it('should change a user\'s password', function (done) {
|
||||
this.timeout(20000);
|
||||
io.emit('user.changePassword', { uid: uid, newPassword: '654321', currentPassword: '123456' }, function (err) {
|
||||
var socketUser = require('../src/socket.io/user');
|
||||
User.create({ username: 'changepassword', password: '123456' }, function (err, uid) {
|
||||
assert.ifError(err);
|
||||
User.isPasswordCorrect(uid, '654321', function (err, correct) {
|
||||
socketUser.changePassword({ uid: uid }, { uid: uid, newPassword: '654321', currentPassword: '123456' }, function (err) {
|
||||
assert.ifError(err);
|
||||
assert(correct);
|
||||
done();
|
||||
User.isPasswordCorrect(uid, '654321', function (err, correct) {
|
||||
assert.ifError(err);
|
||||
assert(correct);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
it('should change username', function (done) {
|
||||
io.emit('user.changeUsernameEmail', { uid: uid, username: 'updatedAgain', password: '654321' }, function (err) {
|
||||
io.emit('user.changeUsernameEmail', { uid: uid, username: 'updatedAgain', password: '123456' }, function (err) {
|
||||
assert.ifError(err);
|
||||
db.getObjectField('user:' + uid, 'username', function (err, username) {
|
||||
assert.ifError(err);
|
||||
@@ -422,7 +425,7 @@ describe('User', function () {
|
||||
});
|
||||
|
||||
it('should change email', function (done) {
|
||||
io.emit('user.changeUsernameEmail', { uid: uid, email: 'updatedAgain@me.com', password: '654321' }, function (err) {
|
||||
io.emit('user.changeUsernameEmail', { uid: uid, email: 'updatedAgain@me.com', password: '123456' }, function (err) {
|
||||
assert.ifError(err);
|
||||
db.getObjectField('user:' + uid, 'email', function (err, email) {
|
||||
assert.ifError(err);
|
||||
@@ -1152,6 +1155,45 @@ describe('User', function () {
|
||||
});
|
||||
});
|
||||
|
||||
describe('email confirm', function () {
|
||||
it('should error with invalid code', function (done) {
|
||||
User.email.confirm('asdasda', function (err) {
|
||||
assert.equal(err.message, '[[error:invalid-data]]');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('should confirm email of user', function (done) {
|
||||
var email = 'confirm@me.com';
|
||||
User.create({
|
||||
username: 'confirme',
|
||||
email: email,
|
||||
}, function (err, uid) {
|
||||
assert.ifError(err);
|
||||
User.email.sendValidationEmail(uid, email, function (err, code) {
|
||||
assert.ifError(err);
|
||||
User.email.confirm(code, function (err) {
|
||||
assert.ifError(err);
|
||||
|
||||
async.parallel({
|
||||
confirmed: function (next) {
|
||||
db.getObjectField('user:' + uid, 'email:confirmed', next);
|
||||
},
|
||||
isMember: function (next) {
|
||||
db.isSortedSetMember('users:notvalidated', uid, next);
|
||||
},
|
||||
}, function (err, results) {
|
||||
assert.ifError(err);
|
||||
assert.equal(results.confirmed, 1);
|
||||
assert.equal(results.isMember, false);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
after(function (done) {
|
||||
db.emptydb(done);
|
||||
|
||||
Reference in New Issue
Block a user