@@ -134,11 +134,69 @@ window.addEventListener('load', async () => {
134
134
} ,
135
135
} ) ;
136
136
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
+ }
138
193
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' ) ;
140
196
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' ) ;
142
200
143
201
tickerSecurityTokenInstance . unsubscribeAll ( ) ;
144
202
} ) ;
0 commit comments