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

Commit 3bff915

Browse files
author
Victor Wiebe
committed
feat: 🎸 blacklistTM example methods
1 parent 5a00a99 commit 3bff915

File tree

1 file changed

+61
-3
lines changed

1 file changed

+61
-3
lines changed

‎examples/blacklistTransferManager.ts‎

Lines changed: 61 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,11 +134,69 @@ window.addEventListener('load', async () => {
134134
},
135135
});
136136

137-
// TODO add blacklistTM method examples
137+
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(10) });
138+
console.log(' No blacklist, 10 tokens transferred to randomBeneficiary2');
139+
140+
const startTime = new Date(Date.now() + 10000);
141+
const endTime = new Date(Date.now() + 20000);
142+
await blacklistTM.addInvestorToNewBlacklist({
143+
investor: myAddress,
144+
startTime,
145+
endTime,
146+
repeatPeriodTime: 1,
147+
blacklistName: 'ExampleBlacklist',
148+
});
149+
150+
console.log('Blacklist starts in 10 seconds');
151+
const sleep = (milliseconds: number) => {
152+
console.log(`Sleeping ${milliseconds / 1000} seconds`);
153+
return new Promise(resolve => setTimeout(resolve, milliseconds));
154+
};
155+
await sleep(15000);
156+
157+
// Try out transfer 10 above lockup, will fail
158+
try {
159+
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(10) });
160+
} catch (e) {
161+
console.log('Transfer of 10 tokens during blacklist period amount fails as expected');
162+
}
163+
164+
console.log('Blacklist ends in 5 seconds');
165+
await sleep(10000);
166+
167+
// Blacklist now over
168+
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(10) });
169+
console.log('10 more tokens transferred to randomBeneficiary2');
170+
171+
const newStartTime = new Date(Date.now() + 10000);
172+
const newEndTime = new Date(Date.now() + 3600000);
173+
const testBlacklistNames = ['TestBlacklist1', 'TestBlacklist2', 'TestBlacklist3'];
174+
await blacklistTM.addNewBlacklistTypeMulti({
175+
blacklistNames: testBlacklistNames,
176+
startTimes: [newStartTime, newStartTime, newStartTime],
177+
endTimes: [newEndTime, newEndTime, newEndTime],
178+
repeatPeriodTimes: [1, 2, 3]
179+
});
180+
console.log('Many more example blacklists created');
181+
182+
await blacklistTM.addMultiInvestorToBlacklistMulti({blacklistNames: testBlacklistNames, userAddresses: [myAddress, randomBeneficiary1, randomBeneficiary2]});
183+
console.log('Multi investors added to multi blacklists');
184+
185+
await sleep(15000);
186+
187+
// Try out transfer 10 during blacklist, will fail
188+
try {
189+
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(10) });
190+
} catch (e) {
191+
console.log('Transfer of 10 tokens during new blacklist period amount fails as expected');
192+
}
138193

139-
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(50) });
194+
await blacklistTM.deleteInvestorFromAllBlacklistMulti({investors: [myAddress, randomBeneficiary1, randomBeneficiary2]});
195+
console.log('Multi investors deleted from all blacklists they are part of');
140196

141-
console.log('50 tokens transferred to randomBeneficiary2');
197+
// Transfer out more tokens now that the investor has been removed from the new blacklist
198+
await tickerSecurityTokenInstance.transfer({ to: randomBeneficiary2, value: new BigNumber(10) });
199+
console.log('10 more tokens were successfully transferred to randomBeneficiary2');
142200

143201
tickerSecurityTokenInstance.unsubscribeAll();
144202
});

0 commit comments

Comments
 (0)