add: TOTP.now function

This commit is contained in:
lancegin 2017-06-30 11:14:15 +08:00
parent 67be5af566
commit be851891f5
2 changed files with 9 additions and 3 deletions

View File

@ -4,6 +4,7 @@
*/
import { OTP } from './otp';
import { Util } from './util';
export class TOTP extends OTP {
/*
@ -35,7 +36,12 @@ export class TOTP extends OTP {
* ```
*/
now() {
return "TOTP.now";
// get now time string
let now = Util.timecode(new Date(), this.interval);
// generate the one-time password
let digit = super.generate_otp(now);
return digit;
}
/*

View File

@ -4,11 +4,11 @@ var assert = require('assert');
describe('TOTP module test', function() {
var TOTP = totp.TOTP;
var a = new TOTP("BASE32_ENCODED_SECRET");
var a = new TOTP("J22U6B3WIWRRBTAV");
describe('now() function', function() {
it("should print 'TOTP.now'", function() {
assert.equal("TOTP.now", a.now());
assert.equal("string", typeof(a.now()));
});
});