Skip to content

Commit

Permalink
removed token field and changed isRevoked field
Browse files Browse the repository at this point in the history
  • Loading branch information
pallavi2209 committed Nov 29, 2016
1 parent c67e0f3 commit 786a86d
Show file tree
Hide file tree
Showing 7 changed files with 48 additions and 53 deletions.
17 changes: 1 addition & 16 deletions db/model/token.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,12 @@ module.exports = function token(seq, dataTypes) {
type: dataTypes.STRING(constants.fieldlen.normalName),
allowNull: false,
},
token: {
type: dataTypes.STRING,
allowNull: false,
unique: true,
},
isDeleted: {
type: dataTypes.BIGINT,
defaultValue: 0,
allowNull: false,
},
isDisabled: {
isRevoked: {
type: dataTypes.BIGINT,
defaultValue: 0,
allowNull: false,
Expand All @@ -59,7 +54,6 @@ module.exports = function token(seq, dataTypes) {
association: assoc.createdBy,
},
],
attributes: { exclude: ['token'] },
order: ['Token.name'],
},
{
Expand All @@ -72,15 +66,6 @@ module.exports = function token(seq, dataTypes) {
beforeDestroy(inst /* , opts */) {
return common.setIsDeleted(seq.Promise, inst);
},

beforeCreate(inst /* , opts */) {
return new seq.Promise((resolve, reject) =>
u.hashPassword(seq, inst.get('token'))
.then((hash) => inst.set('token', hash))
.then(() => resolve(inst))
.catch((err) => reject(err))
);
},
},
indexes: [
{
Expand Down
42 changes: 42 additions & 0 deletions migrations/20161128043443-token-del-tokenfield-upd-isRevoked.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
/**
* Copyright (c) 2016, salesforce.com, inc.
* All rights reserved.
* Licensed under the BSD 3-Clause license.
* For full license text, see LICENSE.txt file in the repo root or
* https://opensource.org/licenses/BSD-3-Clause
*/

module.exports = {

up: function (queryInterface, Sequelize) {
return queryInterface.sequelize.transaction((t) => {
return queryInterface.removeColumn(
'Tokens',
'token'
).then(() => queryInterface.renameColumn(
'Tokens',
'isDisabled',
'isRevoked'
));
});
},

down: function (queryInterface, Sequelize) {
return queryInterface.sequelize.transaction((t) => {
return queryInterface.addColumn(
'Tokens',
'token',
{
type: Sequelize.STRING,
allowNull: false,
unique: true,
}
)
.then(() => queryInterface.renameColumn(
'Tokens',
'isRevoked',
'isDisabled'
));
});
},
};
16 changes: 1 addition & 15 deletions tests/db/model/token/create.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,27 +48,13 @@ describe('db: Token: create', () => {
afterEach(u.forceDelete);

it('Create token object', (done) => {
// create token
const token = jwtUtil.createToken({
name: userObj.name,
email: userObj.name,
});

Token.create({
name: tokenName,
token,
createdBy: userObj.id,
})
.then((createdToken) => {
expect(createdToken.name).to.be.equal(tokenName);
bcrypt.compare(token, createdToken.token, (err, res) => {
if (err) {
throw err;
}

expect(res).to.be.true; // eslint-disable-line no-unused-expressions
});
expect(createdToken.isDisabled).to.be.equal('0');
expect(createdToken.isRevoked).to.be.equal('0');
expect(createdToken.createdBy).to.be.equal(userObj.id);
done();
})
Expand Down
1 change: 0 additions & 1 deletion tests/db/model/token/delete.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ describe('db: Token: find', () => {
afterEach(u.forceDelete);

it('Delete token object', (done) => {
console.log(u.tokenObj);
Token.findById(tokenObj.id)
.then((returnedToken) => returnedToken.destroy())
.then((delToken) => {
Expand Down
11 changes: 1 addition & 10 deletions tests/db/model/token/find.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ describe('db: Token: find', () => {
expect(returnedToken.name).to.be.equal(tokenObj.name);
expect(returnedToken.id).to.be.equal(tokenObj.id);
expect(returnedToken.createdBy).to.be.equal(tokenObj.createdBy);
expect(returnedToken.isDisabled).to.be.equal(tokenObj.isDisabled);
expect(returnedToken.isRevoked).to.be.equal(tokenObj.isRevoked);
done();
})
.catch((err) => done(err));
Expand All @@ -51,13 +51,4 @@ describe('db: Token: find', () => {
})
.catch((err) => done(err));
});

it('token is not returned', (done) => {
Token.findById(tokenObj.id)
.then((returnedToken) => {
expect(returnedToken.token).to.be.eql(undefined);
done();
})
.catch((err) => done(err));
});
});
6 changes: 3 additions & 3 deletions tests/db/model/token/update.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,12 @@ describe('db: Token: update', () => {
.catch((err) => done(err));
});

it('Disable a token', (done) => {
it('Revoke a token', (done) => {
const date = Date.now();
Token.findById(tokenObj.id)
.then((returnedToken) => returnedToken.update({ isDisabled: date }))
.then((returnedToken) => returnedToken.update({ isRevoked: date }))
.then((updatedToken) => {
expect(updatedToken.isDisabled).to.be.eql(date);
expect(updatedToken.isRevoked).to.be.eql(date);
done();
})
.catch((err) => done(err));
Expand Down
8 changes: 0 additions & 8 deletions tests/db/model/token/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ const tu = require('../../../testUtils');

const testStartTime = new Date();
const pfx = '___';
const jwtUtil = require('../../../../utils/jwtUtil');
const tokenName = 'testTokenName';

module.exports = {
Expand All @@ -41,16 +40,9 @@ module.exports = {
})
)
.then((returnedUser) => {
// create token
const token = jwtUtil.createToken({
name: returnedUser.name,
email: returnedUser.email,
});

// create Token object
return tu.db.Token.create({
name: tokenName,
token,
createdBy: returnedUser.id,
});
});
Expand Down

0 comments on commit 786a86d

Please sign in to comment.