@@ -5,9 +5,10 @@ const sinon = require('sinon');
55const { assert } = require ( 'chai' ) ;
66
77const Spy = require ( '../../../utils/Spy' ) ;
8+ const AssertAsync = require ( '../../../utils/AssertAsync' ) ;
89const TokenHolder = require ( '../../../lib/ContractInteract/TokenHolder' ) ;
910
10- describe ( 'TokenHolder.getLogoutExecutableData ()' , ( ) => {
11+ describe ( 'TokenHolder.getSessionKeyData ()' , ( ) => {
1112 let tokenHolder ;
1213
1314 beforeEach ( ( ) => {
@@ -17,17 +18,24 @@ describe('TokenHolder.getLogoutExecutableData()', () => {
1718 } ) ;
1819
1920 it ( 'should construct with correct parameters' , async ( ) => {
21+ const sessionKey = '0x0000000000000000000000000000000000000003' ;
22+
2023 const mockSessionKeyData = 'mockSessionKeyData' ;
21- const logoutSpy = sinon . replace (
24+ const sessionKeyDataSpy = sinon . replace (
2225 tokenHolder . contract . methods ,
2326 'sessionKeys' ,
2427 sinon . fake . returns ( {
2528 call : ( ) => Promise . resolve ( mockSessionKeyData )
2629 } )
2730 ) ;
28- const response = await tokenHolder . getSessionKeyData ( ) ;
31+ const response = await tokenHolder . getSessionKeyData ( sessionKey ) ;
2932
3033 assert . strictEqual ( response , mockSessionKeyData ) ;
31- Spy . assert ( logoutSpy , 1 , [ [ ] ] ) ;
34+ Spy . assert ( sessionKeyDataSpy , 1 , [ [ sessionKey ] ] ) ;
35+ } ) ;
36+
37+ it ( 'should throw an error when to address is undefined' , async ( ) => {
38+ const sessionKey = undefined ;
39+ await AssertAsync . reject ( tokenHolder . getSessionKeyData ( sessionKey ) , `Invalid sessionKey address: undefined.` ) ;
3240 } ) ;
3341} ) ;
0 commit comments