1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- unit utestonetimepass;
- {$mode ObjFPC}{$H+}
- interface
- uses
- FPCUnit, TestRegistry, Classes, SysUtils, onetimepass ;
- type
- { TTestOnetimePass }
- TTestOnetimePass = class(TTestCase)
- Published
- Procedure Test1Interval;
- Procedure Test2Intervals;
- Procedure TestValid1;
- Procedure TestInValid1;
- Procedure TestGen;
- end;
- implementation
- Const
- Secret = 'MFRGGZDFMZTWQ2LK';
- Procedure TTestOnetimePass.Test1Interval;
- begin
- AssertEquals('1 interval', 765705, HOTPCalculateToken(Secret, 1));
- end;
- procedure TTestOnetimePass.Test2Intervals;
- begin
- AssertEquals('2 interval', 816065, HOTPCalculateToken(Secret, 2));
- end;
- procedure TTestOnetimePass.TestValid1;
- Var
- C,Tok : LongInt;
- begin
- C:=1;
- Tok:=TOTPCalculateToken(Secret);
- AssertTrue('Valid',TOTPValidate(Secret,Tok,1,C));
- end;
- procedure TTestOnetimePass.TestInValid1;
- Var
- C,Tok : LongInt;
- begin
- C:=1;
- Tok:=TOTPCalculateToken(Secret);
- AssertFalse('Invalid',TOTPValidate(Secret,Tok+1,1,C));
- end;
- procedure TTestOnetimePass.TestGen;
- var
- lSecret : String;
- C,Tok : LongInt;
- begin
- c:=1;
- lSecret:=TOTPSharedSecret();
- AssertEquals('Length',16,Length(lSecret));
- Tok:=TOTPCalculateToken(lSecret);
- AssertTrue('Valid',TOTPValidate(lSecret,Tok,1,C));
- end;
- initialization
- RegisterTest(TTestOnetimePass);
- end.
|