@@ -65,6 +65,11 @@ describe('EtherDividendCheckpointWrapper', () => {
65
65
when ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . thenResolve ( expectedOwnerResult ) ;
66
66
when ( mockedSecurityTokenContract . owner ) . thenReturn ( instance ( mockedSecurityTokenOwnerMethod ) ) ;
67
67
68
+ const expectedTotalSupplyResult = new BigNumber ( 1000 ) ;
69
+ const mockedSecurityTokenTotalSupplyMethod = mock ( MockedCallMethod ) ;
70
+ when ( mockedSecurityTokenTotalSupplyMethod . callAsync ( ) ) . thenResolve ( expectedTotalSupplyResult ) ;
71
+ when ( mockedSecurityTokenContract . totalSupply ) . thenReturn ( instance ( mockedSecurityTokenTotalSupplyMethod ) ) ;
72
+
68
73
// Mock web3 wrapper owner
69
74
when ( mockedWrapper . getAvailableAddressesAsync ( ) ) . thenResolve ( [ expectedOwnerResult ] ) ;
70
75
@@ -115,10 +120,12 @@ describe('EtherDividendCheckpointWrapper', () => {
115
120
) . once ( ) ;
116
121
verify ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . once ( ) ;
117
122
verify ( mockedSecurityTokenContract . owner ) . once ( ) ;
118
- verify ( mockedContract . securityToken ) . once ( ) ;
119
- verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . once ( ) ;
120
- verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . once ( ) ;
123
+ verify ( mockedContract . securityToken ) . twice ( ) ;
124
+ verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . twice ( ) ;
125
+ verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . twice ( ) ;
121
126
verify ( mockedWrapper . getAvailableAddressesAsync ( ) ) . once ( ) ;
127
+ verify ( mockedSecurityTokenTotalSupplyMethod . callAsync ( ) ) . once ( ) ;
128
+ verify ( mockedSecurityTokenContract . totalSupply ) . once ( ) ;
122
129
} ) ;
123
130
} ) ;
124
131
@@ -141,6 +148,13 @@ describe('EtherDividendCheckpointWrapper', () => {
141
148
when ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . thenResolve ( expectedOwnerResult ) ;
142
149
when ( mockedSecurityTokenContract . owner ) . thenReturn ( instance ( mockedSecurityTokenOwnerMethod ) ) ;
143
150
151
+ const expectedTotalSupplyResult = new BigNumber ( 1000 ) ;
152
+ const mockedSecurityTokenTotalSupplyMethod = mock ( MockedCallMethod ) ;
153
+ when ( mockedSecurityTokenTotalSupplyMethod . callAsync ( objectContaining ( new BigNumber ( checkpointId ) ) ) ) . thenResolve (
154
+ expectedTotalSupplyResult ,
155
+ ) ;
156
+ when ( mockedSecurityTokenContract . totalSupplyAt ) . thenReturn ( instance ( mockedSecurityTokenTotalSupplyMethod ) ) ;
157
+
144
158
// Mock web3 wrapper owner
145
159
when ( mockedWrapper . getAvailableAddressesAsync ( ) ) . thenResolve ( [ expectedOwnerResult ] ) ;
146
160
@@ -208,6 +222,8 @@ describe('EtherDividendCheckpointWrapper', () => {
208
222
verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . twice ( ) ;
209
223
verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . twice ( ) ;
210
224
verify ( mockedWrapper . getAvailableAddressesAsync ( ) ) . once ( ) ;
225
+ verify ( mockedSecurityTokenTotalSupplyMethod . callAsync ( objectContaining ( new BigNumber ( checkpointId ) ) ) ) . once ( ) ;
226
+ verify ( mockedSecurityTokenContract . totalSupplyAt ) . once ( ) ;
211
227
} ) ;
212
228
} ) ;
213
229
@@ -230,6 +246,24 @@ describe('EtherDividendCheckpointWrapper', () => {
230
246
when ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . thenResolve ( expectedOwnerResult ) ;
231
247
when ( mockedSecurityTokenContract . owner ) . thenReturn ( instance ( mockedSecurityTokenOwnerMethod ) ) ;
232
248
249
+ const excluded = [ '0x9999999999999999999999999999999999999999' , '0x8888888888888888888888888888888888888888' ] ;
250
+ const expectedTotalSupplyResult = new BigNumber ( 1000 ) ;
251
+ const mockedSecurityTokenTotalSupplyMethod = mock ( MockedCallMethod ) ;
252
+ when ( mockedSecurityTokenTotalSupplyMethod . callAsync ( objectContaining ( new BigNumber ( checkpointId ) ) ) ) . thenResolve (
253
+ expectedTotalSupplyResult ,
254
+ ) ;
255
+ when ( mockedSecurityTokenContract . totalSupplyAt ) . thenReturn ( instance ( mockedSecurityTokenTotalSupplyMethod ) ) ;
256
+
257
+ const expectedSecurityTokenBalanceOfResult = new BigNumber ( 10 ) ;
258
+ const mockedSecurityTokenBalanceOfMethod = mock ( MockedCallMethod ) ;
259
+ function whenBalanceOf ( addr : string ) {
260
+ when (
261
+ mockedSecurityTokenBalanceOfMethod . callAsync ( addr , objectContaining ( new BigNumber ( checkpointId ) ) ) ,
262
+ ) . thenResolve ( expectedSecurityTokenBalanceOfResult ) ;
263
+ }
264
+ when ( mockedSecurityTokenContract . balanceOfAt ) . thenReturn ( instance ( mockedSecurityTokenBalanceOfMethod ) ) ;
265
+ excluded . map ( whenBalanceOf ) ;
266
+
233
267
// Mock web3 wrapper owner
234
268
when ( mockedWrapper . getAvailableAddressesAsync ( ) ) . thenResolve ( [ expectedOwnerResult ] ) ;
235
269
@@ -300,6 +334,15 @@ describe('EtherDividendCheckpointWrapper', () => {
300
334
verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . twice ( ) ;
301
335
verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . twice ( ) ;
302
336
verify ( mockedWrapper . getAvailableAddressesAsync ( ) ) . once ( ) ;
337
+ verify ( mockedSecurityTokenTotalSupplyMethod . callAsync ( objectContaining ( new BigNumber ( checkpointId ) ) ) ) . once ( ) ;
338
+ verify ( mockedSecurityTokenContract . totalSupplyAt ) . once ( ) ;
339
+ function verifyBalanceOf ( addr : string ) {
340
+ verify (
341
+ mockedSecurityTokenBalanceOfMethod . callAsync ( addr , objectContaining ( new BigNumber ( checkpointId ) ) ) ,
342
+ ) . once ( ) ;
343
+ }
344
+ excluded . map ( verifyBalanceOf ) ;
345
+ verify ( mockedSecurityTokenContract . balanceOfAt ) . times ( excluded . length ) ;
303
346
} ) ;
304
347
} ) ;
305
348
@@ -321,6 +364,20 @@ describe('EtherDividendCheckpointWrapper', () => {
321
364
when ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . thenResolve ( expectedOwnerResult ) ;
322
365
when ( mockedSecurityTokenContract . owner ) . thenReturn ( instance ( mockedSecurityTokenOwnerMethod ) ) ;
323
366
367
+ const excluded = [ '0x9999999999999999999999999999999999999999' , '0x8888888888888888888888888888888888888888' ] ;
368
+ const expectedTotalSupplyResult = new BigNumber ( 1000 ) ;
369
+ const mockedSecurityTokenTotalSupplyMethod = mock ( MockedCallMethod ) ;
370
+ when ( mockedSecurityTokenTotalSupplyMethod . callAsync ( ) ) . thenResolve ( expectedTotalSupplyResult ) ;
371
+ when ( mockedSecurityTokenContract . totalSupply ) . thenReturn ( instance ( mockedSecurityTokenTotalSupplyMethod ) ) ;
372
+
373
+ const expectedSecurityTokenBalanceOfResult = new BigNumber ( 10 ) ;
374
+ const mockedSecurityTokenBalanceOfMethod = mock ( MockedCallMethod ) ;
375
+ function whenBalanceOf ( addr : string ) {
376
+ when ( mockedSecurityTokenBalanceOfMethod . callAsync ( addr ) ) . thenResolve ( expectedSecurityTokenBalanceOfResult ) ;
377
+ }
378
+ when ( mockedSecurityTokenContract . balanceOf ) . thenReturn ( instance ( mockedSecurityTokenBalanceOfMethod ) ) ;
379
+ excluded . map ( whenBalanceOf ) ;
380
+
324
381
// Mock web3 wrapper owner
325
382
when ( mockedWrapper . getAvailableAddressesAsync ( ) ) . thenResolve ( [ expectedOwnerResult ] ) ;
326
383
@@ -374,10 +431,17 @@ describe('EtherDividendCheckpointWrapper', () => {
374
431
) . once ( ) ;
375
432
verify ( mockedSecurityTokenOwnerMethod . callAsync ( ) ) . once ( ) ;
376
433
verify ( mockedSecurityTokenContract . owner ) . once ( ) ;
377
- verify ( mockedContract . securityToken ) . once ( ) ;
378
- verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . once ( ) ;
379
- verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . once ( ) ;
434
+ verify ( mockedContract . securityToken ) . twice ( ) ;
435
+ verify ( mockedGetSecurityTokenAddressMethod . callAsync ( ) ) . twice ( ) ;
436
+ verify ( mockedContractFactory . getSecurityTokenContract ( expectedSecurityTokenAddress ) ) . twice ( ) ;
380
437
verify ( mockedWrapper . getAvailableAddressesAsync ( ) ) . once ( ) ;
438
+ verify ( mockedSecurityTokenTotalSupplyMethod . callAsync ( ) ) . once ( ) ;
439
+ verify ( mockedSecurityTokenContract . totalSupply ) . once ( ) ;
440
+ function verifyBalanceOf ( addr : string ) {
441
+ verify ( mockedSecurityTokenBalanceOfMethod . callAsync ( addr ) ) . once ( ) ;
442
+ }
443
+ verify ( mockedSecurityTokenContract . balanceOf ) . times ( excluded . length ) ;
444
+ excluded . map ( verifyBalanceOf ) ;
381
445
} ) ;
382
446
} ) ;
383
447
0 commit comments