fix jwt ut

This commit is contained in:
Kritarth 2021-10-12 12:49:35 +05:30
parent 494b4c9097
commit 74b9edea65
3 changed files with 24 additions and 3 deletions

View file

@ -31,6 +31,10 @@ exports.Response = function() {
return new Response();
};
exports.AccessToken = function(authId, authToken, username, validity, uid) {
return new AccessToken(authId, authToken, username, validity, uid);
};
exports.validateV3Signature = function(method, uri, nonce, auth_token, v3_signature, params={}) {
return validateV3Signature(method, uri, nonce, auth_token, v3_signature, params);
};

View file

@ -25,7 +25,7 @@ export function AccessToken(authId, authToken, username, validityOptions = {}, u
if (validityOptions.validTill != null) {
this.lifetime = validityOptions.validTill - this.validFrom;
} else {
this.lifetime = 86400;
this.lifetime = validityOptions.lifetime || 86400;
}
} else {
this.lifetime = validityOptions.lifetime || 86400;

View file

@ -4,9 +4,26 @@ import sinon from 'sinon';
import {AccessToken} from '../lib/utils/jwt';
describe('Jwt', function () {
it('should be created', function () {
it('should be created with validFrom and lifetime', function () {
let acctkn = new AccessToken('MADADADADADADADADADA', 'qwerty', 'username', {validFrom: 12121212, lifetime: 300}, 'username-12345');
acctkn.addVoiceGrants(true, true);
assert.equal(acctkn.toJwt(), 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImN0eSI6InBsaXZvO3Y9MSJ9.eyJqdGkiOiJ1c2VybmFtZS0xMjM0NSIsImlzcyI6Ik1BREFEQURBREFEQURBREFEQURBIiwic3ViIjoidXNlcm5hbWUiLCJuYmYiOjEyMTIxMjEyLCJleHAiOjEyMjA1ODEyLCJncmFudHMiOnsidm9pY2UiOnsiaW5jb21pbmdfYWxsb3ciOnRydWUsIm91dGdvaW5nX2FsbG93Ijp0cnVlfX19.T0li-AM7WAhioMwRdwYuIA-N7BRkhf8o9g366py7w1s');
assert.equal(acctkn.toJwt(), 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImN0eSI6InBsaXZvO3Y9MSJ9.eyJqdGkiOiJ1c2VybmFtZS0xMjM0NSIsImlzcyI6Ik1BREFEQURBREFEQURBREFEQURBIiwic3ViIjoidXNlcm5hbWUiLCJuYmYiOjEyMTIxMjEyLCJleHAiOjEyMTIxNTEyLCJncmFudHMiOnsidm9pY2UiOnsiaW5jb21pbmdfYWxsb3ciOnRydWUsIm91dGdvaW5nX2FsbG93Ijp0cnVlfX19.ilC13HrMls4w3UHWZsZNudAALgWaSBkkXmZZ-VnT6GU');
});
it('should be created with validFrom and validTill', function () {
let acctkn = new AccessToken('MADADADADADADADADADA', 'qwerty', 'username', {validFrom: 12121212, validTill: 12121512}, 'username-12345');
acctkn.addVoiceGrants(true, true);
assert.equal(acctkn.toJwt(), 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImN0eSI6InBsaXZvO3Y9MSJ9.eyJqdGkiOiJ1c2VybmFtZS0xMjM0NSIsImlzcyI6Ik1BREFEQURBREFEQURBREFEQURBIiwic3ViIjoidXNlcm5hbWUiLCJuYmYiOjEyMTIxMjEyLCJleHAiOjEyMTIxNTEyLCJncmFudHMiOnsidm9pY2UiOnsiaW5jb21pbmdfYWxsb3ciOnRydWUsIm91dGdvaW5nX2FsbG93Ijp0cnVlfX19.ilC13HrMls4w3UHWZsZNudAALgWaSBkkXmZZ-VnT6GU');
});
it('should be created with lifetime and validTill', function () {
let acctkn = new AccessToken('MADADADADADADADADADA', 'qwerty', 'username', {lifetime: 300, validTill: 12121512}, 'username-12345');
acctkn.addVoiceGrants(true, true);
assert.equal(acctkn.toJwt(), 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImN0eSI6InBsaXZvO3Y9MSJ9.eyJqdGkiOiJ1c2VybmFtZS0xMjM0NSIsImlzcyI6Ik1BREFEQURBREFEQURBREFEQURBIiwic3ViIjoidXNlcm5hbWUiLCJuYmYiOjEyMTIxMjEyLCJleHAiOjEyMTIxNTEyLCJncmFudHMiOnsidm9pY2UiOnsiaW5jb21pbmdfYWxsb3ciOnRydWUsIm91dGdvaW5nX2FsbG93Ijp0cnVlfX19.ilC13HrMls4w3UHWZsZNudAALgWaSBkkXmZZ-VnT6GU');
});
it('should fail with validFrom, lifetime and validTill', function () {
try {
let acctkn = new AccessToken('MADADADADADADADADADA', 'qwerty', 'username', {validFrom: 12121212, lifetime: 300, validTill: 12121512}, 'username-12345');
} catch (e) {
assert.equal(e.toString(), "Error: Please define at maximum any two of validFrom, lifetime and validTill");
}
});
});