@@ -18,6 +18,7 @@ import {
18
18
} from '../../types' ;
19
19
import { mockFactories } from '../../testUtils/mockFactories' ;
20
20
import * as shareholderFactoryModule from '../../entities/factories/ShareholderFactory' ;
21
+ import * as securityTokenFactoryModule from '../../entities/factories/SecurityTokenFactory' ;
21
22
import { Factories } from '../../Context' ;
22
23
import { SecurityToken , Shareholder } from '../../entities' ;
23
24
@@ -37,6 +38,7 @@ describe('ControllerRedeem', () => {
37
38
let tokenFactoryMock : MockManager < tokenFactoryModule . MockedTokenFactoryModule > ;
38
39
let securityTokenMock : MockManager < contractWrappersModule . SecurityToken_3_0_0 > ;
39
40
let shareholderFactoryMock : MockManager < shareholderFactoryModule . ShareholderFactory > ;
41
+ let securityTokenFactoryMock : MockManager < securityTokenFactoryModule . SecurityTokenFactory > ;
40
42
let factoriesMockedSetup : Factories ;
41
43
42
44
beforeEach ( ( ) => {
@@ -58,8 +60,13 @@ describe('ControllerRedeem', () => {
58
60
contextMock . set ( 'contractWrappers' , wrappersMock . getMockInstance ( ) ) ;
59
61
wrappersMock . set ( 'tokenFactory' , tokenFactoryMock . getMockInstance ( ) ) ;
60
62
shareholderFactoryMock = ImportMock . mockClass ( shareholderFactoryModule , 'ShareholderFactory' ) ;
63
+ securityTokenFactoryMock = ImportMock . mockClass (
64
+ securityTokenFactoryModule ,
65
+ 'SecurityTokenFactory'
66
+ ) ;
61
67
factoriesMockedSetup = mockFactories ( ) ;
62
68
factoriesMockedSetup . shareholderFactory = shareholderFactoryMock . getMockInstance ( ) ;
69
+ factoriesMockedSetup . securityTokenFactory = securityTokenFactoryMock . getMockInstance ( ) ;
63
70
contextMock . set ( 'factories' , factoriesMockedSetup ) ;
64
71
65
72
// Instantiate ControllerRedeem
@@ -166,4 +173,19 @@ describe('ControllerRedeem', () => {
166
173
expect ( resolverValue ) . toEqual ( undefined ) ;
167
174
expect ( refreshStub . callCount ) . toEqual ( 1 ) ;
168
175
} ) ;
176
+
177
+ test ( 'should refresh the security token factory with resolver' , async ( ) => {
178
+ const refreshStub = securityTokenFactoryMock . mock ( 'refresh' , Promise . resolve ( undefined ) ) ;
179
+
180
+ const resolverValue = await controllerRedeemModule . refreshSecurityTokenFactoryResolver (
181
+ factoriesMockedSetup ,
182
+ params . symbol
183
+ ) ( ) ;
184
+
185
+ expect (
186
+ refreshStub . getCall ( 0 ) . calledWithExactly ( SecurityToken . generateId ( { symbol : params . symbol } ) )
187
+ ) . toEqual ( true ) ;
188
+ expect ( resolverValue ) . toEqual ( undefined ) ;
189
+ expect ( refreshStub . callCount ) . toEqual ( 1 ) ;
190
+ } ) ;
169
191
} ) ;
0 commit comments