@@ -238,4 +238,99 @@ describe('Vechain', function () {
238238 basecoin . isValidAddress ( address ) . should . equal ( false ) ;
239239 } ) ;
240240 } ) ;
241+
242+ describe ( 'address verification' , ( ) => {
243+ const testData = {
244+ walletVersion : 6 ,
245+ commonKeychain :
246+ '02fad451e7d1a536897ded5f803a73cc7309a403cf43bb25bda494b9800efe32999b6b71b6159eccf1244492556b733f68733a23c184bf40bc37c52da5ad29e575' ,
247+ baseAddress : '0x8420429aa50b7f6ab196c4ce0dcf629fdbb821a1' ,
248+ feeAddress : '0x33f9d3172de8a88e47b399562e51fa9cde0f2511' ,
249+ depositAddress : '0x26b88c0a103d185792a9597580c2c5170d93f410' ,
250+ depositIndex : 3 ,
251+ forwarderVersion : 5 ,
252+ } ;
253+
254+ it ( 'should verify a valid TSS base address (wallet version 6)' , async function ( ) {
255+ const params = {
256+ address : testData . baseAddress ,
257+ baseAddress : testData . baseAddress ,
258+ keychains : [
259+ { commonKeychain : testData . commonKeychain } ,
260+ { commonKeychain : testData . commonKeychain } ,
261+ { commonKeychain : testData . commonKeychain } ,
262+ ] ,
263+ index : 0 ,
264+ walletVersion : testData . walletVersion ,
265+ coinSpecific : {
266+ feeAddress : testData . feeAddress ,
267+ forwarderVersion : testData . forwarderVersion ,
268+ } ,
269+ } ;
270+
271+ const result = await basecoin . isWalletAddress ( params ) ;
272+ result . should . equal ( true ) ;
273+ } ) ;
274+
275+ it ( 'should fail to verify a invalid TSS base address (wallet version 6)' , async function ( ) {
276+ const params = {
277+ address : '0x8420429aa50b7f6ab196c4ce0dcf629fdbb821a0' ,
278+ baseAddress : testData . baseAddress ,
279+ keychains : [
280+ { commonKeychain : testData . commonKeychain } ,
281+ { commonKeychain : testData . commonKeychain } ,
282+ { commonKeychain : testData . commonKeychain } ,
283+ ] ,
284+ index : 0 ,
285+ walletVersion : testData . walletVersion ,
286+ coinSpecific : {
287+ feeAddress : testData . feeAddress ,
288+ forwarderVersion : testData . forwarderVersion ,
289+ } ,
290+ } ;
291+
292+ await basecoin . isWalletAddress ( params ) . should . be . rejected ( ) ;
293+ } ) ;
294+
295+ it ( 'should verify a valid TSS deposit address (wallet version 6)' , async function ( ) {
296+ const params = {
297+ address : testData . depositAddress ,
298+ baseAddress : testData . baseAddress ,
299+ keychains : [
300+ { commonKeychain : testData . commonKeychain } ,
301+ { commonKeychain : testData . commonKeychain } ,
302+ { commonKeychain : testData . commonKeychain } ,
303+ ] ,
304+ index : testData . depositIndex ,
305+ walletVersion : testData . walletVersion ,
306+ coinSpecific : {
307+ feeAddress : testData . feeAddress ,
308+ forwarderVersion : testData . forwarderVersion ,
309+ } ,
310+ } ;
311+
312+ const result = await basecoin . isWalletAddress ( params ) ;
313+ result . should . equal ( true ) ;
314+ } ) ;
315+
316+ it ( 'should fail to verify a invalid TSS deposit address (wallet version 6)' , async function ( ) {
317+ const params = {
318+ address : '0x26b88c0a103d185792a9597580c2c5170d93f411' ,
319+ baseAddress : testData . baseAddress ,
320+ keychains : [
321+ { commonKeychain : testData . commonKeychain } ,
322+ { commonKeychain : testData . commonKeychain } ,
323+ { commonKeychain : testData . commonKeychain } ,
324+ ] ,
325+ index : testData . depositIndex ,
326+ walletVersion : testData . walletVersion ,
327+ coinSpecific : {
328+ feeAddress : testData . feeAddress ,
329+ forwarderVersion : testData . forwarderVersion ,
330+ } ,
331+ } ;
332+
333+ await basecoin . isWalletAddress ( params ) . should . be . rejected ( ) ;
334+ } ) ;
335+ } ) ;
241336} ) ;
0 commit comments