Skip to content
This repository was archived by the owner on Jul 6, 2022. It is now read-only.

Commit 1360109

Browse files
author
Victor Wiebe
committed
fix: finish fixing rest of createDividend tests
1 parent f1295d0 commit 1360109

File tree

1 file changed

+52
-7
lines changed

1 file changed

+52
-7
lines changed

src/contract_wrappers/modules/checkpoint/__tests__/erc20_dividend_checkpoint_wrapper.test.ts

Lines changed: 52 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,13 @@ describe('ERC20DividendCheckpointWrapper', () => {
9797
when(mockedSecurityTokenOwnerMethod.callAsync()).thenResolve(expectedOwnerResult);
9898
when(mockedSecurityTokenContract.owner).thenReturn(instance(mockedSecurityTokenOwnerMethod));
9999

100+
const expectedTotalSupplyResult = new BigNumber(1000);
101+
const mockedSecurityTokenTotalSupplyMethod = mock(MockedCallMethod);
102+
when(mockedSecurityTokenTotalSupplyMethod.callAsync()).thenResolve(
103+
expectedTotalSupplyResult,
104+
);
105+
when(mockedSecurityTokenContract.totalSupply).thenReturn(instance(mockedSecurityTokenTotalSupplyMethod));
106+
100107
const expectedBalanceOfResult = new BigNumber(100);
101108
const mockedBalanceOfAddressMethod = mock(MockedCallMethod);
102109
when(mockedERC20DetailedContract.balanceOf).thenReturn(instance(mockedBalanceOfAddressMethod));
@@ -165,9 +172,9 @@ describe('ERC20DividendCheckpointWrapper', () => {
165172
).once();
166173
verify(mockedSecurityTokenOwnerMethod.callAsync()).once();
167174
verify(mockedSecurityTokenContract.owner).once();
168-
verify(mockedContract.securityToken).once();
169-
verify(mockedGetSecurityTokenAddressMethod.callAsync()).once();
170-
verify(mockedContractFactory.getSecurityTokenContract(expectedSecurityTokenAddress)).once();
175+
verify(mockedContract.securityToken).twice();
176+
verify(mockedGetSecurityTokenAddressMethod.callAsync()).twice();
177+
verify(mockedContractFactory.getSecurityTokenContract(expectedSecurityTokenAddress)).twice();
171178
verify(mockedWrapper.getAvailableAddressesAsync()).times(2);
172179
verify(mockedERC20DetailedContract.balanceOf).once();
173180
verify(mockedBalanceOfAddressMethod.callAsync(expectedOwnerResult)).once();
@@ -176,6 +183,8 @@ describe('ERC20DividendCheckpointWrapper', () => {
176183
verify(mockedContractFactory.getERC20DetailedContract(token)).twice();
177184
verify(mockedERC20DetailedContract.decimals).once();
178185
verify(mockedDecimalsMethod.callAsync()).once();
186+
verify(mockedSecurityTokenTotalSupplyMethod.callAsync()).once();
187+
verify(mockedSecurityTokenContract.totalSupply).once();
179188
});
180189
});
181190

@@ -199,6 +208,13 @@ describe('ERC20DividendCheckpointWrapper', () => {
199208
when(mockedSecurityTokenOwnerMethod.callAsync()).thenResolve(expectedOwnerResult);
200209
when(mockedSecurityTokenContract.owner).thenReturn(instance(mockedSecurityTokenOwnerMethod));
201210

211+
const expectedTotalSupplyResult = new BigNumber(1000);
212+
const mockedSecurityTokenTotalSupplyMethod = mock(MockedCallMethod);
213+
when(mockedSecurityTokenTotalSupplyMethod.callAsync(objectContaining(new BigNumber(checkpointId)))).thenResolve(
214+
expectedTotalSupplyResult,
215+
);
216+
when(mockedSecurityTokenContract.totalSupplyAt).thenReturn(instance(mockedSecurityTokenTotalSupplyMethod));
217+
202218
const expectedBalanceOfResult = new BigNumber(100);
203219
const mockedBalanceOfAddressMethod = mock(MockedCallMethod);
204220
when(mockedERC20DetailedContract.balanceOf).thenReturn(instance(mockedBalanceOfAddressMethod));
@@ -292,6 +308,8 @@ describe('ERC20DividendCheckpointWrapper', () => {
292308
verify(mockedContractFactory.getERC20DetailedContract(token)).twice();
293309
verify(mockedERC20DetailedContract.decimals).once();
294310
verify(mockedDecimalsMethod.callAsync()).once();
311+
verify(mockedSecurityTokenTotalSupplyMethod.callAsync(objectContaining(new BigNumber(checkpointId)))).once();
312+
verify(mockedSecurityTokenContract.totalSupplyAt).once();
295313
});
296314
});
297315

@@ -329,8 +347,8 @@ describe('ERC20DividendCheckpointWrapper', () => {
329347
when(
330348
mockedSecurityTokenBalanceOfMethod.callAsync(addr, objectContaining(new BigNumber(checkpointId))),
331349
).thenResolve(expectedSecurityTokenBalanceOfResult);
332-
when(mockedSecurityTokenContract.balanceOfAt).thenReturn(instance(mockedSecurityTokenBalanceOfMethod));
333350
}
351+
when(mockedSecurityTokenContract.balanceOfAt).thenReturn(instance(mockedSecurityTokenBalanceOfMethod));
334352
excluded.map(whenBalanceOf);
335353

336354
const expectedBalanceOfResult = new BigNumber(100);
@@ -460,6 +478,24 @@ describe('ERC20DividendCheckpointWrapper', () => {
460478
when(mockedSecurityTokenOwnerMethod.callAsync()).thenResolve(expectedOwnerResult);
461479
when(mockedSecurityTokenContract.owner).thenReturn(instance(mockedSecurityTokenOwnerMethod));
462480

481+
const excluded = ['0x9999999999999999999999999999999999999999', '0x8888888888888888888888888888888888888888'];
482+
const expectedTotalSupplyResult = new BigNumber(1000);
483+
const mockedSecurityTokenTotalSupplyMethod = mock(MockedCallMethod);
484+
when(mockedSecurityTokenTotalSupplyMethod.callAsync()).thenResolve(
485+
expectedTotalSupplyResult,
486+
);
487+
when(mockedSecurityTokenContract.totalSupply).thenReturn(instance(mockedSecurityTokenTotalSupplyMethod));
488+
489+
const expectedSecurityTokenBalanceOfResult = new BigNumber(10);
490+
const mockedSecurityTokenBalanceOfMethod = mock(MockedCallMethod);
491+
function whenBalanceOf (addr: string){
492+
when(
493+
mockedSecurityTokenBalanceOfMethod.callAsync(addr),
494+
).thenResolve(expectedSecurityTokenBalanceOfResult);
495+
}
496+
when(mockedSecurityTokenContract.balanceOf).thenReturn(instance(mockedSecurityTokenBalanceOfMethod));
497+
excluded.map(whenBalanceOf);
498+
463499
const expectedBalanceOfResult = new BigNumber(100);
464500
const mockedBalanceOfAddressMethod = mock(MockedCallMethod);
465501
when(mockedERC20DetailedContract.balanceOf).thenReturn(instance(mockedBalanceOfAddressMethod));
@@ -532,9 +568,9 @@ describe('ERC20DividendCheckpointWrapper', () => {
532568
).once();
533569
verify(mockedSecurityTokenOwnerMethod.callAsync()).once();
534570
verify(mockedSecurityTokenContract.owner).once();
535-
verify(mockedContract.securityToken).once();
536-
verify(mockedGetSecurityTokenAddressMethod.callAsync()).once();
537-
verify(mockedContractFactory.getSecurityTokenContract(expectedSecurityTokenAddress)).once();
571+
verify(mockedContract.securityToken).twice();
572+
verify(mockedGetSecurityTokenAddressMethod.callAsync()).twice();
573+
verify(mockedContractFactory.getSecurityTokenContract(expectedSecurityTokenAddress)).twice();
538574
verify(mockedWrapper.getAvailableAddressesAsync()).times(2);
539575
verify(mockedERC20DetailedContract.balanceOf).once();
540576
verify(mockedBalanceOfAddressMethod.callAsync(expectedOwnerResult)).once();
@@ -543,6 +579,15 @@ describe('ERC20DividendCheckpointWrapper', () => {
543579
verify(mockedContractFactory.getERC20DetailedContract(token)).twice();
544580
verify(mockedERC20DetailedContract.decimals).once();
545581
verify(mockedDecimalsMethod.callAsync()).once();
582+
verify(mockedSecurityTokenTotalSupplyMethod.callAsync()).once();
583+
verify(mockedSecurityTokenContract.totalSupply).once();
584+
function verifyBalanceOf (addr: string){
585+
verify(
586+
mockedSecurityTokenBalanceOfMethod.callAsync(addr),
587+
).once();
588+
}
589+
when(mockedSecurityTokenContract.balanceOf).thenReturn(instance(mockedSecurityTokenBalanceOfMethod));
590+
excluded.map(verifyBalanceOf);
546591
});
547592
});
548593

0 commit comments

Comments
 (0)